* [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") [not found] <3a333f27-6810-4313-8910-485df652e897@rclobus.nl> @ 2025-05-20 5:57 ` Salvatore Bonaccorso 2025-05-20 6:10 ` Salvatore Bonaccorso ` (2 more replies) 0 siblings, 3 replies; 5+ messages in thread From: Salvatore Bonaccorso @ 2025-05-20 5:57 UTC (permalink / raw) To: Roland Clobus, Lizhi Xu, Christoph Hellwig, Jens Axboe Cc: 1106070, linux-block, linux-kernel, stable, regressions Hi In Debian Roland Clobus reported a regression with setting up loop devices from a backing squashfs file lying on read-only mounted target directory from a iso. The original report is at: https://bugs.debian.org/1106070 Quoting the report: On Mon, May 19, 2025 at 12:15:10PM +0200, Roland Clobus wrote: > Package: linux-image-6.12.29-amd64 > Version: 6.12.29-1 > Severity: important > X-Debbugs-Cc: debian-amd64@lists.debian.org > User: debian-amd64@lists.debian.org > Usertags: amd64 > X-Debbugs-Cc: phil@hands.com > User: debian-qa@lists.debian.org > Usertags: openqa > X-Debbugs-Cc: debian-boot > > Hello maintainers of the kernel, > > The new kernel (6.12.29) has a modified behaviour (compared to 6.12.27) for > the loop device. > > This causes the Debian live images (for sid) to fail to boot. > > The change happened between 20250518T201633Z and 20250519T021902Z, which > matches the upload of 6.12.29 (https://tracker.debian.org/news/1646619/accepted-linux-signed-amd64-612291-source-into-unstable/) > at 20250518T230426Z. > > To reproduce: > * Download the daily live image from https://openqa.debian.net/tests/396941/asset/iso/smallest-build_sid_20250519T021902Z.iso > * Boot into the live image (the first boot option) > * Result: an initramfs shell (instead of a live system) -> FAIL > * Try: `losetup -r /dev/loop1 /run/live/medium/live/filesystem.squashfs` > * Result: `failed to set up loop device: invalid argument` -> FAIL > * Try: `cp /run/live/medium/live/filesystem.squashfs /` > * Try: `losetup -r /dev/loop2 /filesystem.squashfs` > * Result: `loop2: detected capacity change from 0 to 1460312` -> PASS > > It appears that the loopback device cannot be used any more with the mount > /run/live/medium (which is on /dev/sr0). > > I've verified: the md5sum of the squashfs file is OK. > > The newer kernel is not in trixie yet. > > With kind regards, > Roland Clobus A short reproducer is as follows: iso="netinst.iso" url="https://openqa.debian.net/tests/396941/asset/iso/smallest-build_sid_20250519T021902Z.iso" if [ ! -e "${iso}" ]; then wget "${url}" -O "${iso}" fi mountdir="$(mktemp -d)" mount -v "./${iso}" "${mountdir}" losetup -v -r -f "${mountdir}/live/filesystem.squashfs" loosetup -l resulting in: mount: /tmp/tmp.HgbNe7ek3h: WARNING: source write-protected, mounted read-only. mount: /dev/loop0 mounted on /tmp/tmp.HgbNe7ek3h. losetup: /tmp/tmp.HgbNe7ek3h/live/filesystem.squashfs: failed to set up loop device: Invalid argument NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO LOG-SEC /dev/loop0 0 0 1 0 /root/netinst.iso 0 512 Reverting 184b147b9f7f ("loop: Add sanity check for read/write_iter") on top of 6.12.29 fixes the issue: mount: /tmp/tmp.ACkkdCdYvB: WARNING: source write-protected, mounted read-only. mount: /dev/loop0 mounted on /tmp/tmp.ACkkdCdYvB. NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO LOG-SEC /dev/loop1 0 0 0 1 /tmp/tmp.ACkkdCdYvB/live/filesystem.squashfs 0 512 /dev/loop0 0 0 1 0 /root/netinst.iso 0 512 For completeness, netinst.iso is a iso9660 fstype with mount options "ro,relatime,nojoliet,check=s,map=n,blocksize=2048,iocharset=utf8". #regzbot introduced: 184b147b9f7f #regzbot link: https://bugs.debian.org/1106070 Regards, Salvatore ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") 2025-05-20 5:57 ` [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") Salvatore Bonaccorso @ 2025-05-20 6:10 ` Salvatore Bonaccorso 2025-05-20 6:34 ` Christian Hesse 2025-05-20 15:23 ` Jens Axboe 2 siblings, 0 replies; 5+ messages in thread From: Salvatore Bonaccorso @ 2025-05-20 6:10 UTC (permalink / raw) To: Roland Clobus, Lizhi Xu, Christoph Hellwig, Jens Axboe Cc: 1106070, linux-block, linux-kernel, stable, regressions On Tue, May 20, 2025 at 07:57:31AM +0200, Salvatore Bonaccorso wrote: > Hi > > In Debian Roland Clobus reported a regression with setting up loop > devices from a backing squashfs file lying on read-only mounted target > directory from a iso. > > The original report is at: > https://bugs.debian.org/1106070 > > Quoting the report: > > On Mon, May 19, 2025 at 12:15:10PM +0200, Roland Clobus wrote: > > Package: linux-image-6.12.29-amd64 > > Version: 6.12.29-1 > > Severity: important > > X-Debbugs-Cc: debian-amd64@lists.debian.org > > User: debian-amd64@lists.debian.org > > Usertags: amd64 > > X-Debbugs-Cc: phil@hands.com > > User: debian-qa@lists.debian.org > > Usertags: openqa > > X-Debbugs-Cc: debian-boot > > > > Hello maintainers of the kernel, > > > > The new kernel (6.12.29) has a modified behaviour (compared to 6.12.27) for > > the loop device. > > > > This causes the Debian live images (for sid) to fail to boot. > > > > The change happened between 20250518T201633Z and 20250519T021902Z, which > > matches the upload of 6.12.29 (https://tracker.debian.org/news/1646619/accepted-linux-signed-amd64-612291-source-into-unstable/) > > at 20250518T230426Z. > > > > To reproduce: > > * Download the daily live image from https://openqa.debian.net/tests/396941/asset/iso/smallest-build_sid_20250519T021902Z.iso > > * Boot into the live image (the first boot option) > > * Result: an initramfs shell (instead of a live system) -> FAIL > > * Try: `losetup -r /dev/loop1 /run/live/medium/live/filesystem.squashfs` > > * Result: `failed to set up loop device: invalid argument` -> FAIL > > * Try: `cp /run/live/medium/live/filesystem.squashfs /` > > * Try: `losetup -r /dev/loop2 /filesystem.squashfs` > > * Result: `loop2: detected capacity change from 0 to 1460312` -> PASS > > > > It appears that the loopback device cannot be used any more with the mount > > /run/live/medium (which is on /dev/sr0). > > > > I've verified: the md5sum of the squashfs file is OK. > > > > The newer kernel is not in trixie yet. > > > > With kind regards, > > Roland Clobus > > A short reproducer is as follows: > > iso="netinst.iso" > url="https://openqa.debian.net/tests/396941/asset/iso/smallest-build_sid_20250519T021902Z.iso" > if [ ! -e "${iso}" ]; then > wget "${url}" -O "${iso}" > fi > mountdir="$(mktemp -d)" > mount -v "./${iso}" "${mountdir}" > losetup -v -r -f "${mountdir}/live/filesystem.squashfs" > loosetup -l > > resulting in: > > mount: /tmp/tmp.HgbNe7ek3h: WARNING: source write-protected, mounted read-only. > mount: /dev/loop0 mounted on /tmp/tmp.HgbNe7ek3h. > losetup: /tmp/tmp.HgbNe7ek3h/live/filesystem.squashfs: failed to set up loop device: Invalid argument > NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO LOG-SEC > /dev/loop0 0 0 1 0 /root/netinst.iso 0 512 > > Reverting 184b147b9f7f ("loop: Add sanity check for read/write_iter") > on top of 6.12.29 fixes the issue: > > mount: /tmp/tmp.ACkkdCdYvB: WARNING: source write-protected, mounted read-only. > mount: /dev/loop0 mounted on /tmp/tmp.ACkkdCdYvB. > NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO LOG-SEC > /dev/loop1 0 0 0 1 /tmp/tmp.ACkkdCdYvB/live/filesystem.squashfs 0 512 > /dev/loop0 0 0 1 0 /root/netinst.iso 0 512 > > For completeness, netinst.iso is a iso9660 fstype with mount options > "ro,relatime,nojoliet,check=s,map=n,blocksize=2048,iocharset=utf8". > > #regzbot introduced: 184b147b9f7f > #regzbot link: https://bugs.debian.org/1106070 Just tested: The regression exists as well in 6.15-rc7 so it is not specific to the stable 6.12.y update. Regards, Salvatore ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") 2025-05-20 5:57 ` [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") Salvatore Bonaccorso 2025-05-20 6:10 ` Salvatore Bonaccorso @ 2025-05-20 6:34 ` Christian Hesse 2025-05-20 7:16 ` Salvatore Bonaccorso 2025-05-20 15:23 ` Jens Axboe 2 siblings, 1 reply; 5+ messages in thread From: Christian Hesse @ 2025-05-20 6:34 UTC (permalink / raw) To: Salvatore Bonaccorso Cc: Roland Clobus, Lizhi Xu, Christoph Hellwig, Jens Axboe, 1106070, linux-block, linux-kernel, stable, regressions [-- Attachment #1: Type: text/plain, Size: 681 bytes --] Salvatore Bonaccorso <carnil@debian.org> on Tue, 2025/05/20 07:57: > In Debian Roland Clobus reported a regression with setting up loop > devices from a backing squashfs file lying on read-only mounted target > directory from a iso. > > The original report is at: > https://bugs.debian.org/1106070 We are suffering the same for Arch Linux. Already reported here: https://lore.kernel.org/all/20250519175640.2fcac001@leda.eworm.net/ -- main(a){char*c=/* Schoene Gruesse */"B?IJj;MEH" "CX:;",b;for(a/* Best regards my address: */=0;b=c[a++];) putchar(b-1/(/* Chris cc -ox -xc - && ./x */b/42*2-3)*42);} [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") 2025-05-20 6:34 ` Christian Hesse @ 2025-05-20 7:16 ` Salvatore Bonaccorso 0 siblings, 0 replies; 5+ messages in thread From: Salvatore Bonaccorso @ 2025-05-20 7:16 UTC (permalink / raw) To: Christian Hesse Cc: Roland Clobus, Lizhi Xu, Christoph Hellwig, Jens Axboe, 1106070, linux-block, linux-kernel, stable, regressions H Christian, On Tue, May 20, 2025 at 08:34:38AM +0200, Christian Hesse wrote: > Salvatore Bonaccorso <carnil@debian.org> on Tue, 2025/05/20 07:57: > > In Debian Roland Clobus reported a regression with setting up loop > > devices from a backing squashfs file lying on read-only mounted target > > directory from a iso. > > > > The original report is at: > > https://bugs.debian.org/1106070 > > We are suffering the same for Arch Linux. Already reported here: > > https://lore.kernel.org/all/20250519175640.2fcac001@leda.eworm.net/ Sorry missed that one! Ack, so let's continue in that thread (worth looping in the regressions list though?) Regards, Salvatore ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") 2025-05-20 5:57 ` [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") Salvatore Bonaccorso 2025-05-20 6:10 ` Salvatore Bonaccorso 2025-05-20 6:34 ` Christian Hesse @ 2025-05-20 15:23 ` Jens Axboe 2 siblings, 0 replies; 5+ messages in thread From: Jens Axboe @ 2025-05-20 15:23 UTC (permalink / raw) To: Salvatore Bonaccorso, Roland Clobus, Lizhi Xu, Christoph Hellwig Cc: 1106070, linux-block, linux-kernel, stable, regressions Fixed here: https://git.kernel.dk/cgit/linux/commit/?h=block-6.15&id=355341e4359b2d5edf0ed5e117f7e9e7a0a5dac0 and will land upstream this week. -- Jens Axboe ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-05-20 15:23 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <3a333f27-6810-4313-8910-485df652e897@rclobus.nl>
2025-05-20 5:57 ` [6.12.y regression] loosetup: failed to set up loop device: Invalid argument after 184b147b9f7f ("loop: Add sanity check for read/write_iter") Salvatore Bonaccorso
2025-05-20 6:10 ` Salvatore Bonaccorso
2025-05-20 6:34 ` Christian Hesse
2025-05-20 7:16 ` Salvatore Bonaccorso
2025-05-20 15:23 ` Jens Axboe
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox