netfilter: nf_tables: asynchronous release
Release the committed transaction log from a work queue, moving expensive synchronize_rcu out of the locked section and providing opportunity to batch this. On my test machine this cuts runtime of nft-test.py in half. Based on earlier patch from Pablo Neira Ayuso. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
committed by
Pablo Neira Ayuso
parent
0ef235c717
commit
0935d55884
@@ -1298,12 +1298,14 @@ static inline void nft_set_elem_clear_busy(struct nft_set_ext *ext)
|
||||
*
|
||||
* @list: used internally
|
||||
* @msg_type: message type
|
||||
* @put_net: ctx->net needs to be put
|
||||
* @ctx: transaction context
|
||||
* @data: internal information related to the transaction
|
||||
*/
|
||||
struct nft_trans {
|
||||
struct list_head list;
|
||||
int msg_type;
|
||||
bool put_net;
|
||||
struct nft_ctx ctx;
|
||||
char data[0];
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user