From: Jiri Slaby <jsl...@suse.cz> Date: Mon, 24 Apr 2017 17:41:06 +0200
> On 04/24/2017, 05:08 PM, David Miller wrote: >> If you align the entry points, then the code sequence as a whole is >> are no longer densely packed. > > Sure. > >> Or do I misunderstand how your macros work? > > Perhaps. So the suggested macros for the code are: > #define BPF_FUNC_START_LOCAL(name) \ > SYM_START(name, SYM_V_LOCAL, SYM_A_NONE) > #define BPF_FUNC_START(name) \ > SYM_START(name, SYM_V_GLOBAL, SYM_A_NONE) > > and they differ from the standard ones: > #define SYM_FUNC_START_LOCAL(name) \ > SYM_START(name, SYM_V_LOCAL, SYM_A_ALIGN) > #define SYM_FUNC_START(name) \ > SYM_START(name, SYM_V_GLOBAL, SYM_A_ALIGN) > > > The difference is SYM_A_NONE vs. SYM_A_ALIGN, which means: > #define SYM_A_ALIGN ALIGN > #define SYM_A_NONE /* nothing */ > > Does it look OK now? I said I'm not OK with the alignment, so personally I am not with how these macros work and what they will do to the code generated for BPF packet accesses. But I'll defer to Alexei on this because I don't have the time nor the energy to fight this. Thanks.