OSDN Git Service

Check in released NDK version r4.
[android-x86/prebuilt.git] / ndk / android-ndk-r4 / darwin / platforms / android-8 / arch-arm / usr / include / linux / jbd.h
1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ****************************************************************************
11  ****************************************************************************/
12 #ifndef _LINUX_JBD_H
13 #define _LINUX_JBD_H
14
15 #include "jfs_compat.h"
16 #define JFS_DEBUG
17 #define jfs_debug jbd_debug
18
19 #define journal_oom_retry 1
20
21 #undef JBD_PARANOID_IOFAIL
22
23 #define JBD_DEFAULT_MAX_COMMIT_AGE 5
24
25 #define jbd_debug(f, a...)  
26
27 #define jbd_kmalloc(size, flags)   __jbd_kmalloc(__FUNCTION__, (size), (flags), journal_oom_retry)
28 #define jbd_rep_kmalloc(size, flags)   __jbd_kmalloc(__FUNCTION__, (size), (flags), 1)
29
30 #define JFS_MIN_JOURNAL_BLOCKS 1024
31
32 #define JFS_MAGIC_NUMBER 0xc03b3998U  
33
34 #define JFS_DESCRIPTOR_BLOCK 1
35 #define JFS_COMMIT_BLOCK 2
36 #define JFS_SUPERBLOCK_V1 3
37 #define JFS_SUPERBLOCK_V2 4
38 #define JFS_REVOKE_BLOCK 5
39
40 typedef struct journal_header_s
41 {
42  __be32 h_magic;
43  __be32 h_blocktype;
44  __be32 h_sequence;
45 } journal_header_t;
46
47 typedef struct journal_block_tag_s
48 {
49  __be32 t_blocknr;
50  __be32 t_flags;
51 } journal_block_tag_t;
52
53 typedef struct journal_revoke_header_s
54 {
55  journal_header_t r_header;
56  __be32 r_count;
57 } journal_revoke_header_t;
58
59 #define JFS_FLAG_ESCAPE 1  
60 #define JFS_FLAG_SAME_UUID 2  
61 #define JFS_FLAG_DELETED 4  
62 #define JFS_FLAG_LAST_TAG 8  
63
64 typedef struct journal_superblock_s
65 {
66
67  journal_header_t s_header;
68
69  __be32 s_blocksize;
70  __be32 s_maxlen;
71  __be32 s_first;
72
73  __be32 s_sequence;
74  __be32 s_start;
75
76  __be32 s_errno;
77
78  __be32 s_feature_compat;
79  __be32 s_feature_incompat;
80  __be32 s_feature_ro_compat;
81
82  __u8 s_uuid[16];
83
84  __be32 s_nr_users;
85
86  __be32 s_dynsuper;
87
88  __be32 s_max_transaction;
89  __be32 s_max_trans_data;
90
91  __u32 s_padding[44];
92
93  __u8 s_users[16*48];
94
95 } journal_superblock_t;
96
97 #define JFS_HAS_COMPAT_FEATURE(j,mask)   ((j)->j_format_version >= 2 &&   ((j)->j_superblock->s_feature_compat & cpu_to_be32((mask))))
98 #define JFS_HAS_RO_COMPAT_FEATURE(j,mask)   ((j)->j_format_version >= 2 &&   ((j)->j_superblock->s_feature_ro_compat & cpu_to_be32((mask))))
99 #define JFS_HAS_INCOMPAT_FEATURE(j,mask)   ((j)->j_format_version >= 2 &&   ((j)->j_superblock->s_feature_incompat & cpu_to_be32((mask))))
100
101 #define JFS_FEATURE_INCOMPAT_REVOKE 0x00000001
102
103 #define JFS_KNOWN_COMPAT_FEATURES 0
104 #define JFS_KNOWN_ROCOMPAT_FEATURES 0
105 #define JFS_KNOWN_INCOMPAT_FEATURES JFS_FEATURE_INCOMPAT_REVOKE
106
107 #define BJ_None 0  
108 #define BJ_SyncData 1  
109 #define BJ_Metadata 2  
110 #define BJ_Forget 3  
111 #define BJ_IO 4  
112 #define BJ_Shadow 5  
113 #define BJ_LogCtl 6  
114 #define BJ_Reserved 7  
115 #define BJ_Locked 8  
116 #define BJ_Types 9
117
118 #endif