Lines Matching +full:00 +full:- +full:40 +full:bit
1 /* SPDX-License-Identifier: GPL-2.0-only */
5 * On-disk structures for OCFS2.
59 ( OCFS2_SB(sb)->s_feature_compat & (mask) )
61 ( OCFS2_SB(sb)->s_feature_ro_compat & (mask) )
63 ( OCFS2_SB(sb)->s_feature_incompat & (mask) )
65 OCFS2_SB(sb)->s_feature_compat |= (mask)
67 OCFS2_SB(sb)->s_feature_ro_compat |= (mask)
69 OCFS2_SB(sb)->s_feature_incompat |= (mask)
71 OCFS2_SB(sb)->s_feature_compat &= ~(mask)
73 OCFS2_SB(sb)->s_feature_ro_compat &= ~(mask)
75 OCFS2_SB(sb)->s_feature_incompat &= ~(mask)
96 * Heartbeat-only devices are missing journals and other files. The
105 * after an aborted run without fsck-ing.
109 /* Used to denote a non-clustered volume */
112 /* Support for sparse allocation in b-trees */
119 * fsck-ing.
159 * Incompat bit to indicate useable clusterinfo with stackflags for all
160 * cluster stacks (userspace adnd o2cb). If this bit is set,
252 /* End compression flags --- maybe not all used */
254 #define OCFS2_INDEX_FL FS_INDEX_FL /* hash-indexed directory */
291 #define OCFS2_INVALID_SLOT ((u16)-1)
348 (NUM_SYSTEM_INODES - OCFS2_FIRST_LOCAL_SYSTEM_INODE)
363 /* Slot-specific system inodes (one copy per slot) */
385 #define OCFS2_DIR_ROUND (OCFS2_DIR_PAD - 1)
393 #define OCFS2_DX_LINK_MAX ((1U << 31) - 1U)
401 #define OCFS2_RAW_SB(dinode) (&((dinode)->id2.i_super))
409 /*00*/ __le32 bc_crc32e; /* 802.3 Ethernet II CRC32 */
410 __le16 bc_ecc; /* Single-error-correction parity vector.
427 /*00*/ __le32 e_cpos; /* Offset into the file, in clusters */
459 /*00*/ __le16 l_tree_depth; /* Extent tree depth from this
464 used - tree_depth is never that big.
480 /*00*/ __le16 cl_cpg; /* Clusters per Block Group */
494 /*00*/ __le16 tl_count; /* Total records in this log */
505 /*00*/ __u8 h_signature[8]; /* Signature for verification */
509 __le16 h_suballoc_bit; /* Bit offset in suballocator
521 /* Actual on-disk size is one block */
527 * value -1 (0xFFFF) is OCFS2_INVALID_SLOT. This marks a slot empty.
530 /*00*/ DECLARE_FLEX_ARRAY(__le16, sm_slots);
532 * Actual on-disk size is one block. OCFS2_MAX_SLOTS is 255,
538 /*00*/ __u8 es_valid;
551 /*00*/ DECLARE_FLEX_ARRAY(struct ocfs2_extended_slot, se_slots);
559 * ci_stackflags is only valid if the incompat bit
563 /*00*/ __u8 ci_stack[OCFS2_STACK_LABEL_LEN];
583 /*00*/ __le16 s_major_rev_level;
594 __le32 s_feature_ro_compat; /* Readonly-compatible feature set */
601 /*40*/ __le16 s_max_slots; /* Max number of simultaneous mounts
608 /*90*/ __u8 s_uuid[OCFS2_VOL_UUID_LEN]; /* 128-bit uuid */
615 __le32 s_dx_seed[3]; /* seed[0-2] for dx dir hash.
637 /*00*/ __le32 la_bm_off; /* Starting bit offset in main bitmap */
645 * Data-in-inode header. This is only used if i_dyn_features has
650 /*00*/ __le16 id_count; /* Number of bytes that can be used
661 /*00*/ __u8 i_signature[8]; /* Signature for validation */
665 __le16 i_suballoc_bit; /* Bit offset in suballocator
678 /*40*/ __le64 i_mtime; /* Modification time */
683 /*60*/ __le32 i_fs_generation; /* Generation per fs-instance */
704 64bit union */
732 /* Actual on-disk size is one block */
736 * On-disk directory entry structure for OCFS2
738 * Packed as this structure could be accessed unaligned on 64-bit platforms
741 /*00*/ __le64 inode; /* Inode number */
746 /* Actual on-disk length specified by rec_len */
750 * Per-block record for the unindexed directory btree. This is carefully
758 /*00*/ __le64 db_compat_inode; /* Always zero. Was inode */
774 /*40*/
811 * start-of-list pointers.
818 __le16 dr_suballoc_bit; /* Bit offset in suballocator
846 struct ocfs2_dx_entry_list dr_entries; /* In-root-block list of
878 /*00*/ __u8 bg_signature[8]; /* Signature for validation */
894 /*40*/ union {
903 * discontiguous group is signified by a non-zero
904 * bg_list->l_next_free_rec. Only block groups
916 /* Actual on-disk size is one block */
920 /*00*/ __le64 r_cpos; /* Physical offset, in clusters */
931 /*00*/ __le16 rl_count; /* Maximum number of entries possible
941 /*00*/ __u8 rf_signature[8]; /* Signature for verification */
944 __le16 rf_suballoc_bit; /* Bit offset in suballocator
958 /*40*/ __le32 rf_generation; /* generation number. all be the same
974 /* Actual on-disk size is one block */
993 * type and the highest bit indicates whether
1029 * b-tree like file data. The xattr value root points to this structure.
1032 /*00*/ __le32 xr_clusters; /* clusters covered by xattr value. */
1042 * attributes will be organized and stored in an indexed-btree.
1045 /*00*/ __le32 xt_clusters; /* clusters covered by xattr. */
1065 /*00*/ __u8 xb_signature[8]; /* Signature for verification */
1068 __le16 xb_suballoc_bit; /* Bit offset in suballocator
1096 xe->xe_type |= OCFS2_XATTR_ENTRY_LOCAL; in ocfs2_xattr_set_local()
1098 xe->xe_type &= ~OCFS2_XATTR_ENTRY_LOCAL; in ocfs2_xattr_set_local()
1103 return xe->xe_type & OCFS2_XATTR_ENTRY_LOCAL; in ocfs2_xattr_is_local()
1108 xe->xe_type |= type & OCFS2_XATTR_TYPE_MASK; in ocfs2_xattr_set_type()
1113 return xe->xe_type & OCFS2_XATTR_TYPE_MASK; in ocfs2_xattr_get_type()
1148 /*00*/ __le32 dqi_bgrace; /* Grace time for space softlimit excess */
1161 /*00*/ __le32 dqb_id; /* ID the structure belongs to */
1170 /*40*/ __le64 dqb_itime; /* time limit for excessive inode use */
1176 * On-disk structures for local quota file
1214 /*00*/ __le64 dqb_id; /* id this quota applies to */
1225 /*00*/ struct ocfs2_block_check dq_check; /* Error checking */
1233 ptr += blocksize - OCFS2_QBLK_RESERVED_SPACE; in ocfs2_block_dqtrailer()
1241 return sb->s_blocksize - in ocfs2_fast_symlink_chars()
1248 unsigned int xattrsize = le16_to_cpu(di->i_xattr_inline_size); in ocfs2_max_inline_data_with_xattr()
1250 if (le16_to_cpu(di->i_dyn_features) & OCFS2_INLINE_XATTR_FL) in ocfs2_max_inline_data_with_xattr()
1251 return sb->s_blocksize - in ocfs2_max_inline_data_with_xattr()
1252 offsetof(struct ocfs2_dinode, id2.i_data.id_data) - in ocfs2_max_inline_data_with_xattr()
1255 return sb->s_blocksize - in ocfs2_max_inline_data_with_xattr()
1263 size = sb->s_blocksize - in ocfs2_extent_recs_per_inode()
1274 unsigned int xattrsize = le16_to_cpu(di->i_xattr_inline_size); in ocfs2_extent_recs_per_inode_with_xattr()
1276 if (le16_to_cpu(di->i_dyn_features) & OCFS2_INLINE_XATTR_FL) in ocfs2_extent_recs_per_inode_with_xattr()
1277 size = sb->s_blocksize - in ocfs2_extent_recs_per_inode_with_xattr()
1278 offsetof(struct ocfs2_dinode, id2.i_list.l_recs) - in ocfs2_extent_recs_per_inode_with_xattr()
1281 size = sb->s_blocksize - in ocfs2_extent_recs_per_inode_with_xattr()
1291 size = sb->s_blocksize - in ocfs2_extent_recs_per_dx_root()
1301 size = sb->s_blocksize - in ocfs2_chain_recs_per_inode()
1311 size = sb->s_blocksize - in ocfs2_extent_recs_per_eb()
1321 size = sb->s_blocksize - in ocfs2_extent_recs_per_gd()
1331 size = sb->s_blocksize - in ocfs2_dx_entries_per_leaf()
1341 size = sb->s_blocksize - in ocfs2_dx_entries_per_root()
1351 size = sb->s_blocksize - in ocfs2_local_alloc_size()
1361 int size = sb->s_blocksize - in ocfs2_group_bitmap_size()
1368 * bg_size as-is unless discontig_bg is enabled. in ocfs2_group_bitmap_size()
1381 size = sb->s_blocksize - in ocfs2_truncate_recs_per_inode()
1393 offset >>= sb->s_blocksize_bits; in ocfs2_backup_super_blkno()
1405 size = sb->s_blocksize - in ocfs2_xattr_recs_per_xb()
1416 size = sb->s_blocksize - in ocfs2_extent_recs_per_rb()
1426 size = sb->s_blocksize - in ocfs2_refcount_recs_per_rb()
1435 return le64_to_cpu(rec->r_cpos) & OCFS2_32BIT_POS_MASK; in ocfs2_get_ref_rec_low_cpos()
1440 return blocksize - offsetof(struct ocfs2_dinode, id2.i_symlink); in ocfs2_fast_symlink_chars()
1446 if (di && (di->i_dyn_features & OCFS2_INLINE_XATTR_FL)) in ocfs2_max_inline_data_with_xattr()
1447 return blocksize - in ocfs2_max_inline_data_with_xattr()
1448 offsetof(struct ocfs2_dinode, id2.i_data.id_data) - in ocfs2_max_inline_data_with_xattr()
1449 di->i_xattr_inline_size; in ocfs2_max_inline_data_with_xattr()
1451 return blocksize - in ocfs2_max_inline_data_with_xattr()
1459 size = blocksize - in ocfs2_extent_recs_per_inode()
1469 size = blocksize - in ocfs2_chain_recs_per_inode()
1479 size = blocksize - in ocfs2_extent_recs_per_eb()
1489 size = blocksize - in ocfs2_extent_recs_per_gd()
1499 size = blocksize - in ocfs2_local_alloc_size()
1509 int size = sb->s_blocksize - in ocfs2_group_bitmap_size()
1516 * bg_size as-is unless discontig_bg is enabled. in ocfs2_group_bitmap_size()
1529 size = blocksize - in ocfs2_truncate_recs_per_inode()
1552 size = blocksize - in ocfs2_xattr_recs_per_xb()
1591 de->file_type = fs_umode_to_ftype(mode); in ocfs2_set_de_type()
1597 le16_to_cpu(gd->bg_size)) != in ocfs2_gd_is_discontig()
1604 if (!gd->bg_list.l_next_free_rec) in ocfs2_gd_is_discontig()