[Bug 186293] tar(1): Problems with tar on FreeBSD 10.0

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Oct 6 14:48:08 UTC 2014


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=186293

--- Comment #6 from jnaughto at ee.ryerson.ca ---
Hi All,

I can confirm Martin's NFS traces.   I installed a brand new Solaris 11.2
server.  I didn't configure anything except networking.  Exported /var/mnt from
the Solaris 11.2 server to a Freebsd 10.0 client and got the following traces:




Freebsd 10.0 Client NFSv3 Request:
NFS:  ----- Sun NFS -----
NFS:  
NFS:  Proc = 2 (Set file attributes)
NFS:  File handle = [FBA3]
NFS:   1E59EFB108C388D40A00200000000000F8B80 5000A0004000000000052E40100
NFS:    Mode = 0644
NFS:     Setuid = 0, Setgid = 0, Sticky = 0
NFS:     Owner's permissions = rw-
NFS:     Group's permissions = r--
NFS:     Other's permissions = r--
NFS:  User ID = (not set)
NFS:  Group ID = (not set)
NFS:  Size = (not set)
NFS:  Access time = 02-Oct-14 14:47:23.000000 GMT (set to client time)
NFS:  Modification time = 02-Oct-14 14:47:23.000000 GMT (set to client time)

Solaris 11.2 NFS Server Response
NFS:  ----- Sun NFS -----
NFS:  
NFS:  Proc = 2 (Set file attributes)
NFS:  Status = 0 (OK)
NFS:  Pre-operation attributes: 
NFS:    Size = 0 bytes
NFS:    Modification time      = 10-Oct-78 12:33:23.1364841573 GMT
NFS:    Attribute change time  = 02-Oct-14 10:47:57.031549787 GMT
NFS:  
NFS:  Post-operation attributes: 
NFS:    File type = 1 (Regular File)
NFS:    Mode = 00
NFS:     Setuid = 0, Setgid = 0, Sticky = 0
NFS:     Owner's permissions = ---
NFS:     Group's permissions = ---
NFS:     Other's permissions = ---
NFS:    Link count = 1, User ID = 0, Group ID = 0
NFS:    File size = 0, Used = 512
NFS:    Special: Major = 4294967295, Minor = 4294967295
NFS:    File system id = 1198295941134, File id = 32
NFS:    Last access time      = 02-Oct-14 14:47:23.000000000 GMT
NFS:    Modification time     = 02-Oct-14 14:47:23.000000000 GMT
NFS:    Attribute change time = 02-Oct-14 10:47:57.038686069 GMT


Freebsd 8.0 Client
NFS:  ----- Sun NFS -----
NFS:  
NFS:  Proc = 2 (Set file attributes)
NFS:  File handle = [27D9]
NFS:   1E59EFB108C388D40A0021000000000025C205000A0004000000000052E40100
NFS:    Mode = 0644
NFS:     Setuid = 0, Setgid = 0, Sticky = 0
NFS:     Owner's permissions = rw-
NFS:     Group's permissions = r--
NFS:     Other's permissions = r--
NFS:  User ID = (not set)
NFS:  Group ID = (not set)
NFS:  Size = (not set)
NFS:  Access time = (set to server time)
NFS:  Modification time = (set to server time)

Solaris 11.2 NFS Server response
NFS:  ----- Sun NFS -----
NFS:  
NFS:  Proc = 2 (Set file attributes)
NFS:  Status = 0 (OK)
NFS:  Pre-operation attributes: 
NFS:    Size = 0 bytes
NFS:    Modification time      = 13-Nov-87 14:32:33.2130706433 GMT
NFS:    Attribute change time  = 02-Oct-14 14:03:35.971683411 GMT
NFS:  
NFS:  Post-operation attributes: 
NFS:    File type = 1 (Regular File)
NFS:    Mode = 0644
NFS:     Setuid = 0, Setgid = 0, Sticky = 0
NFS:     Owner's permissions = rw-
NFS:     Group's permissions = r--
NFS:     Other's permissions = r--
NFS:    Link count = 1, User ID = 0, Group ID = 0
NFS:    File size = 0, Used = 512
NFS:    Special: Major = 4294967295, Minor = 4294967295
NFS:    File system id = 1198295941134, File id = 33
NFS:    Last access time      = 02-Oct-14 14:03:35.979188718 GMT
NFS:    Modification time     = 02-Oct-14 14:03:35.979188834 GMT
NFS:    Attribute change time = 02-Oct-14 14:03:35.979237259 GMT


So it looks like (to me) that with FreeBSD 8.0 it would send set file
attributes in one request and set access time/modification time in a follow up
request.  As of FreeBSD 9.0 and onwards the FreeBSD client sends a file mode
request and access time request in one packet.   Solaris is responding OK in
with respect to the access time and modification time change but ignoring the
file mode additional change.   You can see in the FreeBSD 8.0 the Access
time/Modification time is not set in the mode change.  Any way we can go back
to doing this again?  Right now NFSv3 is broken until this gets resolved.   

I own a Oracle Contract support right now so I've also filed a ticket with
them.  Yet this issue seems to be not prevalent with linux or Solaris Clients. 
 For example a Scientfic Linux Client 6.3 and Solaris 11.2 response was the
following:

Scientfic Linux NFS Client 6.3

NFS:  ----- Sun NFS -----
NFS:  
NFS:  Proc = 2 (Set file attributes)
NFS:  File handle = [07A3]
NFS:   1E59EFB108C388D40A001F00000000003BB805000A0004000000000052E40100
NFS:    Mode = 0644
NFS:     Setuid = 0, Setgid = 0, Sticky = 0
NFS:     Owner's permissions = rw-
NFS:     Group's permissions = r--
NFS:     Other's permissions = r--
NFS:  User ID = (not set)
NFS:  Group ID = (not set)
NFS:  Size = (not set)
NFS:  Access time = (do not set)
NFS:  Modification time = (do not set)


Solaris 11.2 NFS Server Response

NFS:  ----- Sun NFS -----
NFS:  
NFS:  Proc = 2 (Set file attributes)
NFS:  Status = 0 (OK)
NFS:  Pre-operation attributes: 
NFS:    Size = 0 bytes
NFS:    Modification time      = 05-Sep-14 21:14:33.000000000 GMT
NFS:    Attribute change time  = 02-Oct-14 10:32:12.444447250 GMT
NFS:  
NFS:  Post-operation attributes: 
NFS:    File type = 1 (Regular File)
NFS:    Mode = 0644
NFS:     Setuid = 0, Setgid = 0, Sticky = 0
NFS:     Owner's permissions = rw-
NFS:     Group's permissions = r--
NFS:     Other's permissions = r--
NFS:    Link count = 1, User ID = 1061, Group ID = 2500
NFS:    File size = 0, Used = 512
NFS:    Special: Major = 4294967295, Minor = 4294967295
NFS:    File system id = 1198295941134, File id = 31
NFS:    Last access time      = 02-Oct-14 14:33:15.191601635 GMT
NFS:    Modification time     = 05-Sep-14 21:14:33.000000000 GMT
NFS:    Attribute change time = 02-Oct-14 10:32:12.457265934 GMT

So it looks like both Linux and FreeBSD pre 9.X does not have the issue.  The
question is it legal to request both modification time changes and mode changes
within the same packet?  What happens if you could change the mode but not the
access time what would you expect to get back from the server Status NOT OK?

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list