On Thu, Jan 10, 2019 at 7:10 PM Joseph Myers joseph@codesourcery.com wrote:
On Thu, 10 Jan 2019, Arnd Bergmann wrote:
- Add system calls that have not yet been integrated into all architectures but that we definitely want there.
glibc has a note that alpha lacks statfs64, any plans for that?
Good catch, I missed that because all other 64-bit architectures have a statfs() call with 64-bit fields. I see that it also has an osf_statfs64 structure and system call with lots of padding and some oddly sized fields: f_type, f_flags and f_namemax are only 16 bits wide, the rest is all 64-bit.
Adding the regular statfs64() should be easy enough, we just need to decide which layout to use:
a) use the currently unused 'struct statfs64' as provided by the alpha uapi headers, which has a 32-bit __statfs_word but 64-bit f_blocks, f_bfree, f_bavail, f_files, and f_ffree.
b) copy asm-generic/statfs.h to the alpha asm/statfs.h and change statfs64 to have the regular layout that we use on all other 64-bit architectures, using all 64-bit fields.
The other open question for alpha (as mentioned in one of the patches I sent) would be whether to add get{eg,eu,g,p,pp,u}id() with the regular calling conventions.
Arnd