Bug 29657

Summary: Incorrect struct stat for 64-bit time on linux/generic platforms
Product: glibc Reporter: Joseph Myers <jsm28>
Component: libcAssignee: Adhemerval Zanella <adhemerval.zanella>
Status: RESOLVED FIXED    
Severity: normal CC: adhemerval.zanella, drepper.fsp
Priority: P2    
Version: 2.36   
Target Milestone: 2.37   
Host: csky*-linux* nios2*-linux* Target:
Build: Last reconfirmed:

Description Joseph Myers 2022-10-07 00:24:22 UTC
sysdeps/unix/sysv/linux/generic/bits/struct_stat.h is missing the conditionals to use bits/struct_stat_time64_helper.h in the __USE_TIME_BITS64 case.  This means that platforms using linux/generic but with __TIMESIZE == 32 (i.e. csky and nios2, I think) get the wrong version of struct stat for 64-bit time, since the actual function implementations use struct __stat64_t64 which does use bits/struct_stat_time64_helper.h, so the type declared in the installed headers is inconsistent with the implementation.
Comment 1 Adhemerval Zanella 2022-10-25 19:07:32 UTC
Fixed on 2.37.