[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170424164028.yonp5pl77euxalwb@gmail.com>
Date: Mon, 24 Apr 2017 18:40:28 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Jiri Slaby <jslaby@...e.cz>
Cc: David Miller <davem@...emloft.net>, alexei.starovoitov@...il.com,
mingo@...hat.com, tglx@...utronix.de, hpa@...or.com,
x86@...nel.org, jpoimboe@...hat.com, linux-kernel@...r.kernel.org,
netdev@...r.kernel.org, daniel@...earbox.net, edumazet@...gle.com
Subject: Re: [PATCH v3 07/29] x86: bpf_jit, use ENTRY+ENDPROC
* Jiri Slaby <jslaby@...e.cz> wrote:
> On 04/24/2017, 05:55 PM, Ingo Molnar wrote:
> > * Jiri Slaby <jslaby@...e.cz> wrote:
> >
> >> 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?
> >
> > No, the patch changes alignment which is undesirable, it needs to preserve the
> > existing (non-)alignment of the symbols!
>
> OK, so I am not expressing myself explicitly enough, it seems.
>
> So, correct, the patch v3 adds alignments. I suggested in the discussion
> the macros above. They do not add alignments. If everybody is OK with
> that, v4 of the patch won't add alignments. OK?
Yes.
Thanks,
Ingo
Powered by blists - more mailing lists