5.3.2.1.4. Super Block Structure
struct super_block {
  struct list_head        s_list;         /* Keep this first */
  dev_t                   s_dev;          /* search index; _not_ kdev_t */

  unsigned long           s_blocksize;
  unsigned long           s_old_blocksize;
  unsigned char           s_blocksize_bits;
  unsigned char           s_dirt;
  unsigned long long      s_maxbytes;     /* Max file size */

  struct file_system_type *s_type;
  struct super_operations *s_op;
  struct dquot_operations *dq_op;
  struct quotactl_ops     *s_qcop;
  struct export_operations *s_export_op;

  unsigned long           s_flags;
  unsigned long           s_magic;
  struct dentry           *s_root;
  struct rw_semaphore     s_umount;
  struct semaphore        s_lock;
  int                     s_count;
  int                     s_syncing;
  int                     s_need_sync_fs;
  atomic_t                s_active;
  void                    *s_security;
  struct xattr_handler    **s_xattr;

  struct list_head        s_inodes;       /* all inodes */
  struct list_head        s_dirty;        /* dirty inodes */
  struct list_head        s_io;           /* parked for writeback */
  struct hlist_head       s_anon;         /* anonymous dentries for (nfs) exporting */
  struct list_head        s_files;

  struct block_device     *s_bdev;
  struct list_head        s_instances;
  struct quota_info       s_dquot;        /* Diskquota specific options */

  int                     s_frozen;
  wait_queue_head_t       s_wait_unfrozen;

  char s_id[32];                          /* Informational name */

  void                    *s_fs_info;     /* Filesystem private info */

  /*
   * The next field is for VFS *only*. No filesystems have any business
   * even looking at it. You had been warned.
   */
  struct semaphore s_vfs_rename_sem;      /* Kludge */

  /* Granuality of c/m/atime in ns.
     Cannot be worse than a second */
  u32                s_time_gran;
};