Import 2.3.25pre1
[davej-history.git] / include / linux / udf_fs_sb.h
blob87635c41148f647b819d52cb9a110c70885129eb
1 /*
2 * udf_fs_sb.h
3 *
4 * This include file is for the Linux kernel/module.
6 * CONTACTS
7 * E-mail regarding any portion of the Linux UDF file system should be
8 * directed to the development team mailing list (run by majordomo):
9 * linux_udf@hootie.lvld.hp.com
11 * COPYRIGHT
12 * This file is distributed under the terms of the GNU General Public
13 * License (GPL). Copies of the GPL can be obtained from:
14 * ftp://prep.ai.mit.edu/pub/gnu/GPL
15 * Each contributing author retains all rights to their own work.
18 #if !defined(_LINUX_UDF_FS_SB_H)
19 #define _LINUX_UDF_FS_SB_H
21 #pragma pack(1)
23 #define UDF_MAX_BLOCK_LOADED 8
25 #define UDF_TYPE1_MAP15 0x1511U
26 #define UDF_VIRTUAL_MAP15 0x1512U
27 #define UDF_VIRTUAL_MAP20 0x2012U
28 #define UDF_SPARABLE_MAP15 0x1522U
30 struct udf_sparing_data
32 __u32 s_spar_loc;
33 __u16 s_spar_plen;
36 struct udf_virtual_data
38 __u32 s_num_entries;
39 __u16 s_start_offset;
42 struct udf_part_map
44 __u32 s_uspace_bitmap;
45 __u32 s_partition_root;
46 __u32 s_partition_len;
47 __u16 s_partition_type;
48 __u16 s_partition_num;
49 union
51 struct udf_sparing_data s_sparing;
52 struct udf_virtual_data s_virtual;
53 } s_type_specific;
54 __u16 s_volumeseqnum;
57 #pragma pack()
59 struct udf_sb_info
61 struct udf_part_map *s_partmaps;
62 __u8 s_volident[32];
64 /* Overall info */
65 __u16 s_partitions;
66 __u16 s_partition;
68 /* Sector headers */
69 __u32 s_session;
70 __u32 s_anchor[4];
71 __u32 s_lastblock;
73 struct buffer_head *s_lvidbh;
75 lb_addr s_location;
77 __u16 s_loaded_block_bitmaps;
78 __u32 s_block_bitmap_number[UDF_MAX_BLOCK_LOADED];
79 struct buffer_head *s_block_bitmap[UDF_MAX_BLOCK_LOADED];
81 /* Default permissions */
82 mode_t s_umask;
83 gid_t s_gid;
84 uid_t s_uid;
86 /* Root Info */
87 time_t s_recordtime;
89 /* Fileset Info */
90 __u16 s_serialnum;
92 /* Character Mapping Info */
93 struct nls_table *s_nls_iocharset;
94 __u8 s_utf8;
96 /* Miscellaneous flags */
97 __u32 s_flags;
99 /* VAT inode */
100 struct inode *s_vat;
102 #if LINUX_VERSION_CODE < 0x020206
103 int s_rename_lock;
104 struct wait_queue * s_rename_wait;
105 #endif
108 #endif /* !defined(_LINUX_UDF_FS_SB_H) */