diff options
author | iedowse <iedowse@FreeBSD.org> | 2002-07-01 11:00:47 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2002-07-01 11:00:47 +0000 |
commit | 603a2708879d64fbc0c4e66269000f4525895f2e (patch) | |
tree | 2098674faebe22dd269ccf65053fd9c36532da98 /sys/ufs/ffs/ffs_vfsops.c | |
parent | 3c634774fa3477cb19a2706307e02bd1747ad49c (diff) | |
download | FreeBSD-src-603a2708879d64fbc0c4e66269000f4525895f2e.zip FreeBSD-src-603a2708879d64fbc0c4e66269000f4525895f2e.tar.gz |
Add the ffs bits necessary to support unloading of the ufs kernel
module. This adds an ffs_uninit() function that calls ufs_uninit()
and also calls a new softdep_uninitialize() function. Add a stub
for softdep_uninitialize() to cover the non-SOFTUPDATES case.
Reviewed by: mckusick
Diffstat (limited to 'sys/ufs/ffs/ffs_vfsops.c')
-rw-r--r-- | sys/ufs/ffs/ffs_vfsops.c | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c index 61cec1f..fa0bffa 100644 --- a/sys/ufs/ffs/ffs_vfsops.c +++ b/sys/ufs/ffs/ffs_vfsops.c @@ -73,6 +73,7 @@ static void ffs_oldfscompat_read(struct fs *, struct ufsmount *, ufs2_daddr_t); static void ffs_oldfscompat_write(struct fs *, struct ufsmount *); static int ffs_init(struct vfsconf *); +static int ffs_uninit(struct vfsconf *); static struct vfsops ufs_vfsops = { ffs_mount, @@ -87,7 +88,7 @@ static struct vfsops ufs_vfsops = { vfs_stdcheckexp, ffs_vptofh, ffs_init, - vfs_stduninit, + ffs_uninit, #ifdef UFS_EXTATTR ufs_extattrctl, #else @@ -1375,7 +1376,7 @@ ffs_vptofh(vp, fhp) } /* - * Initialize the filesystem; just use ufs_init. + * Initialize the filesystem. */ static int ffs_init(vfsp) @@ -1387,6 +1388,20 @@ ffs_init(vfsp) } /* + * Undo the work of ffs_init(). + */ +static int +ffs_uninit(vfsp) + struct vfsconf *vfsp; +{ + int ret; + + ret = ufs_uninit(vfsp); + softdep_uninitialize(); + return (ret); +} + +/* * Write a superblock and associated information back to disk. */ static int |