ext2_vfsops.c (92462) | ext2_vfsops.c (92728) |
---|---|
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 92462 2002-03-17 01:25:47Z mckusick $ | 40 * $FreeBSD: head/sys/gnu/fs/ext2fs/ext2_vfsops.c 92728 2002-03-19 22:40:48Z alfred $ |
41 */ 42 43#include "opt_quota.h" 44 45#include <sys/param.h> 46#include <sys/systm.h> 47#include <sys/namei.h> 48#include <sys/proc.h> --- 15 unchanged lines hidden (view full) --- 64#include <ufs/ufs/ufs_extern.h> 65 66 67#include <gnu/ext2fs/fs.h> 68#include <gnu/ext2fs/ext2_extern.h> 69#include <gnu/ext2fs/ext2_fs.h> 70#include <gnu/ext2fs/ext2_fs_sb.h> 71 | 41 */ 42 43#include "opt_quota.h" 44 45#include <sys/param.h> 46#include <sys/systm.h> 47#include <sys/namei.h> 48#include <sys/proc.h> --- 15 unchanged lines hidden (view full) --- 64#include <ufs/ufs/ufs_extern.h> 65 66 67#include <gnu/ext2fs/fs.h> 68#include <gnu/ext2fs/ext2_extern.h> 69#include <gnu/ext2fs/ext2_fs.h> 70#include <gnu/ext2fs/ext2_fs_sb.h> 71 |
72static int ext2_fhtovp __P((struct mount *, struct fid *, struct vnode **)); 73static int ext2_flushfiles __P((struct mount *mp, int flags, struct thread *td)); 74static int ext2_mount __P((struct mount *, 75 char *, caddr_t, struct nameidata *, struct thread *)); 76static int ext2_mountfs __P((struct vnode *, struct mount *, struct thread *)); 77static int ext2_reload __P((struct mount *mountp, struct ucred *cred, 78 struct thread *td)); 79static int ext2_sbupdate __P((struct ufsmount *, int)); 80static int ext2_statfs __P((struct mount *, struct statfs *, struct thread *)); 81static int ext2_sync __P((struct mount *, int, struct ucred *, struct thread *)); 82static int ext2_unmount __P((struct mount *, int, struct thread *)); 83static int ext2_vget __P((struct mount *, ino_t, int, struct vnode **)); 84static int ext2_vptofh __P((struct vnode *, struct fid *)); | 72static int ext2_fhtovp(struct mount *, struct fid *, struct vnode **); 73static int ext2_flushfiles(struct mount *mp, int flags, struct thread *td); 74static int ext2_mount(struct mount *, 75 char *, caddr_t, struct nameidata *, struct thread *); 76static int ext2_mountfs(struct vnode *, struct mount *, struct thread *); 77static int ext2_reload(struct mount *mountp, struct ucred *cred, 78 struct thread *td); 79static int ext2_sbupdate(struct ufsmount *, int); 80static int ext2_statfs(struct mount *, struct statfs *, struct thread *); 81static int ext2_sync(struct mount *, int, struct ucred *, struct thread *); 82static int ext2_unmount(struct mount *, int, struct thread *); 83static int ext2_vget(struct mount *, ino_t, int, struct vnode **); 84static int ext2_vptofh(struct vnode *, struct fid *); |
85 86static MALLOC_DEFINE(M_EXT2NODE, "EXT2 node", "EXT2 vnode private part"); 87 88static struct vfsops ext2fs_vfsops = { 89 ext2_mount, 90 ufs_start, /* empty function */ 91 ext2_unmount, 92 ufs_root, /* root inode via vget */ --- 10 unchanged lines hidden (view full) --- 103}; 104 105VFS_SET(ext2fs_vfsops, ext2fs, 0); 106#define bsd_malloc malloc 107#define bsd_free free 108 109static int ext2fs_inode_hash_lock; 110 | 85 86static MALLOC_DEFINE(M_EXT2NODE, "EXT2 node", "EXT2 vnode private part"); 87 88static struct vfsops ext2fs_vfsops = { 89 ext2_mount, 90 ufs_start, /* empty function */ 91 ext2_unmount, 92 ufs_root, /* root inode via vget */ --- 10 unchanged lines hidden (view full) --- 103}; 104 105VFS_SET(ext2fs_vfsops, ext2fs, 0); 106#define bsd_malloc malloc 107#define bsd_free free 108 109static int ext2fs_inode_hash_lock; 110 |
111static int ext2_check_sb_compat __P((struct ext2_super_block *es, 112 dev_t dev, int ronly)); 113static int compute_sb_data __P((struct vnode * devvp, | 111static int ext2_check_sb_compat(struct ext2_super_block *es, 112 dev_t dev, int ronly); 113static int compute_sb_data(struct vnode * devvp, |
114 struct ext2_super_block * es, | 114 struct ext2_super_block * es, |
115 struct ext2_sb_info * fs)); | 115 struct ext2_sb_info * fs); |
116 117#ifdef notyet | 116 117#ifdef notyet |
118static int ext2_mountroot __P((void)); | 118static int ext2_mountroot(void); |
119 120/* 121 * Called by main() when ext2fs is going to be mounted as root. 122 * 123 * Name is updated by mount(8) after booting. 124 */ 125#define ROOTNAME "root_device" 126 --- 1079 unchanged lines hidden --- | 119 120/* 121 * Called by main() when ext2fs is going to be mounted as root. 122 * 123 * Name is updated by mount(8) after booting. 124 */ 125#define ROOTNAME "root_device" 126 --- 1079 unchanged lines hidden --- |