Re: [PATCH] net: bridge: Fix jump_label config
flat view
From: Kefeng Wang <hidden>
Date: 2021-03-16 15:49:03
Also in:
lkml
On 2021/2/27 4:19, Cong Wang wrote:
On Thu, Feb 25, 2021 at 5:39 PM Kefeng Wang [off-list ref] wrote:quoted
On 2021/2/26 5:22, Cong Wang wrote:quoted
On Wed, Feb 24, 2021 at 8:03 AM Kefeng Wang [off-list ref] wrote:quoted
HAVE_JUMP_LABLE is removed by commit e9666d10a567 ("jump_label: move 'asm goto' support test to Kconfig"), use CONFIG_JUMP_LABLE instead of HAVE_JUMP_LABLE. Fixes: 971502d77faa ("bridge: netfilter: unroll NF_HOOK helper in bridge input path") Signed-off-by: Kefeng Wang <redacted>Hmm, why do we have to use a macro here? static_key_false() is defined in both cases, CONFIG_JUMP_LABEL=y or CONFIG_JUMP_LABEL=n.It seems that all nf_hooks_needed related are using the macro, see net/netfilter/core.c and include/linux/netfilter.h, #ifdef CONFIG_JUMP_LABEL struct static_key nf_hooks_needed[NFPROTO_NUMPROTO][NF_MAX_HOOKS]; EXPORT_SYMBOL(nf_hooks_needed); #endif nf_static_key_inc()/nf_static_key_dec()Same question: why? Clearly struct static_key is defined in both cases:
Hi Cong, the nf_hooks_needed is wrapped up by this macro, so this place should use it, or we will meet the build issue, thanks. ../net/bridge/br_input.c: In function ‘nf_hook_bridge_pre’: ../net/bridge/br_input.c:211:25: error: ‘nf_hooks_needed’ undeclared (first use in this function) 211 | if (!static_key_false(&nf_hooks_needed[NFPROTO_BRIDGE][NF_BR_PRE_ROUTING]))
#else
struct static_key {
atomic_t enabled;
};
#endif /* CONFIG_JUMP_LABEL */
Thanks.