ext2_fs_sb.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /*
  2. * linux/include/linux/ext2_fs_sb.h
  3. *
  4. * Copyright (C) 1992, 1993, 1994, 1995
  5. * Remy Card (card@masi.ibp.fr)
  6. * Laboratoire MASI - Institut Blaise Pascal
  7. * Universite Pierre et Marie Curie (Paris VI)
  8. *
  9. * from
  10. *
  11. * linux/include/linux/minix_fs_sb.h
  12. *
  13. * Copyright (C) 1991, 1992 Linus Torvalds
  14. */
  15. #ifndef _LINUX_EXT2_FS_SB
  16. #define _LINUX_EXT2_FS_SB
  17. #include <linux/blockgroup_lock.h>
  18. #include <linux/percpu_counter.h>
  19. /*
  20. * second extended-fs super-block data in memory
  21. */
  22. struct ext2_sb_info {
  23. unsigned long s_frag_size; /* Size of a fragment in bytes */
  24. unsigned long s_frags_per_block;/* Number of fragments per block */
  25. unsigned long s_inodes_per_block;/* Number of inodes per block */
  26. unsigned long s_frags_per_group;/* Number of fragments in a group */
  27. unsigned long s_blocks_per_group;/* Number of blocks in a group */
  28. unsigned long s_inodes_per_group;/* Number of inodes in a group */
  29. unsigned long s_itb_per_group; /* Number of inode table blocks per group */
  30. unsigned long s_gdb_count; /* Number of group descriptor blocks */
  31. unsigned long s_desc_per_block; /* Number of group descriptors per block */
  32. unsigned long s_groups_count; /* Number of groups in the fs */
  33. struct buffer_head * s_sbh; /* Buffer containing the super block */
  34. struct ext2_super_block * s_es; /* Pointer to the super block in the buffer */
  35. struct buffer_head ** s_group_desc;
  36. unsigned long s_mount_opt;
  37. uid_t s_resuid;
  38. gid_t s_resgid;
  39. unsigned short s_mount_state;
  40. unsigned short s_pad;
  41. int s_addr_per_block_bits;
  42. int s_desc_per_block_bits;
  43. int s_inode_size;
  44. int s_first_ino;
  45. spinlock_t s_next_gen_lock;
  46. u32 s_next_generation;
  47. unsigned long s_dir_count;
  48. u8 *s_debts;
  49. struct percpu_counter s_freeblocks_counter;
  50. struct percpu_counter s_freeinodes_counter;
  51. struct percpu_counter s_dirs_counter;
  52. struct blockgroup_lock s_blockgroup_lock;
  53. };
  54. #endif /* _LINUX_EXT2_FS_SB */