aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/uapi/linux/gfs2_ondisk.h
diff options
context:
space:
mode:
authorAndrew Price <anprice@redhat.com>2017-12-12 11:40:05 -0600
committerBob Peterson <rpeterso@redhat.com>2017-12-12 11:43:36 -0600
commit166725d96322473305e35f9d580591a01697ab29 (patch)
tree4648063f93f787811392d995736b6672c0d6b2ef /include/uapi/linux/gfs2_ondisk.h
parentgfs2: Add a next-resource-group pointer to resource groups (diff)
downloadwireguard-linux-166725d96322473305e35f9d580591a01697ab29.tar.xz
wireguard-linux-166725d96322473305e35f9d580591a01697ab29.zip
gfs2: Add rindex fields to rgrp headers
Add rg_data0, rg_data and rg_bitbytes to struct gfs2_rgrp. The fields are identical to their counterparts in struct gfs2_rindex and are intended to reduce the use of the rindex. For now the fields are only written back as the in-memory equivalents in struct gfs2_rgrpd are set using values from the rindex. However, they are needed at this point so that userspace can make use of them, allowing a migration away from the rindex over time. The new fields take up previously reserved space which was explicitly zeroed on write so, in clusters with mixed kernels, these fields could get zeroed after being set and this should not be treated as an error. Signed-off-by: Andrew Price <anprice@redhat.com> Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Diffstat (limited to 'include/uapi/linux/gfs2_ondisk.h')
-rw-r--r--include/uapi/linux/gfs2_ondisk.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/uapi/linux/gfs2_ondisk.h b/include/uapi/linux/gfs2_ondisk.h
index da7a30ddef72..648e0cbca574 100644
--- a/include/uapi/linux/gfs2_ondisk.h
+++ b/include/uapi/linux/gfs2_ondisk.h
@@ -192,8 +192,13 @@ struct gfs2_rgrp {
__be32 rg_skip; /* Distance to the next rgrp in fs blocks */
};
__be64 rg_igeneration;
+ /* The following 3 fields are duplicated from gfs2_rindex to reduce
+ reliance on the rindex */
+ __be64 rg_data0; /* First data location */
+ __be32 rg_data; /* Number of data blocks in rgrp */
+ __be32 rg_bitbytes; /* Number of bytes in data bitmaps */
- __u8 rg_reserved[80]; /* Several fields from gfs1 now reserved */
+ __u8 rg_reserved[64]; /* Several fields from gfs1 now reserved */
};
/*