This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: Add x32 support to dynamic linker audit


On Thu, Mar 22, 2012 at 7:39 AM, Carlos O'Donell
<carlos@systemhalted.org> wrote:
> On Thu, Mar 22, 2012 at 9:58 AM, Andreas Schwab <schwab@linux-m68k.org> wrote:
>> "Carlos O'Donell" <carlos@systemhalted.org> writes:
>>
>>> 2012/3/22 David Miller <davem@davemloft.net>:
>>>> From: Andreas Schwab <schwab@linux-m68k.org>
>>>> Date: Thu, 22 Mar 2012 10:08:40 +0100
>>>>
>>>>> That doesn't work.
>>>>>
>>>>> ../sysdeps/generic/ldsodefs.h:231:9: warning: ‘struct La_x32_regs’ declared inside parameter list [enabled by default]
>>>>> ../sysdeps/generic/ldsodefs.h:231:9: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default]
>>>>> ../sysdeps/generic/ldsodefs.h:280:10: warning: ‘struct La_x32_regs’ declared inside parameter list [enabled by default]
>>>>
>>>> Right, I'm seeing these on sparc builds too.
>>>
>>> Well shucks. OK, I've just kicked off my usual morning build, I'll
>>> have a look at this.
>>
>> This will fix it.
>>
>> ? ? ? ?* sysdeps/generic/ldsodefs.h: Use La_x86_64_regs instead of
>> ? ? ? ?La_x32_regs in prototypes.
>> ---
>> ?sysdeps/generic/ldsodefs.h | ? ?4 ++--
>> ?1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
>> index d4cbaba..e5ed2be 100644
>> --- a/sysdeps/generic/ldsodefs.h
>> +++ b/sysdeps/generic/ldsodefs.h
>> @@ -226,7 +226,7 @@ struct audit_ifaces
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? unsigned int *, const char *name,
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? long int *framesizep);
>> ? ? Elf32_Addr (*x32_gnu_pltenter) (Elf32_Sym *, unsigned int, uintptr_t *,
>> - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? uintptr_t *, struct La_x32_regs *,
>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? uintptr_t *, struct La_x86_64_regs *,
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?unsigned int *, const char *name,
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?long int *framesizep);
>> ? ? Elf32_Addr (*ppc32_gnu_pltenter) (Elf32_Sym *, unsigned int, uintptr_t *,
>> @@ -275,7 +275,7 @@ struct audit_ifaces
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?const char *);
>> ? ? unsigned int (*x32_gnu_pltexit) (Elf32_Sym *, unsigned int, uintptr_t *,
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? uintptr_t *,
>> - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?const struct La_x32_regs *,
>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?const struct La_x86_64_regs *,
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? struct La_x86_64_retval *,
>> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? const char *);
>> ? ? unsigned int (*ppc32_gnu_pltexit) (Elf32_Sym *, unsigned int, uintptr_t *,
>> --
>
> That's not the fix we want though.
>
> The types should match in name so as to make documenting easy and not
> confuse developers.
>
> See my comments to H.J. regarding the original patch.
>

Sorry for that. I didn't noticed the warning on Linux/ia32. I am testing this:
OK to install with a ChangeLog entry if it passes on Linux/x86-64 and
Linux/ia32?

Thanks.


-- 
H.J.
---
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index d4cbaba..9955430 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -187,6 +187,8 @@ struct La_i86_regs;
 struct La_i86_retval;
 struct La_x86_64_regs;
 struct La_x86_64_retval;
+struct La_x32_regs;
+struct La_x32_retval;
 struct La_ppc32_regs;
 struct La_ppc32_retval;
 struct La_ppc64_regs;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]