Root/
1 | /* |
2 | * include/linux/bfs_fs.h - BFS data structures on disk. |
3 | * Copyright (C) 1999 Tigran Aivazian <tigran@veritas.com> |
4 | */ |
5 | |
6 | #ifndef _LINUX_BFS_FS_H |
7 | #define _LINUX_BFS_FS_H |
8 | |
9 | #include <linux/types.h> |
10 | |
11 | #define BFS_BSIZE_BITS 9 |
12 | #define BFS_BSIZE (1<<BFS_BSIZE_BITS) |
13 | |
14 | #define BFS_MAGIC 0x1BADFACE |
15 | #define BFS_ROOT_INO 2 |
16 | #define BFS_INODES_PER_BLOCK 8 |
17 | |
18 | /* SVR4 vnode type values (bfs_inode->i_vtype) */ |
19 | #define BFS_VDIR 2L |
20 | #define BFS_VREG 1L |
21 | |
22 | /* BFS inode layout on disk */ |
23 | struct bfs_inode { |
24 | __le16 i_ino; |
25 | __u16 i_unused; |
26 | __le32 i_sblock; |
27 | __le32 i_eblock; |
28 | __le32 i_eoffset; |
29 | __le32 i_vtype; |
30 | __le32 i_mode; |
31 | __le32 i_uid; |
32 | __le32 i_gid; |
33 | __le32 i_nlink; |
34 | __le32 i_atime; |
35 | __le32 i_mtime; |
36 | __le32 i_ctime; |
37 | __u32 i_padding[4]; |
38 | }; |
39 | |
40 | #define BFS_NAMELEN 14 |
41 | #define BFS_DIRENT_SIZE 16 |
42 | #define BFS_DIRS_PER_BLOCK 32 |
43 | |
44 | struct bfs_dirent { |
45 | __le16 ino; |
46 | char name[BFS_NAMELEN]; |
47 | }; |
48 | |
49 | /* BFS superblock layout on disk */ |
50 | struct bfs_super_block { |
51 | __le32 s_magic; |
52 | __le32 s_start; |
53 | __le32 s_end; |
54 | __le32 s_from; |
55 | __le32 s_to; |
56 | __s32 s_bfrom; |
57 | __s32 s_bto; |
58 | char s_fsname[6]; |
59 | char s_volume[6]; |
60 | __u32 s_padding[118]; |
61 | }; |
62 | |
63 | |
64 | #define BFS_OFF2INO(offset) \ |
65 | ((((offset) - BFS_BSIZE) / sizeof(struct bfs_inode)) + BFS_ROOT_INO) |
66 | |
67 | #define BFS_INO2OFF(ino) \ |
68 | ((__u32)(((ino) - BFS_ROOT_INO) * sizeof(struct bfs_inode)) + BFS_BSIZE) |
69 | #define BFS_NZFILESIZE(ip) \ |
70 | ((le32_to_cpu((ip)->i_eoffset) + 1) - le32_to_cpu((ip)->i_sblock) * BFS_BSIZE) |
71 | |
72 | #define BFS_FILESIZE(ip) \ |
73 | ((ip)->i_sblock == 0 ? 0 : BFS_NZFILESIZE(ip)) |
74 | |
75 | #define BFS_FILEBLOCKS(ip) \ |
76 | ((ip)->i_sblock == 0 ? 0 : (le32_to_cpu((ip)->i_eblock) + 1) - le32_to_cpu((ip)->i_sblock)) |
77 | #define BFS_UNCLEAN(bfs_sb, sb) \ |
78 | ((le32_to_cpu(bfs_sb->s_from) != -1) && (le32_to_cpu(bfs_sb->s_to) != -1) && !(sb->s_flags & MS_RDONLY)) |
79 | |
80 | |
81 | #endif /* _LINUX_BFS_FS_H */ |
82 |
Branches:
ben-wpan
ben-wpan-stefan
javiroman/ks7010
jz-2.6.34
jz-2.6.34-rc5
jz-2.6.34-rc6
jz-2.6.34-rc7
jz-2.6.35
jz-2.6.36
jz-2.6.37
jz-2.6.38
jz-2.6.39
jz-3.0
jz-3.1
jz-3.11
jz-3.12
jz-3.13
jz-3.15
jz-3.16
jz-3.18-dt
jz-3.2
jz-3.3
jz-3.4
jz-3.5
jz-3.6
jz-3.6-rc2-pwm
jz-3.9
jz-3.9-clk
jz-3.9-rc8
jz47xx
jz47xx-2.6.38
master
Tags:
od-2011-09-04
od-2011-09-18
v2.6.34-rc5
v2.6.34-rc6
v2.6.34-rc7
v3.9