Commit 9cbc0123 authored by Joel Becker's avatar Joel Becker Committed by Tao Ma
Browse files

ocfs2: Add suballoc_loc to metadata blocks.



We need a suballoc_loc field on any suballocated block.  Define them.

Signed-off-by: default avatarJoel Becker <joel.becker@oracle.com>
parent 7d1fe093
Loading
Loading
Loading
Loading
+24 −5
Original line number Diff line number Diff line
@@ -507,7 +507,10 @@ struct ocfs2_extent_block
					   block group */
	__le32 h_fs_generation;		/* Must match super block */
	__le64 h_blkno;			/* Offset on disk, in blocks */
/*20*/	__le64 h_reserved3;
/*20*/	__le64 h_suballoc_loc;		/* Suballocator block group this
					   eb belongs to.  Only valid
					   if allocated from a
					   discontiguous block group */
	__le64 h_next_leaf_blk;		/* Offset on disk, in blocks,
					   of next leaf header pointing
					   to data */
@@ -674,7 +677,11 @@ struct ocfs2_dinode {
/*80*/	struct ocfs2_block_check i_check;	/* Error checking */
/*88*/	__le64 i_dx_root;		/* Pointer to dir index root block */
/*90*/	__le64 i_refcount_loc;
	__le64 i_reserved2[4];
	__le64 i_suballoc_loc;		/* Suballocator block group this
					   inode belongs to.  Only valid
					   if allocated from a
					   discontiguous block group */
/*A0*/	__le64 i_reserved2[3];
/*B8*/	union {
		__le64 i_pad1;		/* Generic way to refer to this
					   64bit union */
@@ -809,7 +816,12 @@ struct ocfs2_dx_root_block {
	__le32		dr_reserved2;
	__le64		dr_free_blk;		/* Pointer to head of free
						 * unindexed block list. */
	__le64		dr_reserved3[15];
	__le64		dr_suballoc_loc;	/* Suballocator block group
						   this root belongs to.
						   Only valid if allocated
						   from a discontiguous
						   block group */
	__le64		dr_reserved3[14];
	union {
		struct ocfs2_extent_list dr_list; /* Keep this aligned to 128
						   * bits for maximum space
@@ -929,7 +941,11 @@ struct ocfs2_refcount_block {
/*40*/	__le32 rf_generation;		/* generation number. all be the same
					 * for the same refcount tree. */
	__le32 rf_reserved0;
	__le64 rf_reserved1[7];
	__le64 rf_suballoc_loc;		/* Suballocator block group this
					   refcount block belongs to. Only
					   valid if allocated from a
					   discontiguous block group */
/*50*/	__le64 rf_reserved1[6];
/*80*/	union {
		struct ocfs2_refcount_list rf_records;  /* List of refcount
							  records */
@@ -1041,7 +1057,10 @@ struct ocfs2_xattr_block {
					real xattr or a xattr tree. */
	__le16	xb_reserved0;
	__le32  xb_reserved1;
	__le64	xb_reserved2;
	__le64	xb_suballoc_loc;	/* Suballocator block group this
					   xattr block belongs to. Only
					   valid if allocated from a
					   discontiguous block group */
/*30*/	union {
		struct ocfs2_xattr_header xb_header; /* xattr header if this
							block contains xattr */