Messages in this thread Patch in this message |  | | | Date | Sat, 27 Dec 1997 21:02:51 -0500 (EST) | | From | "Steven N. Hirsch" <> | | Subject | Debug trace from alpha nfsd |
| |
Bill,
I placed the following in linux/fs/nfsd/export.c:
--- export.c.orig Mon Dec 1 23:40:07 1997 +++ export.c Sat Dec 27 20:55:27 1997 @@ -163,7 +163,7 @@ !exp_verify_string(nxp->ex_client, NFSCLNT_IDMAX)) return -EINVAL; - dprintk("exp_export called for %s:%s (%x/%ld fl %x).\n", + printk(KERN_WARNING "exp_export called for %s:%s (%x/%ld fl %x).\n", nxp->ex_client, nxp->ex_path, nxp->ex_dev, nxp->ex_ino, nxp->ex_flags); dev = nxp->ex_dev; @@ -207,6 +207,11 @@ err = -EINVAL; if(inode->i_dev != nxp->ex_dev || inode->i_ino != nxp->ex_ino) { /* I'm just being paranoid... */ + printk(KERN_WARNING "Failed paranoid test\n" + "inode->i_dev = %ld, nxp->ex_dev = %ld\n" + "inode->i_ino = %ld, nxp->ex_ino = %ld\n", + inode->i_dev, nxp->ex_dev, + inode->i_ino, nxp->ex_ino); goto finish; } Then tried to export the root directory. This fails with EINVAL, yielding the following from the log:
Dec 27 20:47:18 alpha kernel: Installing knfsd (copyright (C) 1996 okir@monad.swb.de). Dec 27 20:47:20 alpha kernel: nfsd_init: initialized fhcache, entries=341 Dec 27 20:47:20 alpha kernel: exp_export called for air.steve.net:/ (0/2069 fl 0). Dec 27 20:47:20 alpha kernel: Failed paranoid test Dec 27 20:47:20 alpha kernel: inode->i_dev = 2069, nxp->ex_dev = 0 Dec 27 20:47:20 alpha kernel: inode->i_ino = 2, nxp->ex_ino = 2069 Dec 27 20:55:34 alpha kernel: exp_unexport: found client air.steve.net Dec 27 20:55:35 alpha kernel: nfsd: terminating on signal 15 Dec 27 20:55:35 alpha last message repeated 3 times Dec 27 20:55:35 alpha kernel: nfsd_fh_free: 0 fixups freed Dec 27 20:55:35 alpha kernel: nfsd_fh_free: 0 paths freed Dec 27 20:55:35 alpha kernel: nfsd_fh_free: verified 0, put 0 Dec 27 20:55:35 alpha kernel: remove_proc_entry: parent nlink=2, file nlink=1
As you can see, something is getting scrambled with the dcache lookup. My guess says that it's an endian problem (note the value for inode->i_dev is the same as the nxp->ex_ino!).
Can you suggest a reasonable fix for this? I'd like to get the knfs working on alpha.
Steve
|  |