xref: /original-bsd/sys/ufs/ufs/ufsmount.h (revision eafa6506)
1 /*
2  * Copyright (c) 1982, 1986, 1989 Regents of the University of California.
3  * All rights reserved.
4  *
5  * %sccs.include.redist.c%
6  *
7  *	@(#)ufsmount.h	7.7 (Berkeley) 06/28/90
8  */
9 
10 /*
11  * Mount structure.
12  * One allocated on every mount.
13  * Used to find the super block.
14  */
15 struct	ufsmount {
16 	struct	mount *um_mountp;	/* vfs structure for this filesystem */
17 	dev_t	um_dev;			/* device mounted */
18 	struct	vnode *um_devvp;	/* vnode for block device mounted */
19 	struct	fs *um_fs;		/* pointer to superblock */
20 	struct	vnode *um_quotas[MAXQUOTAS]; /* pointer to quota files */
21 	struct	ucred *um_cred[MAXQUOTAS]; /* cred for access to quota file */
22 	time_t	um_btime[MAXQUOTAS];	/* block quota time limit */
23 	time_t	um_itime[MAXQUOTAS];	/* inode quota time limit */
24 	char	um_qflags[MAXQUOTAS];	/* quota specific flags, see below */
25 };
26 /*
27  * Flags describing the state of quotas.
28  */
29 #define	QTF_OPENING	0x01		/* Q_QUOTAON in progress */
30 #define	QTF_CLOSING	0x02		/* Q_QUOTAOFF in progress */
31 
32 #ifdef KERNEL
33 /*
34  * Convert mount ptr to ufsmount ptr.
35  */
36 #define VFSTOUFS(mp)	((struct ufsmount *)((mp)->mnt_data))
37 #endif /* KERNEL */
38