forked from pool/open-iscsi
44 lines
1.2 KiB
Plaintext
44 lines
1.2 KiB
Plaintext
commit 37f18edf5c61193434651fc61f5cfe5107f43c6d
|
|
Author: Hans de Goede <j.w.r.degoede@hhs.nl>
|
|
Date: Mon Sep 29 13:11:58 2008 +0200
|
|
|
|
PATCH: add error checking to iscsi discovery db lock creation
|
|
|
|
Hi Make,
|
|
|
|
I've been bitten numerous times now by iscsiadm hanging when run as normal user
|
|
(it spins trying to create the lock, which will never succeed as it simple
|
|
misses the rights todo so).
|
|
|
|
I plan on including the attached patch in the new rawhide / F-10 package with
|
|
the new initscripts I'm working on. Please scream loudly if you object against
|
|
this patch.
|
|
|
|
Regards,
|
|
|
|
Hans
|
|
|
|
p.s.
|
|
|
|
If we go ahead with this patch I assume you will take care of getting it upstream.
|
|
|
|
diff --git a/usr/idbm.c b/usr/idbm.c
|
|
index 0cb3c44..a7a1072 100644
|
|
--- a/usr/idbm.c
|
|
+++ b/usr/idbm.c
|
|
@@ -850,6 +850,14 @@ int idbm_lock(void)
|
|
if (ret == 0)
|
|
break;
|
|
|
|
+ if (errno != EEXIST) {
|
|
+ log_error("Could not lock discovery DB: %s: %s",
|
|
+ LOCK_WRITE_FILE, strerror(errno));
|
|
+ log_error("Maybe you are not root?");
|
|
+ exit(-1);
|
|
+ } else if (i == 0)
|
|
+ log_debug(2, "Waiting for discovery DB lock");
|
|
+
|
|
usleep(10000);
|
|
}
|
|
|