From ac4b25b3ca045fbbed86773a91da52d9d7ee3091 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Tue, 28 Jul 2020 17:57:20 +0200 Subject: src: remove cache lookups after the evaluation phase This patch adds a new field to the cmd structure for elements to store a reference to the set. This saves an extra lookup in the netlink bytecode generation step. This patch also allows to incrementally update during the evaluation phase according to the command actions, which is required by the follow up ("evaluate: remove table from cache on delete table") bugfix patch. Signed-off-by: Pablo Neira Ayuso --- include/rule.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'include/rule.h') diff --git a/include/rule.h b/include/rule.h index 4de7a0d9..60eadfa3 100644 --- a/include/rule.h +++ b/include/rule.h @@ -683,6 +683,10 @@ struct cmd { void *data; struct expr *expr; struct set *set; + struct { + struct expr *expr; /* same offset as cmd->expr */ + struct set *set; + } elem; struct rule *rule; struct chain *chain; struct table *table; -- cgit v1.2.3