diff options
author | rwatson <rwatson@FreeBSD.org> | 2007-07-11 21:21:55 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2007-07-11 21:21:55 +0000 |
commit | f30a555ada1b1a4cdfd1c42591b4f3466f940317 (patch) | |
tree | 6c13ed3d445da070b1634ca9c00fc80f1423c86b /sys/fs/coda | |
parent | 3287a2c53fcfb6141e98f687b8bc2a5df5fdc418 (diff) | |
download | FreeBSD-src-f30a555ada1b1a4cdfd1c42591b4f3466f940317.zip FreeBSD-src-f30a555ada1b1a4cdfd1c42591b4f3466f940317.tar.gz |
Resolve Coda mount failing because Coda failed to match the device
operations. But we don't have to, if we find the coda_mntinfo structure
for this device in our linked list, we know the device is good.
Submitted by: Jan Harkes <jaharkes@cs.cmu.edu>
Approved by: re (kensmith)
Diffstat (limited to 'sys/fs/coda')
-rw-r--r-- | sys/fs/coda/coda_vfsops.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/sys/fs/coda/coda_vfsops.c b/sys/fs/coda/coda_vfsops.c index 28994c7..ffce238 100644 --- a/sys/fs/coda/coda_vfsops.c +++ b/sys/fs/coda/coda_vfsops.c @@ -153,19 +153,15 @@ coda_mount(struct mount *vfsp, struct thread *td) NDFREE(&ndp, NDF_ONLY_PNBUF); /* - * See if the device table matches our expectations. + * Initialize the mount record and link it to the vfs struct */ - if (dev->si_devsw->d_open != vc_nb_open) - { + mi = dev2coda_mntinfo(dev); + if (!mi) { MARK_INT_FAIL(CODA_MOUNT_STATS); + printf("Coda mount: %s is not a cfs device\n", from); return(ENXIO); } - /* - * Initialize the mount record and link it to the vfs struct - */ - mi = dev2coda_mntinfo(dev); - if (!VC_OPEN(&mi->mi_vcomm)) { MARK_INT_FAIL(CODA_MOUNT_STATS); return(ENODEV); |