On Wednesday 10 May 2006 01:28, Paul Eggert wrote: > Mike Frysinger <[EMAIL PROTECTED]> writes: > > so just ignore me, thanks :) > > OK, but, the original message at > <http://bugs.gentoo.org/show_bug.cgi?id=132673> points out a real > problem.
really not my day it seems ... > However, the problem does not occur with me, so it most likely is a bug in > his NFS implementation which means it's a bug in the mainline kernel as well > (perhaps the gentoo NFS client code?). Gentoo no longer does custom patched sources ... our "gentoo kernel" consists of vanilla sources + upstream security/critical fixes only ... and since both the nfs server and client are part of mainline linux kernel, hard for us to screw it up :) as for our coreutils which we ship, it too includes mostly fixes taken from upstream to address specific bugs http://sources.gentoo.org/gentoo/src/patchsets/coreutils/ > Here's an example of cp -p working on Solaris 8 (sparc) with an > NFS-mounted file: here's unmodified coreutils/cvs running on unmodified linux kernel: $ /bin/cp-cvs --version | head -n 1 cp (GNU coreutils) 6.0-cvs $ uname -r 2.6.16.9 $ strace -o out /bin/cp-cvs -p /etc/passwd . $ tail out write(4, "root:x:0:0:root:/root:/bin/bash\n"..., 2966) = 2966 utimes("/proc/self/fd/4", {1147002858, 0}) = 0 fchown(4, 0, 0) = -1 EPERM (Operation not permitted) fgetxattr(3, "system.posix_acl_access", 0x731b342540a0, 132) = -1 EOPNOTSUPP (Operation not supported) fsetxattr(4, "system.posix_acl_access", "\x02\x00\x00\x00\x01\x00\x06\x00\xff\xff\xff\xff\x04\x00\x04\x00\xff\xff\xff\xff \x00\x04\x00\xff\xff\xff\xff", 28, 0) = -1 EOPNOTSUPP (Operation not supported) fchmod(4, 0100644) = 0 close(4) = 0 close(3) = 0 close(1) = 0 exit_group(0) = ? $ stat /etc/passwd passwd File: `/etc/passwd' Size: 2966 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051d Inode: 34732 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2006-05-07 07:54:18.000000000 -0400 Modify: 2006-05-07 07:54:18.000000000 -0400 Change: 2006-05-07 07:54:18.000000000 -0400 File: `passwd' Size: 2966 Blocks: 8 IO Block: 16384 regular file Device: eh/14d Inode: 584239 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1000/ vapier) Gid: ( 100/ users) Access: 2006-05-07 07:54:18.000000000 -0400 Modify: 2006-05-10 01:39:45.771739400 -0400 Change: 2006-05-10 01:39:45.773739096 -0400 shifting down the utimes() to after fchown() yields the correct results ... going by the chown() spec: http://www.opengroup.org/onlinepubs/009695399/functions/chown.html only the ctime field should be updated, so we do appear to have a bug in the linux/nfs implementation ... -mike _______________________________________________ Bug-coreutils mailing list [email protected] http://lists.gnu.org/mailman/listinfo/bug-coreutils
