 8590ac260d
			
		
	
	
		8590ac260d
		
	
	
	
	
		
			
			- all macros in consts.h that depend on NR_TASKS replaced by a FP_BLOCKED_ON_* - fp_suspended removed and replaced by fp_blocked_on. Testing whether a process is supended is qeual to testing whether fp_blocked_on is FP_BLOCKED_ON_NONE or not - fp_task is valid only if fp_blocked_on == FP_BLOCKED_ON_OTHER - no need of special values that do not colide with valid and special endpoints since they are not used as endpoints anymore - suspend only takes FP_BLOCKED_ON_* values not endpoints anymore - suspend(task) replaced by wait_for(task) which sets fp_task so we remember who are we waiting for and suspend sets fp_blocked_on to FP_BLOCKED_ON_OTHER to signal that we are waiting for some other process - some functions should take endpoint_t instead of int, fixed
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* Tables sizes */
 | |
| #define NR_FILPS         512	/* # slots in filp table */
 | |
| #define NR_LOCKS           8	/* # slots in the file locking table */
 | |
| #define NR_MNTS             8	/* # slots in mount table */
 | |
| #define NR_VNODES         512	/* # slots in vnode table */
 | |
| 
 | |
| /* Miscellaneous constants */
 | |
| #define SU_UID 	 ((uid_t) 0)	/* super_user's uid_t */
 | |
| #define SERVERS_UID ((uid_t) 11) /* who may do FSSIGNON */
 | |
| #define SYS_UID  ((uid_t) 0)	/* uid_t for processes MM and INIT */
 | |
| #define SYS_GID  ((gid_t) 0)	/* gid_t for processes MM and INIT */
 | |
| 
 | |
| #define FP_BLOCKED_ON_NONE	0 /* not blocked */
 | |
| #define FP_BLOCKED_ON_PIPE	1 /* susp'd on pipe */
 | |
| #define FP_BLOCKED_ON_LOCK	2 /* susp'd on lock */
 | |
| #define FP_BLOCKED_ON_POPEN	3 /* susp'd on pipe open */
 | |
| #define FP_BLOCKED_ON_SELECT	4 /* susp'd on select */
 | |
| #define FP_BLOCKED_ON_DOPEN	5 /* susp'd on device open */
 | |
| #define FP_BLOCKED_ON_OTHER	6 /* blocked on other process, check 
 | |
| 				     fp_task to find out */
 | |
| 
 | |
| /* test if the process is blocked on something */
 | |
| #define fp_is_blocked(fp)	((fp)->fp_blocked_on != FP_BLOCKED_ON_NONE)
 | |
| 
 | |
| #define DUP_MASK        0100	/* mask to distinguish dup2 from dup */
 | |
| 
 | |
| #define LOOK_UP            0 /* tells search_dir to lookup string */
 | |
| #define ENTER              1 /* tells search_dir to make dir entry */
 | |
| #define DELETE             2 /* tells search_dir to delete entry */
 | |
| #define IS_EMPTY           3 /* tells search_dir to ret. OK or ENOTEMPTY */  
 | |
| 
 | |
| #define SYMLOOP		16
 | |
| 
 | |
| #define ROOT_INODE         1		/* inode number for root directory */
 | |
| 
 | |
| /* Args to dev_io */
 | |
| #define VFS_DEV_READ	2001
 | |
| #define	VFS_DEV_WRITE	2002
 | |
| #define VFS_DEV_SCATTER	2003
 | |
| #define VFS_DEV_GATHER	2004
 | |
| #define VFS_DEV_IOCTL	2005
 | |
| #define VFS_DEV_SELECT	2006
 |