~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/include/linux/affs_fs_sb.h

Version: ~ [ 2.2.5 ] ~ [ 2.4.1 ] ~ [ 2.4.9 ] ~ [ 2.6.17.10 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 #ifndef _AFFS_FS_SB
  2 #define _AFFS_FS_SB
  3 
  4 /*
  5  * super-block data in memory
  6  *
  7  * Block numbers are adjusted for their actual size
  8  *
  9  */
 10 
 11 #define MAX_ZONES               8
 12 #define AFFS_DATA_MIN_FREE      512     /* Number of free blocks in zone for data blocks */
 13 #define AFFS_HDR_MIN_FREE       128     /* Same for header blocks */
 14 #define AFFS_ZONE_SIZE          1024    /* Blocks per alloc zone, must be multiple of 32 */
 15 
 16 struct affs_bm_info {
 17         struct buffer_head *bm_bh;      /* Buffer head if loaded (bm_count > 0) */
 18         s32 bm_firstblk;                /* Block number of first bit in this map */
 19         s32 bm_key;                     /* Disk block number */
 20         int bm_count;                   /* Usage counter */
 21 };
 22 
 23 struct affs_alloc_zone {
 24         short az_size;                  /* Size of this allocation zone in double words */
 25         short az_count;                 /* Number of users */
 26         int az_free;                    /* Free blocks in here (no. of bits) */
 27 };
 28 
 29 struct affs_zone {
 30         unsigned long z_ino;            /* Associated inode number */
 31         struct affs_bm_info *z_bm;      /* Zone lies in this bitmap */
 32         int z_start;                    /* Index of first word in bitmap */
 33         int z_end;                      /* Index of last word in zone + 1 */
 34         int z_az_no;                    /* Zone number */
 35         unsigned long z_lru_time;       /* Time of last usage */
 36 };
 37 
 38 struct affs_sb_info {
 39         int s_partition_size;           /* Partition size in blocks. */
 40         int s_blksize;                  /* Initial device blksize */
 41         s32 s_root_block;               /* FFS root block number. */
 42         int s_hashsize;                 /* Size of hash table. */
 43         unsigned long s_flags;          /* See below. */
 44         s16 s_uid;                      /* uid to override */
 45         s16 s_gid;                      /* gid to override */
 46         umode_t s_mode;                 /* mode to override */
 47         int s_reserved;                 /* Number of reserved blocks. */
 48         struct buffer_head *s_root_bh;  /* Cached root block. */
 49         struct affs_bm_info *s_bitmap;  /* Bitmap infos. */
 50         int s_bm_count;                 /* Number of bitmap blocks. */
 51         int s_nextzone;                 /* Next zone to look for free blocks. */
 52         int s_num_az;                   /* Total number of alloc zones. */
 53         struct affs_zone *s_zones;      /* The zones themselves. */
 54         struct affs_alloc_zone *s_alloc;/* The allocation zones. */
 55         char *s_zonemap;                /* Bitmap for allocation zones. */
 56         char *s_prefix;                 /* Prefix for volumes and assigns. */
 57         int s_prefix_len;               /* Length of prefix. */
 58         char s_volume[32];              /* Volume prefix for absolute symlinks. */
 59 };
 60 
 61 #define SF_INTL         0x0001          /* International filesystem. */
 62 #define SF_BM_VALID     0x0002          /* Bitmap is valid. */
 63 #define SF_IMMUTABLE    0x0004          /* Protection bits cannot be changed */
 64 #define SF_QUIET        0x0008          /* chmod errors will be not reported */
 65 #define SF_SETUID       0x0010          /* Ignore Amiga uid */
 66 #define SF_SETGID       0x0020          /* Ignore Amiga gid */
 67 #define SF_SETMODE      0x0040          /* Ignore Amiga protection bits */
 68 #define SF_MUFS         0x0100          /* Use MUFS uid/gid mapping */
 69 #define SF_OFS          0x0200          /* Old filesystem */
 70 #define SF_PREFIX       0x0400          /* Buffer for prefix is allocated */
 71 #define SF_VERBOSE      0x0800          /* Talk about fs when mounting */
 72 #define SF_READONLY     0x1000          /* Don't allow to remount rw */
 73 
 74 #endif
 75 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.