This source file includes following definitions.
- ext2_image_size
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 #ifndef _LINUX_EXT2_FS_H
18 #define _LINUX_EXT2_FS_H
19
20 #include <linux/types.h>
21 #include <linux/magic.h>
22
23 #define EXT2_NAME_LEN 255
24
25
26
27
28 #define EXT2_LINK_MAX 32000
29
30 #define EXT2_SB_MAGIC_OFFSET 0x38
31 #define EXT2_SB_BLOCKS_OFFSET 0x04
32 #define EXT2_SB_BSIZE_OFFSET 0x18
33
34 static inline u64 ext2_image_size(void *ext2_sb)
35 {
36 __u8 *p = ext2_sb;
37 if (*(__le16 *)(p + EXT2_SB_MAGIC_OFFSET) != cpu_to_le16(EXT2_SUPER_MAGIC))
38 return 0;
39 return (u64)le32_to_cpup((__le32 *)(p + EXT2_SB_BLOCKS_OFFSET)) <<
40 le32_to_cpup((__le32 *)(p + EXT2_SB_BSIZE_OFFSET));
41 }
42
43 #endif