mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
xfrm: remove flow cache
After rcu conversions performance degradation in forward tests isn't that noticeable anymore. See next patch for some numbers. A followup patcg could then also remove genid from the policies as we do not cache bundles anymore. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
bd45c539bf
commit
09c7570480
13 changed files with 2 additions and 734 deletions
|
@ -218,40 +218,6 @@ static inline unsigned int flow_key_size(u16 family)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#define FLOW_DIR_IN 0
|
||||
#define FLOW_DIR_OUT 1
|
||||
#define FLOW_DIR_FWD 2
|
||||
|
||||
struct net;
|
||||
struct sock;
|
||||
struct flow_cache_ops;
|
||||
|
||||
struct flow_cache_object {
|
||||
const struct flow_cache_ops *ops;
|
||||
};
|
||||
|
||||
struct flow_cache_ops {
|
||||
struct flow_cache_object *(*get)(struct flow_cache_object *);
|
||||
int (*check)(struct flow_cache_object *);
|
||||
void (*delete)(struct flow_cache_object *);
|
||||
};
|
||||
|
||||
typedef struct flow_cache_object *(*flow_resolve_t)(
|
||||
struct net *net, const struct flowi *key, u16 family,
|
||||
u8 dir, struct flow_cache_object *oldobj, void *ctx);
|
||||
|
||||
struct flow_cache_object *flow_cache_lookup(struct net *net,
|
||||
const struct flowi *key, u16 family,
|
||||
u8 dir, flow_resolve_t resolver,
|
||||
void *ctx);
|
||||
int flow_cache_init(struct net *net);
|
||||
void flow_cache_fini(struct net *net);
|
||||
void flow_cache_hp_init(void);
|
||||
|
||||
void flow_cache_flush(struct net *net);
|
||||
void flow_cache_flush_deferred(struct net *net);
|
||||
extern atomic_t flow_cache_genid;
|
||||
|
||||
__u32 __get_hash_from_flowi6(const struct flowi6 *fl6, struct flow_keys *keys);
|
||||
|
||||
static inline __u32 get_hash_from_flowi6(const struct flowi6 *fl6)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue