This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: PING^1: V2 [PATCH] Check multiple NT_GNU_PROPERTY_TYPE_0 notes [BZ #23509]
- From: Carlos O'Donell <carlos at redhat dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>, GNU C Library <libc-alpha at sourceware dot org>
- Date: Wed, 19 Sep 2018 22:13:22 -0400
- Subject: Re: PING^1: V2 [PATCH] Check multiple NT_GNU_PROPERTY_TYPE_0 notes [BZ #23509]
- References: <CAMe9rOoFVW5RO+2g2R68Jf+JW_J-deCL2Gkt5d2y4HngAHobNg@mail.gmail.com>
On 09/19/2018 08:55 AM, H.J. Lu wrote:
> HI,
>
> Carlos, can you take a look at this?
>
> On Sun, Aug 26, 2018 at 7:52 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Tue, Aug 14, 2018 at 10:32 AM, H.J. Lu <hongjiu.lu@intel.com> wrote:
>>> The older linker treats .note.gnu.property section as a generic note
>>> section and just concatenates all .note.gnu.property sections from the
>>> inputs to the output. When the older linker is used to created the
>>> program on CET-enabled OS, the generated output has .note.gnu.property
>>> section with multiple NT_GNU_PROPERTY_TYPE_0 notes whose IBT and SHSTK
>>> enable bits are set even if the program isn't CET enabled. Such program
>>> will crash on CET-enabled machines. This patch updates the note parser:
>>>
>>> 1. Skip note parsing if a NT_GNU_PROPERTY_TYPE_0 note has been processed.
>>> 2. Check multiple NT_GNU_PROPERTY_TYPE_0 notes.
>>>
>>> OK for master?
>>>
>>> H.J.
>>> ---
>>> [BZ #23509]
>>> * sysdeps/x86/dl-prop.h (_dl_process_cet_property_note): Skip
>>> note parsing if a NT_GNU_PROPERTY_TYPE_0 note has been processed.
>>> Update the l_cet field when processing NT_GNU_PROPERTY_TYPE_0 note.
>>> Check multiple NT_GNU_PROPERTY_TYPE_0 notes.
>>> * sysdeps/x86/link_map.h (l_cet): Expand to 3 bits, Add
>>> lc_unknown.
>>
>> Here is the updated patch which passed CET smoke test:
>>
>> https://github.com/hjl-tools/cet-smoke-test
>
>
> PING:
>
> https://sourceware.org/ml/libc-alpha/2018-08/msg00535.html
>
It's on my list to review, but I won't get to it until late next week.
--
Cheers,
Carlos.