diff options
Diffstat (limited to 'include/linux/f2fs_fs.h')
-rw-r--r-- | include/linux/f2fs_fs.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/include/linux/f2fs_fs.h b/include/linux/f2fs_fs.h index 43e98d30d2df..58aecb60ea51 100644 --- a/include/linux/f2fs_fs.h +++ b/include/linux/f2fs_fs.h | |||
@@ -117,6 +117,7 @@ struct f2fs_super_block { | |||
117 | /* | 117 | /* |
118 | * For checkpoint | 118 | * For checkpoint |
119 | */ | 119 | */ |
120 | #define CP_NOCRC_RECOVERY_FLAG 0x00000200 | ||
120 | #define CP_TRIMMED_FLAG 0x00000100 | 121 | #define CP_TRIMMED_FLAG 0x00000100 |
121 | #define CP_NAT_BITS_FLAG 0x00000080 | 122 | #define CP_NAT_BITS_FLAG 0x00000080 |
122 | #define CP_CRC_RECOVERY_FLAG 0x00000040 | 123 | #define CP_CRC_RECOVERY_FLAG 0x00000040 |
@@ -212,6 +213,7 @@ struct f2fs_extent { | |||
212 | #define F2FS_DATA_EXIST 0x08 /* file inline data exist flag */ | 213 | #define F2FS_DATA_EXIST 0x08 /* file inline data exist flag */ |
213 | #define F2FS_INLINE_DOTS 0x10 /* file having implicit dot dentries */ | 214 | #define F2FS_INLINE_DOTS 0x10 /* file having implicit dot dentries */ |
214 | #define F2FS_EXTRA_ATTR 0x20 /* file having extra attribute */ | 215 | #define F2FS_EXTRA_ATTR 0x20 /* file having extra attribute */ |
216 | #define F2FS_PIN_FILE 0x40 /* file should not be gced */ | ||
215 | 217 | ||
216 | struct f2fs_inode { | 218 | struct f2fs_inode { |
217 | __le16 i_mode; /* file mode */ | 219 | __le16 i_mode; /* file mode */ |
@@ -229,7 +231,13 @@ struct f2fs_inode { | |||
229 | __le32 i_ctime_nsec; /* change time in nano scale */ | 231 | __le32 i_ctime_nsec; /* change time in nano scale */ |
230 | __le32 i_mtime_nsec; /* modification time in nano scale */ | 232 | __le32 i_mtime_nsec; /* modification time in nano scale */ |
231 | __le32 i_generation; /* file version (for NFS) */ | 233 | __le32 i_generation; /* file version (for NFS) */ |
232 | __le32 i_current_depth; /* only for directory depth */ | 234 | union { |
235 | __le32 i_current_depth; /* only for directory depth */ | ||
236 | __le16 i_gc_failures; /* | ||
237 | * # of gc failures on pinned file. | ||
238 | * only for regular files. | ||
239 | */ | ||
240 | }; | ||
233 | __le32 i_xattr_nid; /* nid to save xattr */ | 241 | __le32 i_xattr_nid; /* nid to save xattr */ |
234 | __le32 i_flags; /* file attributes */ | 242 | __le32 i_flags; /* file attributes */ |
235 | __le32 i_pino; /* parent inode number */ | 243 | __le32 i_pino; /* parent inode number */ |
@@ -245,8 +253,10 @@ struct f2fs_inode { | |||
245 | __le16 i_inline_xattr_size; /* inline xattr size, unit: 4 bytes */ | 253 | __le16 i_inline_xattr_size; /* inline xattr size, unit: 4 bytes */ |
246 | __le32 i_projid; /* project id */ | 254 | __le32 i_projid; /* project id */ |
247 | __le32 i_inode_checksum;/* inode meta checksum */ | 255 | __le32 i_inode_checksum;/* inode meta checksum */ |
256 | __le64 i_crtime; /* creation time */ | ||
257 | __le32 i_crtime_nsec; /* creation time in nano scale */ | ||
248 | __le32 i_extra_end[0]; /* for attribute size calculation */ | 258 | __le32 i_extra_end[0]; /* for attribute size calculation */ |
249 | }; | 259 | } __packed; |
250 | __le32 i_addr[DEF_ADDRS_PER_INODE]; /* Pointers to data blocks */ | 260 | __le32 i_addr[DEF_ADDRS_PER_INODE]; /* Pointers to data blocks */ |
251 | }; | 261 | }; |
252 | __le32 i_nid[DEF_NIDS_PER_INODE]; /* direct(2), indirect(2), | 262 | __le32 i_nid[DEF_NIDS_PER_INODE]; /* direct(2), indirect(2), |