On 7/15/20 7:45 AM, Coly Li wrote:
This patch adds comments to mark each member of struct cache_sb_disk,
it is helpful to understand the bcache superblock on-disk layout.
Signed-off-by: Coly Li <colyli@xxxxxxx>
---
include/uapi/linux/bcache.h | 39 +++++++++++++++++++------------------
1 file changed, 20 insertions(+), 19 deletions(-)
diff --git a/include/uapi/linux/bcache.h b/include/uapi/linux/bcache.h
index 9a1965c6c3d0..afbd1b56a661 100644
--- a/include/uapi/linux/bcache.h
+++ b/include/uapi/linux/bcache.h
@@ -158,33 +158,33 @@ static inline struct bkey *bkey_idx(const struct bkey *k, unsigned int nr_keys)
#define BDEV_DATA_START_DEFAULT 16 /* sectors */
struct cache_sb_disk {
- __le64 csum;
- __le64 offset; /* sector where this sb was written */
- __le64 version;
+/*000*/ __le64 csum;
+/*008*/ __le64 offset; /* sector where this sb was written */
+/*010*/ __le64 version;
- __u8 magic[16];
+/*018*/ __u8 magic[16];
- __u8 uuid[16];
+/*028*/ __u8 uuid[16];
union {
- __u8 set_uuid[16];
+/*038*/ __u8 set_uuid[16];
__le64 set_magic;
};
- __u8 label[SB_LABEL_SIZE];
+/*048*/ __u8 label[SB_LABEL_SIZE];
- __le64 flags;
- __le64 seq;
- __le64 pad[8];
+/*068*/ __le64 flags;
+/*070*/ __le64 seq;
+/*078*/ __le64 pad[8];
union {
struct {
/* Cache devices */
- __le64 nbuckets; /* device size */
+/*0b8*/ __le64 nbuckets; /* device size */
- __le16 block_size; /* sectors */
- __le16 bucket_size; /* sectors */
+/*0c0*/ __le16 block_size; /* sectors */
+/*0c2*/ __le16 bucket_size; /* sectors */
- __le16 nr_in_set;
- __le16 nr_this_dev;
+/*0c4*/ __le16 nr_in_set;
+/*0c6*/ __le16 nr_this_dev;
};
struct {
/* Backing devices */
@@ -198,14 +198,15 @@ struct cache_sb_disk {
};
};
- __le32 last_mount; /* time overflow in y2106 */
+/*0c8*/ __le32 last_mount; /* time overflow in y2106 */
- __le16 first_bucket;
+/*0cc*/ __le16 first_bucket;
union {
- __le16 njournal_buckets;
+/*0ce*/ __le16 njournal_buckets;
__le16 keys;
};
- __le64 d[SB_JOURNAL_BUCKETS]; /* journal buckets */
+/*0d0*/ __le64 d[SB_JOURNAL_BUCKETS]; /* journal buckets */
+/*8d0*/
};
struct cache_sb {
Common practice is to place comments at the end; please don't use the
start of the line here.
Cheers,
Hannes
--
Dr. Hannes Reinecke Teamlead Storage & Networking
hare@xxxxxxx +49 911 74053 688
SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer