ext2_vfsops.c (111856) | ext2_vfsops.c (116271) |
---|---|
1/* 2 * modified for EXT2FS support in Lites 1.1 3 * 4 * Aug 1995, Godmar Back (gback@cs.utah.edu) 5 * University of Utah, Department of Computer Science 6 */ 7/* 8 * Copyright (c) 1989, 1991, 1993, 1994 --- 23 unchanged lines hidden (view full) --- 32 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 33 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 37 * SUCH DAMAGE. 38 * 39 * @(#)ffs_vfsops.c 8.8 (Berkeley) 4/18/94 | 1/* 2 * modified for EXT2FS support in Lites 1.1 3 * 4 * Aug 1995, Godmar Back (gback@cs.utah.edu) 5 * University of Utah, Department of Computer Science 6 */ 7/* 8 * Copyright (c) 1989, 1991, 1993, 1994 --- 23 unchanged lines hidden (view full) --- 32 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 33 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 37 * SUCH DAMAGE. 38 * 39 * @(#)ffs_vfsops.c 8.8 (Berkeley) 4/18/94 |
40 * $FreeBSD: head/sys/gnu/fs/ext2fs/ext2_vfsops.c 111856 2003-03-04 00:04:44Z jeff $ | 40 * $FreeBSD: head/sys/gnu/fs/ext2fs/ext2_vfsops.c 116271 2003-06-12 20:48:38Z phk $ |
41 */ 42 43#include <sys/param.h> 44#include <sys/systm.h> 45#include <sys/namei.h> 46#include <sys/proc.h> 47#include <sys/kernel.h> 48#include <sys/vnode.h> --- 9 unchanged lines hidden (view full) --- 58#include <gnu/ext2fs/ext2_mount.h> 59#include <gnu/ext2fs/inode.h> 60 61#include <gnu/ext2fs/fs.h> 62#include <gnu/ext2fs/ext2_extern.h> 63#include <gnu/ext2fs/ext2_fs.h> 64#include <gnu/ext2fs/ext2_fs_sb.h> 65 | 41 */ 42 43#include <sys/param.h> 44#include <sys/systm.h> 45#include <sys/namei.h> 46#include <sys/proc.h> 47#include <sys/kernel.h> 48#include <sys/vnode.h> --- 9 unchanged lines hidden (view full) --- 58#include <gnu/ext2fs/ext2_mount.h> 59#include <gnu/ext2fs/inode.h> 60 61#include <gnu/ext2fs/fs.h> 62#include <gnu/ext2fs/ext2_extern.h> 63#include <gnu/ext2fs/ext2_fs.h> 64#include <gnu/ext2fs/ext2_fs_sb.h> 65 |
66static int ext2_fhtovp(struct mount *, struct fid *, struct vnode **); | |
67static int ext2_flushfiles(struct mount *mp, int flags, struct thread *td); | 66static int ext2_flushfiles(struct mount *mp, int flags, struct thread *td); |
68static int ext2_init(struct vfsconf *); 69static int ext2_mount(struct mount *, struct nameidata *, struct thread *); | |
70static int ext2_mountfs(struct vnode *, struct mount *, struct thread *); 71static int ext2_reload(struct mount *mountp, struct ucred *cred, 72 struct thread *td); | 67static int ext2_mountfs(struct vnode *, struct mount *, struct thread *); 68static int ext2_reload(struct mount *mountp, struct ucred *cred, 69 struct thread *td); |
73static int ext2_root(struct mount *, struct vnode **vpp); | |
74static int ext2_sbupdate(struct ext2mount *, int); | 70static int ext2_sbupdate(struct ext2mount *, int); |
75static int ext2_statfs(struct mount *, struct statfs *, struct thread *); 76static int ext2_sync(struct mount *, int, struct ucred *, struct thread *); 77static int ext2_uninit(struct vfsconf *); 78static int ext2_unmount(struct mount *, int, struct thread *); 79static int ext2_vget(struct mount *, ino_t, int, struct vnode **); 80static int ext2_vptofh(struct vnode *, struct fid *); | |
81 | 71 |
72static vfs_unmount_t ext2_unmount; 73static vfs_root_t ext2_root; 74static vfs_statfs_t ext2_statfs; 75static vfs_sync_t ext2_sync; 76static vfs_vget_t ext2_vget; 77static vfs_fhtovp_t ext2_fhtovp; 78static vfs_vptofh_t ext2_vptofh; 79static vfs_init_t ext2_init; 80static vfs_uninit_t ext2_uninit; 81static vfs_nmount_t ext2_mount; 82 |
|
82MALLOC_DEFINE(M_EXT2NODE, "EXT2 node", "EXT2 vnode private part"); 83static MALLOC_DEFINE(M_EXT2MNT, "EXT2 mount", "EXT2 mount structure"); 84 85static struct vfsops ext2fs_vfsops = { | 83MALLOC_DEFINE(M_EXT2NODE, "EXT2 node", "EXT2 vnode private part"); 84static MALLOC_DEFINE(M_EXT2MNT, "EXT2 mount", "EXT2 mount structure"); 85 86static struct vfsops ext2fs_vfsops = { |
86 NULL, 87 vfs_stdstart, 88 ext2_unmount, 89 ext2_root, /* root inode via vget */ 90 vfs_stdquotactl, 91 ext2_statfs, 92 ext2_sync, 93 ext2_vget, 94 ext2_fhtovp, 95 vfs_stdcheckexp, 96 ext2_vptofh, 97 ext2_init, 98 ext2_uninit, 99 vfs_stdextattrctl, 100 ext2_mount, | 87 .vfs_fhtovp = ext2_fhtovp, 88 .vfs_init = ext2_init, 89 .vfs_nmount = ext2_mount, 90 .vfs_root = ext2_root, /* root inode via vget */ 91 .vfs_statfs = ext2_statfs, 92 .vfs_sync = ext2_sync, 93 .vfs_uninit = ext2_uninit, 94 .vfs_unmount = ext2_unmount, 95 .vfs_vget = ext2_vget, 96 .vfs_vptofh = ext2_vptofh, |
101}; 102 103VFS_SET(ext2fs_vfsops, ext2fs, 0); 104#define bsd_malloc malloc 105#define bsd_free free 106 107static int ext2fs_inode_hash_lock; 108 --- 1122 unchanged lines hidden --- | 97}; 98 99VFS_SET(ext2fs_vfsops, ext2fs, 0); 100#define bsd_malloc malloc 101#define bsd_free free 102 103static int ext2fs_inode_hash_lock; 104 --- 1122 unchanged lines hidden --- |