affs_fs_sb.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:2k
- #ifndef _AFFS_FS_SB
- #define _AFFS_FS_SB
- /*
- * super-block data in memory
- *
- * Block numbers are adjusted for their actual size
- *
- */
- struct affs_bm_info {
- u32 bm_key; /* Disk block number */
- u32 bm_free; /* Free blocks in here */
- };
- struct affs_sb_info {
- int s_partition_size; /* Partition size in blocks. */
- int s_reserved; /* Number of reserved blocks. */
- //u32 s_blksize; /* Initial device blksize */
- u32 s_data_blksize; /* size of the data block w/o header */
- u32 s_root_block; /* FFS root block number. */
- int s_hashsize; /* Size of hash table. */
- unsigned long s_flags; /* See below. */
- uid_t s_uid; /* uid to override */
- gid_t s_gid; /* gid to override */
- umode_t s_mode; /* mode to override */
- struct buffer_head *s_root_bh; /* Cached root block. */
- struct semaphore s_bmlock; /* Protects bitmap access. */
- struct affs_bm_info *s_bitmap; /* Bitmap infos. */
- u32 s_bmap_count; /* # of bitmap blocks. */
- u32 s_bmap_bits; /* # of bits in one bitmap blocks */
- u32 s_last_bmap;
- struct buffer_head *s_bmap_bh;
- char *s_prefix; /* Prefix for volumes and assigns. */
- int s_prefix_len; /* Length of prefix. */
- char s_volume[32]; /* Volume prefix for absolute symlinks. */
- };
- #define SF_INTL 0x0001 /* International filesystem. */
- #define SF_BM_VALID 0x0002 /* Bitmap is valid. */
- #define SF_IMMUTABLE 0x0004 /* Protection bits cannot be changed */
- #define SF_QUIET 0x0008 /* chmod errors will be not reported */
- #define SF_SETUID 0x0010 /* Ignore Amiga uid */
- #define SF_SETGID 0x0020 /* Ignore Amiga gid */
- #define SF_SETMODE 0x0040 /* Ignore Amiga protection bits */
- #define SF_MUFS 0x0100 /* Use MUFS uid/gid mapping */
- #define SF_OFS 0x0200 /* Old filesystem */
- #define SF_PREFIX 0x0400 /* Buffer for prefix is allocated */
- #define SF_VERBOSE 0x0800 /* Talk about fs when mounting */
- #define SF_READONLY 0x1000 /* Don't allow to remount rw */
- /* short cut to get to the affs specific sb data */
- #define AFFS_SB (&sb->u.affs_sb)
- #endif