xref: /minix3/minix/servers/vfs/const.h (revision 0b98e8aad89f2bd4ba80b523d73cf29e9dd82ce1)
1 #ifndef __VFS_CONST_H__
2 #define __VFS_CONST_H__
3 
4 /* Tables sizes */
5 #define NR_FILPS        1024	/* # slots in filp table */
6 #define NR_LOCKS           8	/* # slots in the file locking table */
7 #define NR_MNTS           16 	/* # slots in mount table */
8 #define NR_VNODES       1024	/* # slots in vnode table */
9 #define NR_WTHREADS	   9	/* # slots in worker thread table */
10 
11 #define NR_NONEDEVS	NR_MNTS	/* # slots in nonedev bitmap */
12 
13 /* Miscellaneous constants */
14 #define SU_UID 	 ((uid_t) 0)	/* super_user's uid_t */
15 #define SYS_UID  ((uid_t) 0)	/* uid_t for system processes and INIT */
16 #define SYS_GID  ((gid_t) 0)	/* gid_t for system processes and INIT */
17 
18 #define FP_BLOCKED_ON_NONE	0 /* not blocked */
19 #define FP_BLOCKED_ON_PIPE	1 /* susp'd on pipe */
20 #define FP_BLOCKED_ON_LOCK	2 /* susp'd on lock */
21 #define FP_BLOCKED_ON_POPEN	3 /* susp'd on pipe open */
22 #define FP_BLOCKED_ON_SELECT	4 /* susp'd on select */
23 #define FP_BLOCKED_ON_OTHER	5 /* blocked on other process, check
24 				     fp_task to find out */
25 
26 /* test if the process is blocked on something */
27 #define fp_is_blocked(fp)	((fp)->fp_blocked_on != FP_BLOCKED_ON_NONE)
28 
29 #define INVALID_THREAD	((thread_t) -1) 	/* known-invalid thread ID */
30 
31 #define SYMLOOP		16
32 
33 #define LABEL_MAX	16	/* maximum label size (including '\0'). Should
34 				 * not be smaller than 16 or bigger than
35 				 * M_PATH_STRING_MAX.
36 				 */
37 #define FSTYPE_MAX	VFS_NAMELEN	/* maximum file system type size */
38 
39 /* possible select() operation types; read, write, errors */
40 #define SEL_RD		CDEV_OP_RD
41 #define SEL_WR		CDEV_OP_WR
42 #define SEL_ERR		CDEV_OP_ERR
43 #define SEL_NOTIFY	CDEV_NOTIFY /* not a real select operation */
44 
45 /* special driver endpoint for CTTY_MAJOR; must be able to pass isokendpt() */
46 #define CTTY_ENDPT	VFS_PROC_NR
47 
48 #endif
49