lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <F98B4E81-C4E7-4E0E-83B2-224AF7E72283@dilger.ca>
Date:   Wed, 29 Jul 2020 14:09:05 -0600
From:   Andreas Dilger <adilger@...ger.ca>
To:     Takuya Yoshikawa <takuya.yoshikawa@...il.com>
Cc:     Ext4 Developers List <linux-ext4@...r.kernel.org>,
        linux-xfs <linux-xfs@...r.kernel.org>
Subject: Re: ext4/xfs: about switching underlying 512B sector devices to 4K
 ones

On Jul 29, 2020, at 4:38 AM, Takuya Yoshikawa <takuya.yoshikawa@...il.com> wrote:
> 
> I have a question: is it possible to make existing ext4/xfs filesystems
> formatted on 512B sector devices run as is on 4k sector devices?

For ext4 filesystems that are formatted with 4KB block size, there
is no problem to change the underlying sector size to 4KB.  It will
never access blocks that are not sized/aligned at 4KB.

Most ext4 filesystem are formatted with 4KB blocksize by default,
unless it is a tiny partition like /boot that *may* be formatted with
1KB block size to save space.  In such cases, it would be easy to
format a new /boot with 4KB blocksize and copy the file contents over,
since it would be a very small partition.

You can check with "dumpe2fs -h /dev/md127 | grep | grep 'Block size' "
to see what the filesystem block size is.

Cheers, Andreas

> Problem:
> 
> We are maintaining some legacy servers whose data is stored on
> ext4/xfs filesystems formatted on lvm2 raid1 devices.
> 
> These raid1 devices consist of a few iSCSI devices, so the
> remote storage servers running as iSCSI targets are the actual
> data storage.
> 
>  /dev/md127 --  /dev/sda  --(iSCSI)-- remote storage server
>                 /dev/sdb  --(iSCSI)-- remote storage server
> 
> A problem happened when we tried to add a new storage server with
> 4k sector disks as an iSCSI target. After lvm2 added that iSCSI
> device and started syncing the blocks from existing 512B sector
> storage servers to the new 4k sector ones, we got
> "Bad block number requested" messages, and soon after that,
> the new device was removed from the lvm2 raid1 device.
> 
>  /dev/md127 --  /dev/sda  --(iSCSI)-- remote storage server(512)
>                 /dev/sdb  --(iSCSI)-- remote storage server(512)
>              *  /dev/sdc  --(iSCSI)-- remote storage server(4k)
> 
>  The combined raid1 device had been recognized as a 4k device
>  as described in this article:
>    https://access.redhat.com/articles/3911611
> 
> It seemed like 512B unaligned requests from the xfs filesystem
> were sent to the raid1 device, and mirrored requests caused
> the problem on the newly added 4k sector storage.
> 
> The xfs was formatted with its sector_size_options set to the
> default (512).
> See https://www.man7.org/linux/man-pages/man8/mkfs.xfs.8.html
> 
> In the case of ext4, the device continued to run, but I was not
> sure if there could be any problems.
> 
> 
> Question:
> 
> Is it possible to change the underlying storage to 4k sector ones
> as written above without copying the data on the ext4/xfs
> filesystems to outside of the raid1 device?
> 
> ext4: I am not seeing any apparent errors after adding the 4k
>  device. Is this an expected behavior?
> 
> xfs: is it possible to change the filesystem sector size?
> 
>  I read this explanation and thought if I could change the
>  journal related metadata, it might be possible.
>  https://www.spinics.net/lists/linux-xfs/msg14495.html
> 
> 
> Thanks,
>  Takuya


Cheers, Andreas






Download attachment "signature.asc" of type "application/pgp-signature" (874 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ