This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports 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: struct statfs/statfs64 in linux-generic


On 13/11/15 2:28 AM, Chris Metcalf wrote:
> On 11/13/2013 11:34 PM, Chung-Lin Tang wrote:
>> On 13/11/13 8:58 PM, Joseph S. Myers wrote:
>>> On Wed, 13 Nov 2013, Chung-Lin Tang wrote:
>>>
>>>> 	(struct statfs): Use __alignof__(__u64) in alignment attribute
>>>> 	instead of 8.
>>>> 	(struct statfs64): Likewise.
>>> I don't like the use of __u64 here - that's a kernel type, not a glibc 
>>> one, and glibc headers shouldn't be using it.
>>>
>> Sure, how about __U64_TYPE? This seems in line with using __SWORD_TYPE
>> from <bits/types.h>
> 
> Looking at this, I wonder if we need the alignment attribute on the structure at all.  Given that the __field64 macro fields have that alignment attribute, the structure as a whole should also automatically have it, so it seems superfluous.  Does it work on nios2 if you remove the struct alignment directive?
> 
> The kernel version of the structure doesn't have any forced alignment on it.
> 

Yes, that works for nios2. Appears that struct stat/stat64 in
bits/stat.h doesn't have the struct alignment attributes either.
Updated patch attached.

Chung-Lin

2013-11-13  Chung-Lin Tang  <cltang@codesourcery.com>

	ports/
	* sysdeps/unix/sysv/linux/generic/bits/stat.h (__field64): Use
	__alignof__(type64) in alignment attribute instead of 8.
	* sysdeps/unix/sysv/linux/generic/bits/statfs.h (__field64): Use
	__alignof__(type64) in alignment attribute instead of 8.
	(struct statfs): Remove alignment attribute.
	(struct statfs64): Likewise.

Attachment: x.diff
Description: Text document


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