[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/04: syscalls: 'device-in-use?' returns #f upon EINVAL.
From: |
guix-commits |
Subject: |
02/04: syscalls: 'device-in-use?' returns #f upon EINVAL. |
Date: |
Wed, 16 Jan 2019 13:21:37 -0500 (EST) |
civodul pushed a commit to branch wip-newt-installer
in repository guix.
commit 048976a02502679449258992925489933c7e5edd
Author: Ludovic Courtès <address@hidden>
Date: Wed Jan 16 17:43:52 2019 +0100
syscalls: 'device-in-use?' returns #f upon EINVAL.
This mirrors the behavior of the 'fdisk_device_is_used' function of
util-linux.
* guix/build/syscalls.scm (device-in-use?): Return #f upon EINVAL.
---
guix/build/syscalls.scm | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm
index 59cc270..26ab5e7 100644
--- a/guix/build/syscalls.scm
+++ b/guix/build/syscalls.scm
@@ -701,6 +701,11 @@ backend device."
#f)
((= err EBUSY)
#t)
+ ((= err EINVAL)
+ ;; We get EINVAL for devices that have the GENHD_FL_NO_PART_SCAN flag
+ ;; set in the kernel, in particular loopback devices, though we do seem
+ ;; to get it for SCSI storage (/dev/sr0) on QEMU.
+ #f)
(else
(throw 'system-error "ioctl" "~A"
(list (strerror err))