Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:AndreasSchwab:13.1
util-linux
util-linux-losetup-don-t-ignore-EBUSY-in-losetu...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File util-linux-losetup-don-t-ignore-EBUSY-in-losetup.patch of Package util-linux
From 5383a3c98c4c33d8e6af9629315fe6d681f56f1f Mon Sep 17 00:00:00 2001 From: Ruediger Meier <ruediger.meier@ga-group.nl> Date: Wed, 1 Jul 2015 16:34:47 +0200 Subject: [PATCH] Squashed commit of the following: commit d6ef7d6c69201190d9623885d418f9bdcf31642e Author: Stanislav Brabec <sbrabec@suse.cz> Date: Tue May 27 20:38:17 2014 +0200 losetup: don't ignore EBUSY in losetup when the loop device is given losetup ignores the EBUSY error. In the loop fo A_CREATE action, it skips the error handling when errno = EBUSY. It's OK for the case where no loop device is specified, but the error has to be handled when the device is given explicitly. Author: Takashi Iwai <tiwai@suse.de> Signed-off-by: Stanislav Brabec <sbrabec@suse.cz> commit f7e21185087c30c5f13bf92009238e316f8c1cf4 Author: Stanislav Brabec <sbrabec@suse.cz> Date: Tue May 27 20:38:10 2014 +0200 losetup: don't clear FD at EBUSY error in loopcxt_setup_device() loopback lib clears the existing FD unconditionally at error in loopcxt_setup_device(). This is done even after EBUSY, thus the second call actually clears the previous setup wrongly. Author: Takashi Iwai <tiwai@suse.de> Signed-off-by: Stanislav Brabec <sbrabec@suse.cz> Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl> --- lib/loopdev.c | 2 +- sys-utils/losetup.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/loopdev.c b/lib/loopdev.c index 0107168..61fc8af 100644 --- a/lib/loopdev.c +++ b/lib/loopdev.c @@ -1257,7 +1257,7 @@ int loopcxt_setup_device(struct loopdev_cxt *lc) err: if (file_fd >= 0) close(file_fd); - if (dev_fd >= 0) + if (dev_fd >= 0 && rc != -EBUSY) ioctl(dev_fd, LOOP_CLR_FD, 0); DBG(lc, loopdev_debug("setup failed [rc=%d]", rc)); diff --git a/sys-utils/losetup.c b/sys-utils/losetup.c index 28d87fa..0998546 100644 --- a/sys-utils/losetup.c +++ b/sys-utils/losetup.c @@ -624,7 +624,7 @@ int main(int argc, char **argv) res = loopcxt_setup_device(&lc); if (res == 0) break; /* success */ - if (errno == EBUSY) + if (errno == EBUSY && !hasdev) continue; /* errors */ -- 1.8.4.5
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor