Your message dated Fri, 27 Nov 2020 17:19:46 +0000
with message-id <[email protected]>
and subject line Bug#975015: fixed in grml2usb 0.18.4
has caused the Debian Bug report #975015,
regarding blockdev: ioctl error on BLKRRPART: Device or resource busy
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
975015: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=975015
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: grml2usb
Version: 0.18.3
Severity: normal
Tags: patch
grml2usb autopkgtest frequently fail in Ubuntu's CI. For example:
https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-hirsute/hirsute/amd64/g/grml2usb/20201116_194744_cbe0f@/log.gz
An excerpt showing the error:
2020-11-17 14:14:49,362 Installing default MBR
2020-11-17 14:14:49,363 executing: dd if='/dev/loop0' of='/tmp/tmpa2umy9df' bs=5
12 count=1
2020-11-17 14:14:49,381 executing: dd if=/usr/share/grml2usb/mbr/mbrldr of=/tmp/
tmpa2umy9df bs=439 count=1 conv=notrunc
2020-11-17 14:14:49,385 executing: dd if='/tmp/tmpa2umy9df' of='/dev/loop0' bs=5
12 count=1 conv=notrunc
2020-11-17 14:14:49,401 executing: sync
2020-11-17 14:14:49,433 Probing device via 'blockdev --rereadpt /dev/loop0'
blockdev: ioctl error on BLKRRPART: Device or resource busy
2020-11-17 14:14:49,452 Execution failed: ("Couldn't execute blockdev on '%s' (i
nstall util-linux?)", '/dev/loop0')
I am able to reproduce this on an OpenStack instance with a failure rate of
33% (36 failures, 110 passes). My theory is that the sync is not sufficient,
and that we really need to do a targeted fsync of the file. With the
attached patch, I've yet to see a failure in 42 iterations.
-- System Information:
Debian Release: bullseye/sid
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'unstable'), (1,
'experimental-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.9.0-1-amd64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_FIRMWARE_WORKAROUND
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages grml2usb depends on:
ii grub2-common 2.04-10
ii kmod 27+20200310-2
ii mtools 4.0.25-1
ii python3 3.8.6-1
ii python3-parted 3.11.6-0.1+b1
ii rsync 3.2.3-2
ii syslinux 3:6.04~git20190206.bf6db5b4+dfsg1-3
Versions of packages grml2usb recommends:
ii genisoimage 9:1.1.11-3.1
ii isolinux 3:6.04~git20190206.bf6db5b4+dfsg1-3
ii syslinux 3:6.04~git20190206.bf6db5b4+dfsg1-3
ii syslinux-utils 3:6.04~git20190206.bf6db5b4+dfsg1-3
ii xorriso 1.5.2-1
grml2usb suggests no packages.
-- no debconf information
diff -urp grml2usb-0.18.3.orig/grml2usb grml2usb-0.18.3/grml2usb
--- grml2usb-0.18.3.orig/grml2usb 2020-06-23 10:48:42.000000000 +0000
+++ grml2usb-0.18.3/grml2usb 2020-11-17 18:49:10.884080710 +0000
@@ -856,7 +852,9 @@ def install_mbr(mbrtemplate, device, par
set_rw(device)
logging.debug(
- "executing: dd if='%s' of='%s' bs=512 count=1 conv=notrunc",
tmpf.name, device
+ "executing: dd if='%s' of='%s' bs=512 count=1 conv=notrunc,fsync",
+ tmpf.name,
+ device,
)
proc = subprocess.Popen(
[
@@ -865,7 +863,7 @@ def install_mbr(mbrtemplate, device, par
"of=%s" % device,
"bs=512",
"count=1",
- "conv=notrunc",
+ "conv=notrunc,fsync",
],
stderr=open(os.devnull, "r+"),
)
@@ -874,11 +872,6 @@ def install_mbr(mbrtemplate, device, par
raise Exception("error executing dd (third run)")
del tmpf
- # make sure we sync filesystems before returning
- logging.debug("executing: sync")
- proc = subprocess.Popen(["sync"])
- proc.wait()
-
logging.debug("Probing device via 'blockdev --rereadpt %s'", device)
proc = subprocess.Popen(["blockdev", "--rereadpt", device])
proc.wait()
--- End Message ---
--- Begin Message ---
Source: grml2usb
Source-Version: 0.18.4
Done: Michael Prokop <[email protected]>
We believe that the bug you reported is fixed in the latest version of
grml2usb, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Michael Prokop <[email protected]> (supplier of updated grml2usb package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Fri, 27 Nov 2020 17:56:02 +0100
Source: grml2usb
Architecture: source
Version: 0.18.4
Distribution: unstable
Urgency: medium
Maintainer: Grml Team <[email protected]>
Changed-By: Michael Prokop <[email protected]>
Closes: 975015
Changes:
grml2usb (0.18.4) unstable; urgency=medium
.
[ Michael Prokop ]
* [3664e4a] Code cleanups. Thanks to Chris Hofstaedtler for review +
feedback
* [1dfee7d] Use "GRML" as FAT label when creating the file system
* [272b66e] Fix race condition with blockdev/BLKRRPART due to lack of
fsync. Thanks to dann frazier <[email protected]> for bug report and
patch (Closes: #975015)
* [100a957] Bump Standards-Version to 4.5.1
.
[ Darshaka Pathirana ]
* [7656c18] Use consistent case of 'USB' and 'Grml'
.
[ Manuel Rom ]
* [6f3eb52] Add unit testing capabilities and basic tests for
check_for_usbdevice
Checksums-Sha1:
dc0a88e49c090f96f5b960b9f9b981d97bf0696f 1870 grml2usb_0.18.4.dsc
a4a91c1a17d1a70a7fdf8415f1520668175318e3 387836 grml2usb_0.18.4.tar.xz
dea3493decc790b3a3a1221727a90eccc9eb7c0d 6192 grml2usb_0.18.4_source.buildinfo
Checksums-Sha256:
8b4012fc1d55139088da327439118c07188c563007d0ebf54e3a5326947f1069 1870
grml2usb_0.18.4.dsc
68d9b69ab3bcbd422912e506be7b37f0ff08b413cecb9f383ed60fdef93c457b 387836
grml2usb_0.18.4.tar.xz
d2021294b2fecddba28f5b2570b28faca7746432c22b96c1874aaaf560724b82 6192
grml2usb_0.18.4_source.buildinfo
Files:
cc0e112b8d1806a780a78a0edf6d0b8a 1870 admin optional grml2usb_0.18.4.dsc
5ade30d94cfd145d37802526a183fe41 387836 admin optional grml2usb_0.18.4.tar.xz
acc02fef8bdc07fd00a71aef7aa2e475 6192 admin optional
grml2usb_0.18.4_source.buildinfo
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEM8yxNkAa/shDo4djlqh4crfqNzcFAl/BMZAACgkQlqh4crfq
NzcAdRAAhDaObrAvP+OubFNCZU0a4JU8yR77oVmUjMRSJfpz1Lapk6Fh9aWr8W/L
6f6rUrbGA3MfvyOBpQ3+XDgqL//3fpRdqrtXyjZ9QihKxJCaovlTlxx27TaZuXX6
b8mPnFygxtRbS0r2GVne3sFc7ukPgoFs4QeSBuGN8CWJbOLadhOCMirzo26gRFJO
kp2+skrRiwZbdgYv9aGTGemAIgzSrvPLdaB6Fdk2Y5f6MP5dtzEP10e7+OVBnwAu
1EYqcoCJi+AboQumMzOcYbe8XcDWne8OWvLYHjGxZH0X4OMD7aUTB7jCFUzBY9fx
NXWo8+txrbmO5B3yhTbUTFXoC+vjH2KOWw3h8u9ZW+33qFp5SCM88JLU4DNCoSTK
GPu9ZwTq423Fmh5NzEj6Ehv7eVtLU9lZ9XJl27f4jrMyxmRxVsxvzsbwYyjveqsZ
uPwgU2HCDnd+A6tXn+/y3IP+w3WjtG+iAeEF4jDw2MxticZbFHxKjqo6oz0syIan
0a8T+LLJnAzRlGLRAsPo+dYVynHUPLVn42B5jXbB9Kmh2f2NfEBbezfBeLMQwexb
rtSOhKuK4ZDdNBOuuCKfX0Vmi+boWMi9qBXGtRRQSWHysNa4bjyI2ou2bLzUEtZY
4YWNK19dYVe4RAIj/uiw2EBVkpnU+QwwSDXNChhotazE7RJsL2o=
=xE36
-----END PGP SIGNATURE-----
--- End Message ---