Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1417026
| From | "Prof. Dipl.-Ing. Klaus Knopper" <knopper@knopper.net> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Fwd: Bug#826328: util-linux: losetup -d disfunctional for cloop and similar loop-compatible block devices |
| Date | 2016-06-08 10:20 +0200 |
| Message-ID | <rHGSt-685-13@gated-at.bofh.it> (permalink) |
| Organization | Knopper Networks |
Hello,
As recommended by the Debian package maintainer, I'm forwarding this as
upstream bug report to the kernel list.
Package: util-linux
Version: 2.28-5
Severity: normal
Tags: upstream
Losetup was able to setup compressed loopback (cloop) devices, which
have a similar ioctl API, until recently the code in sys-utils/losetup.c
and lib/loopdev.c was changed to only accept devices with loopbacks
major device id.
While attaching a file to a cloop device still works (no check here),
detaching with -d fails with error message:
losetup: /dev/cloop7: failed to use device: Success
The reason for this is:
---
sys-utils/losetup.c:
case 'd':
act = A_DELETE;
if (!is_loopdev(optarg) ||
loopcxt_set_device(&lc, optarg))
err(EXIT_FAILURE, _("%s: failed to use device"),
optarg);
break;
---
lib/loopdev.c:
int is_loopdev(const char *device)
{
struct stat st;
if (!device)
return 0;
return (stat(device, &st) == 0 &&
S_ISBLK(st.st_mode) &&
major(st.st_rdev) == LOOPDEV_MAJOR);
}
---
Because of this, losetup from util-linux no longer works for cloop
devices.
Using busybox losetup for now.
Suggestion: Remove the check for
major(st.st_rdev) == LOOPDEV_MAJOR);
in is_loopdev() in lib/loopdev.c.
Regards
-Klaus Knopper
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
Fwd: Bug#826328: util-linux: losetup -d disfunctional for cloop and similar loop-compatible block devices "Prof. Dipl.-Ing. Klaus Knopper" <knopper@knopper.net> - 2016-06-08 10:20 +0200
csiph-web