|
|
Message-ID: <CAK4o1WzOU-RqvoYwDtsQV-wyi02d149iObhUmHsH4TTt8gTzRQ@mail.gmail.com>
Date: Mon, 30 Dec 2013 22:02:19 +0000
From: Justin Cormack <justin@...cialbusservice.com>
To: musl@...ts.openwall.com
Subject: Re: stat64 on mips
On Mon, Dec 30, 2013 at 9:29 PM, Rich Felker <dalias@...ifal.cx> wrote:
> On Mon, Dec 30, 2013 at 06:20:46PM +0000, Justin Cormack wrote:
>> MIPS is the most confusing architecture, but as far as I can make out,
>> the definition of struct stat64 that Musl has is probably the right
>> one for mips n32 but wrong for mips o32 which should be
>>
>> struct stat {
>> unsigned long st_dev;
>> unsigned long __st_pad0[3];
>> unsigned long long st_ino;
>> mode_t st_mode;
>> nlink_t st_nlink;
>> uid_t st_uid;
>> gid_t st_gid;
>> unsigned long st_rdev;
>> unsigned long __st_pad1[3];
>> long long st_size;
>> time_t st_atime;
>> unsigned long st_atime_nsec;
>> time_t st_mtime;
>> unsigned long st_mtime_nsec;
>> time_t st_ctime;
>> unsigned long st_ctime_nsec;
>> unsigned long st_blksize;
>> unsigned long __st_pad2;
>> long long st_blocks;
>> };
>>
>> It does appear that the syscalls for the two ABIs differ in this...
>
> This structure is identical to the one in musl except that it has
> 32-bit dev_t plus padding in place of 64-bit dev_t, and the musl
> version has reserved space at the end. Can you check whether the dev_t
> issue is actually a problem (it might be, based on endianness, and if
> so I think it would require ugly fixups in userspace)?
Ah no, my mistake, you are right, the padding seems correct and I was
getting confused as usual by dev_t. However the 64 bit dev_t is a
problem on bigendian mips.
(Whats the reason for Musl using 64 bit dev_t? glibc compatibility?)
justin
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.