On Monday 2009-12-14 00:08, Jan Engelhardt wrote: >Hi, > > >I noticed 64-bit tar incorrectly creating symlinks, and isolated this to >this testcase:[...] > >Linux ares 2.6.32 #16 SMP Sat Dec 5 21:02:04 CET 2009 sparc64 sparc64 >sparc64 GNU/Linux [sun4v] > >This testcase will print, for example: > >1260745109.0 >1260745109.876573675 >1260745109.876573675 > >So on a quick glance, fstat64 looks broken. >I am trying to look at it further, but I hope you can beat me to it ;-) It is because arch/sparc/include/stat.h does not define STAT_HAVE_NSEC for 64-bit sparc, even though there's nsec in struct stat64. That leads to fs/stat.c not copying the subsecond parts to userspace (in function cp_new_stat). I do not think I can just move STAT_HAVE_NSEC atop of stat.h, outside the #if64-32 block, since 'struct stat' does not have nsec on sparc64. Mind boggling! What would be the best way to fix this? thanks, Jan -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html