From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Behun Date: Thu, 26 Mar 2020 10:03:12 +0100 Subject: [PATCH U-BOOT v2 2/3] fs: btrfs: Reject fs with sector size other than PAGE_SIZE In-Reply-To: <20200326053556.20492-3-wqu@suse.com> References: <20200326053556.20492-1-wqu@suse.com> <20200326053556.20492-3-wqu@suse.com> Message-ID: <20200326100312.32cbae6f@nic.cz> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Thu, 26 Mar 2020 13:35:55 +0800 Qu Wenruo wrote: > Although in theory u-boot fs driver could easily support more sector > sizes, current code base doesn't have good enough way to grab sector > size yet. > > This would cause problem for later LZO fixes which rely on sector size. > > And considering that most u-boot boards are using 4K page size, which is > also the most common sector size for btrfs, rejecting fs with > non-page-sized sector size shouldn't cause much problem. > > This should only be a quick fix before we implement better sector size > support. > > Signed-off-by: Qu Wenruo > Cc: Marek Behun > --- > fs/btrfs/super.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c > index 2dc4a6fcd7a3..b693a073fc0b 100644 > --- a/fs/btrfs/super.c > +++ b/fs/btrfs/super.c > @@ -7,6 +7,7 @@ > > #include "btrfs.h" > #include > +#include > > #define BTRFS_SUPER_FLAG_SUPP (BTRFS_HEADER_FLAG_WRITTEN \ > | BTRFS_HEADER_FLAG_RELOC \ > @@ -232,6 +233,13 @@ int btrfs_read_superblock(void) > return -1; > } > > + if (sb->sectorsize != PAGE_SIZE) { > + printf( > + "%s: Unsupported sector size (%u), only supports %u as sector size\n", > + __func__, sb->sectorsize, PAGE_SIZE); > + return -1; > + } > + > if (btrfs_info.sb.num_devices != 1) { > printf("%s: Unsupported number of devices (%lli). This driver " > "only supports filesystem on one device.\n", __func__, Reviewed-by: Marek Beh?n