ACK: [SRU][F][PATCH 0/1] loop: fix I/O error on fsync() in detached loop devices
Marcelo Henrique Cerri
marcelo.cerri at canonical.com
Thu Mar 30 11:41:37 UTC 2023
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
On Wed, Mar 29 2023, Jorge Merlino wrote:
> BugLink: https://bugs.launchpad.net/bugs/1856871
>
> SRU Justification:
>
> [Impact]
>
> * There's an I/O error on fsync() in a detached loop device if it has
> been previously attached. The issue is that write cache is enabled in
> the attach path in loop_configure() but it isn't disabled in the detach
> path; thus it remains enabled in the block device regardless of whether
> it is attached or not.
>
> * fsync() on detached loop devices can be called by partition tools and
> commands run by sosreport, so the unexpected kernel error message might
> surprise users or even distract from the actual issue being
> investigatedr. It might also trigger alerts in
> logging/monitoring/alerting stacks
>
> [Fix]
>
> * Disable write cache in the detach path
>
> [Test Plan]
>
> * Attach and detach an image to a loop device and test fsync return
> value aterwards
>
> # DEV=/dev/loop7
>
> # IMG=/tmp/image
> # truncate --size 1M $IMG
>
> # losetup $DEV $IMG
> # losetup -d $DEV
>
> Before:
> # strace -e fsync parted -s $DEV print 2>&1 | grep fsync
> fsync(3) = -1 EIO (Input/output error)
> Warning: Error fsyncing/closing /dev/loop7: Input/output error
> [ 982.529929] blk_update_request: I/O error, dev loop7, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
>
> After:
> # strace -e fsync parted -s $DEV print 2>&1 | grep fsync
> fsync(3) = 0
>
> [Where problems could occur]
>
> * The detach path for block devices is modified. Worst case scenario
> would be an error when detaching loop devices.
LGTM
Acked-by: Marcelo Henrique Cerri <marcelo.cerri at canonical.com>
- --
Regards,
Marcelo
-----BEGIN PGP SIGNATURE-----
iQHQBAEBCgA6FiEExJjLjAfVL0XbfEr56e82LoessAkFAmQldXocHG1hcmNlbG8u
Y2VycmlAY2Fub25pY2FsLmNvbQAKCRDp7zYuh6ywCfC9C/9MpRNHx0qNOQirPDQK
bQI9VlkBJZxxlJvz1CSAn9M52IlTIsFDsAJLQeesF9iGWVKXCUy33EO2ZdGLeum3
gjaSDbiJxfbgEB7ah0pd4RkVYNT8S9foL3uF33lPqOJEo1C2Nc972MhjHddF57ry
Hy6mVTIk+hVxLm/2Wi6cKKn7ILB4k1nHYcprdQzfukZ7MzBwyPmL2Jv5UH9CiXDZ
VLilaFY2D3cWuxbWuie844CsYWw5p2KmH2bq3NihYXgG2X9klX6ak6Xj/Ue9fALE
sVcRzLWDzQQ2ZlwiMg7cq6cdSjnzfIIJDIApr8Pf7RzCby2ODUCdttszF1t53YG/
/xJVbgKYyV3PGK4XY4q2cFnrSY/SVW8t8SkSWih35FcU+AbyCb1xaR3ydFPcmAeG
R/hi5sL1nlYTqmHLu0XccrW0yvIr+73RJlPgooSxF4/4XXa280O1oab4uu/AP5y7
CAUe93MTCRGfBpIf88KiJXfTLcS37fRzrTqUMKikzErLuw4=
=Ax6I
-----END PGP SIGNATURE-----
More information about the kernel-team
mailing list