From: Gao Xiang <gaoxiang25@huawei.com> To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, <devel@driverdev.osuosl.org> Cc: LKML <linux-kernel@vger.kernel.org>, <linux-erofs@lists.ozlabs.org>, "Chao Yu" <chao@kernel.org>, Miao Xie <miaoxie@huawei.com>, <weidu.du@huawei.com>, Fang Wei <fangwei1@huawei.com>, Gao Xiang <gaoxiang25@huawei.com> Subject: [PATCH 04/22] staging: erofs: keep up erofs_fs.h with erofs-outofstaging patchset Date: Mon, 29 Jul 2019 14:51:41 +0800 [thread overview] Message-ID: <20190729065159.62378-5-gaoxiang25@huawei.com> (raw) In-Reply-To: <20190729065159.62378-1-gaoxiang25@huawei.com> The main change is to reserve all checksums except for superblock, since it's more useful to do block-based verity for read-only fs. Some comments change as well, which is minor. Signed-off-by: Gao Xiang <gaoxiang25@huawei.com> --- drivers/staging/erofs/erofs_fs.h | 39 ++++++++++++++++---------------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/drivers/staging/erofs/erofs_fs.h b/drivers/staging/erofs/erofs_fs.h index 9cd749d56920..e82e833985e4 100644 --- a/drivers/staging/erofs/erofs_fs.h +++ b/drivers/staging/erofs/erofs_fs.h @@ -96,7 +96,7 @@ struct erofs_inode_v1 { /* 20 */__le32 i_ino; /* only used for 32-bit stat compatibility */ /* 24 */__le16 i_uid; /* 26 */__le16 i_gid; -/* 28 */__le32 i_checksum; +/* 28 */__le32 i_reserved2; } __packed; /* 32 bytes on-disk inode */ @@ -105,14 +105,14 @@ struct erofs_inode_v1 { #define EROFS_INODE_LAYOUT_V2 1 struct erofs_inode_v2 { - __le16 i_advise; +/* 0 */__le16 i_advise; - /* 1 header + n-1 * 4 bytes inline xattr to keep continuity */ - __le16 i_xattr_icount; - __le16 i_mode; - __le16 i_reserved; /* 8 bytes */ - __le64 i_size; /* 16 bytes */ - union { +/* 1 header + n-1 * 4 bytes inline xattr to keep continuity */ +/* 2 */__le16 i_xattr_icount; +/* 4 */__le16 i_mode; +/* 6 */__le16 i_reserved; +/* 8 */__le64 i_size; +/* 16 */union { /* file total compressed blocks for data mapping 1 */ __le32 compressed_blocks; __le32 raw_blkaddr; @@ -122,16 +122,15 @@ struct erofs_inode_v2 { } i_u __packed; /* only used for 32-bit stat compatibility */ - __le32 i_ino; /* 24 bytes */ - - __le32 i_uid; - __le32 i_gid; - __le64 i_ctime; /* 32 bytes */ - __le32 i_ctime_nsec; - __le32 i_nlink; - __u8 i_reserved2[12]; - __le32 i_checksum; /* 64 bytes */ -} __packed; +/* 20 */__le32 i_ino; + +/* 24 */__le32 i_uid; +/* 28 */__le32 i_gid; +/* 32 */__le64 i_ctime; +/* 40 */__le32 i_ctime_nsec; +/* 44 */__le32 i_nlink; +/* 48 */__u8 i_reserved2[16]; +} __packed; /* 64 bytes */ #define EROFS_MAX_SHARED_XATTRS (128) /* h_shared_count between 129 ... 255 are special # */ @@ -149,9 +148,9 @@ struct erofs_inode_v2 { * for read-only fs, no need to introduce h_refcount */ struct erofs_xattr_ibody_header { - __le32 h_checksum; + __le32 h_reserved; __u8 h_shared_count; - __u8 h_reserved[7]; + __u8 h_reserved2[7]; __le32 h_shared_xattrs[0]; /* shared xattr id array */ } __packed; -- 2.17.1
next prev parent reply other threads:[~2019-07-29 6:52 UTC|newest] Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-07-29 6:51 [PATCH 00/22] staging: erofs: updates according to erofs-outofstaging v4 Gao Xiang 2019-07-29 6:51 ` [PATCH 01/22] staging: erofs: update source file headers Gao Xiang 2019-07-30 7:20 ` Greg Kroah-Hartman 2019-07-30 7:26 ` Gao Xiang 2019-07-31 6:36 ` Chao Yu 2019-07-29 6:51 ` [PATCH 02/22] staging: erofs: rename source files for better understanding Gao Xiang 2019-07-31 6:43 ` Chao Yu 2019-07-29 6:51 ` [PATCH 03/22] staging: erofs: fix dummy functions erofs_{get,list}xattr Gao Xiang 2019-07-31 6:44 ` [PATCH 03/22] staging: erofs: fix dummy functions erofs_{get, list}xattr Chao Yu 2019-07-29 6:51 ` Gao Xiang [this message] 2019-07-31 6:46 ` [PATCH 04/22] staging: erofs: keep up erofs_fs.h with erofs-outofstaging patchset Chao Yu 2019-07-29 6:51 ` [PATCH 05/22] staging: erofs: sunset erofs_workstn_{lock,unlock} Gao Xiang 2019-07-31 6:49 ` Chao Yu 2019-07-29 6:51 ` [PATCH 06/22] staging: erofs: clean up internal.h Gao Xiang 2019-07-31 6:53 ` Chao Yu 2019-07-29 6:51 ` [PATCH 07/22] staging: erofs: remove redundant #include "internal.h" Gao Xiang 2019-07-31 7:03 ` Chao Yu 2019-07-31 7:08 ` Gao Xiang 2019-07-31 12:07 ` Chao Yu 2019-07-31 12:54 ` Gao Xiang 2019-08-01 1:31 ` Chao Yu 2019-07-29 6:51 ` [PATCH 08/22] staging: erofs: kill CONFIG_EROFS_FS_IO_MAX_RETRIES Gao Xiang 2019-07-31 7:05 ` Chao Yu 2019-07-31 7:11 ` Gao Xiang 2019-07-31 12:10 ` Chao Yu 2019-07-31 12:55 ` Gao Xiang 2019-07-29 6:51 ` [PATCH 09/22] staging: erofs: clean up shrinker stuffs Gao Xiang 2019-07-31 7:41 ` Chao Yu 2019-07-29 6:51 ` [PATCH 10/22] staging: erofs: kill sbi->dev_name Gao Xiang 2019-07-31 7:46 ` Chao Yu 2019-07-29 6:51 ` [PATCH 11/22] staging: erofs: kill all failure handling in fill_super() Gao Xiang 2019-07-31 8:15 ` Chao Yu 2019-07-31 12:52 ` Gao Xiang 2019-07-29 6:51 ` [PATCH 12/22] staging: erofs: refine erofs_allocpage() Gao Xiang 2019-07-31 8:20 ` Chao Yu 2019-07-29 6:51 ` [PATCH 13/22] staging: erofs: kill CONFIG_EROFS_FS_USE_VM_MAP_RAM Gao Xiang 2019-07-31 8:27 ` Chao Yu 2019-07-29 6:51 ` [PATCH 14/22] staging: erofs: tidy up zpvec.h Gao Xiang 2019-07-31 8:28 ` Chao Yu 2019-07-29 6:51 ` [PATCH 15/22] staging: erofs: remove redundant braces in inode.c Gao Xiang 2019-07-31 8:29 ` Chao Yu 2019-07-29 6:51 ` [PATCH 16/22] staging: erofs: tidy up decompression frontend Gao Xiang 2019-07-31 9:07 ` Chao Yu 2019-07-29 6:51 ` [PATCH 17/22] staging: erofs: remove clusterbits in sbi Gao Xiang 2019-07-31 9:12 ` Chao Yu 2019-07-29 6:51 ` [PATCH 18/22] staging: erofs: turn cache strategies into mount options Gao Xiang 2019-07-31 9:23 ` Chao Yu 2019-07-29 6:51 ` [PATCH 19/22] staging: erofs: tidy up utils.c Gao Xiang 2019-07-31 9:24 ` Chao Yu 2019-07-29 6:51 ` [PATCH 20/22] staging: erofs: tidy up internal.h Gao Xiang 2019-07-31 9:25 ` Chao Yu 2019-07-29 6:51 ` [PATCH 21/22] staging: erofs: update super.c Gao Xiang 2019-07-31 9:40 ` Chao Yu 2019-07-29 6:51 ` [PATCH 22/22] staging: erofs: update Kconfig Gao Xiang 2019-07-31 9:44 ` Chao Yu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190729065159.62378-5-gaoxiang25@huawei.com \ --to=gaoxiang25@huawei.com \ --cc=chao@kernel.org \ --cc=devel@driverdev.osuosl.org \ --cc=fangwei1@huawei.com \ --cc=gregkh@linuxfoundation.org \ --cc=linux-erofs@lists.ozlabs.org \ --cc=linux-kernel@vger.kernel.org \ --cc=miaoxie@huawei.com \ --cc=weidu.du@huawei.com \ --subject='Re: [PATCH 04/22] staging: erofs: keep up erofs_fs.h with erofs-outofstaging patchset' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).