Date: Mon, 14 Dec 1998 03:42:35 -0800 From: Mike Smith <mike@smith.net.au> To: "D. Rock" <rock@cs.uni-sb.de> Cc: current@FreeBSD.ORG Subject: Re: Weird NFS error using Solaris 7 server Message-ID: <199812141142.DAA00657@dingo.cdrom.com> In-Reply-To: Your message of "Mon, 07 Dec 1998 20:54:30 %2B0100." <366C3276.E337E0F@cs.uni-sb.de>
next in thread | previous in thread | raw e-mail | index | archive | help
> > Paul van der Zwan schrieb: > > > > When I try to create a file on a FS mounted from my Sparc 5 running Solaris 7 > > I get the following error: > > [21:14:42 trantor:paulz:/mnt/var/tmp] > > $ touch a > > touch: a: Inappropriate file type or format > I can confirm this error. The solution is (again) using NFSv2 mounts. > > Is this problem currently under investigation? It happens at least with > kernels cvsup'd up to today. I don't know of anyone actively pursuing it. If you have a little time to look at the code (it's just code), that'd be really appreciated. > Below is the output of "snoop -v port 2049" on the Solaris box > (The output of snoop seems much more readable by human). One output > is the (succeding) call using v2 mounts, the other the (failing) > using v3 mounts. I have to say that most of it looks OK; the relevant bits are: the v3 create failing: > RPC: ----- SUN RPC Header ----- > RPC: > RPC: Transaction id = 1269155957 > RPC: Type = 0 (Call) > RPC: RPC version = 2 > RPC: Program = 100003 (NFS), version = 3, procedure = 8 > RPC: Credentials: Flavor = 1 (Unix), len = 48 bytes > RPC: Time = 0 > RPC: Hostname = > RPC: Uid = 0, Gid = 0 > RPC: Groups = 0 2 3 4 5 20 31 > RPC: Verifier : Flavor = 0 (None), len = 0 bytes > RPC: > NFS: ----- Sun NFS ----- > NFS: > NFS: Proc = 8 (Create file) > NFS: File handle = [B800] > NFS: 4600FC00020000000A000000CE600000CE0069250A000000CE600000CE006925 > NFS: File name = bla > NFS: Method = Unchecked > 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 = -1 (set to client time) > NFS: Modification time = -1 (set to client time) ... > RPC: ----- SUN RPC Header ----- > RPC: > RPC: Transaction id = 1269155957 > RPC: Type = 1 (Reply) > RPC: This is a reply to frame 5 > RPC: Status = 0 (Accepted) > RPC: Verifier : Flavor = 0 (None), len = 0 bytes > RPC: Accept status = 0 (Success) > RPC: > NFS: ----- Sun NFS ----- > NFS: > NFS: Proc = 8 (Create file) > NFS: Status = 79 ((unknown error)) > NFS: Pre-operation attributes: > NFS: Size = 512 bytes > NFS: Modification time = 07-Dec-98 19:27:17.665634000 GMT > NFS: Attribute change time = 07-Dec-98 19:27:17.665634000 GMT > NFS: > NFS: Post-operation attributes: > NFS: File type = 2 (Directory) > NFS: Mode = 0755 > NFS: Setuid = 0, Setgid = 0, Sticky = 0 > NFS: Owner's permissions = rwx > NFS: Group's permissions = r-x > NFS: Other's permissions = r-x > NFS: Link count = 2, User ID = 0, Group ID = 1 > NFS: File size = 512, Used = 1024 > NFS: Special: Major = 0, Minor = 0 > NFS: File system id = 16515142, File id = 24782 > NFS: Last access time = 07-Dec-98 19:37:51.535634000 GMT > NFS: Modification time = 07-Dec-98 19:27:17.665634000 GMT > NFS: Attribute change time = 07-Dec-98 19:27:17.665634000 GMT The v2 create succeeding: > RPC: ----- SUN RPC Header ----- > RPC: > RPC: Transaction id = 1269155981 > RPC: Type = 0 (Call) > RPC: RPC version = 2 > RPC: Program = 100003 (NFS), version = 2, procedure = 9 > RPC: Credentials: Flavor = 1 (Unix), len = 48 bytes > RPC: Time = 0 > RPC: Hostname = > RPC: Uid = 0, Gid = 0 > RPC: Groups = 0 2 3 4 5 20 31 > RPC: Verifier : Flavor = 0 (None), len = 0 bytes > RPC: > NFS: ----- Sun NFS ----- > NFS: > NFS: Proc = 9 (Create file) > NFS: File handle = [B800] > NFS: 4600FC00020000000A000000CE600000CE0069250A000000CE600000CE006925 > NFS: File name = bla > NFS: Mode = 0100644 > NFS: Type = Regular file > NFS: Setuid = 0, Setgid = 0, Sticky = 0 > NFS: Owner's permissions = rw- > NFS: Group's permissions = r-- > NFS: Other's permissions = r-- > NFS: UID = -1 > NFS: GID = -1 > NFS: Size = 0 > NFS: Access time = -1 > NFS: Modification time = -1 ... > RPC: ----- SUN RPC Header ----- > RPC: > RPC: Transaction id = 1269155981 > RPC: Type = 1 (Reply) > RPC: This is a reply to frame 7 > RPC: Status = 0 (Accepted) > RPC: Verifier : Flavor = 0 (None), len = 0 bytes > RPC: Accept status = 0 (Success) > RPC: > NFS: ----- Sun NFS ----- > NFS: > NFS: Proc = 9 (Create file) > NFS: Status = 0 (OK) > NFS: File handle = [2E82] > NFS: 4600FC00020000000A000000D260000004FE29590A000000CE600000CE006925 > NFS: File type = 1 (Regular File) > NFS: Mode = 0100644 > NFS: Type = Regular file > 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, UID = 0, GID = 0, Rdev = 0x0 > NFS: File size = 0, Block size = 8192, No. of blocks = 0 > NFS: File system id = 16515142, File id = 24786 > NFS: Access time = 07-Dec-98 19:41:14.685634 GMT > NFS: Modification time = 07-Dec-98 19:41:14.685634 GMT > NFS: Inode change time = 07-Dec-98 19:41:14.685634 GMT > NFS: The only visible differences here are the UID/GID, and it's not clear whether the '-1' in the v2 request corresponds to the (not set) in the v3 request or not. I did have someone suggest that the create would work if you supplied O_EXCL when making the open - if you want to try a small sample program and compare the traces that might be informative. -- \\ Sometimes you're ahead, \\ Mike Smith \\ sometimes you're behind. \\ mike@smith.net.au \\ The race is long, and in the \\ msmith@freebsd.org \\ end it's only with yourself. \\ msmith@cdrom.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199812141142.DAA00657>