packages: iscsitarget/iscsitarget-2.6.37.patch - official sem->mtx fixes fr...
pluto
pluto at pld-linux.org
Thu Mar 10 10:02:22 CET 2011
Author: pluto Date: Thu Mar 10 09:02:22 2011 GMT
Module: packages Tag: HEAD
---- Log message:
- official sem->mtx fixes from svn.
---- Files affected:
packages/iscsitarget:
iscsitarget-2.6.37.patch (1.1 -> 1.2)
---- Diffs:
================================================================
Index: packages/iscsitarget/iscsitarget-2.6.37.patch
diff -u packages/iscsitarget/iscsitarget-2.6.37.patch:1.1 packages/iscsitarget/iscsitarget-2.6.37.patch:1.2
--- packages/iscsitarget/iscsitarget-2.6.37.patch:1.1 Wed Jan 26 09:50:35 2011
+++ packages/iscsitarget/iscsitarget-2.6.37.patch Thu Mar 10 10:02:17 2011
@@ -1,32 +1,5 @@
-Index: iscsitarget-1.4.19/kernel/target.c
-===================================================================
---- iscsitarget-1.4.19.orig/kernel/target.c 2009-09-28 21:08:20.000000000 +0200
-+++ iscsitarget-1.4.19/kernel/target.c 2010-12-08 17:02:59.247843222 +0100
-@@ -7,11 +7,12 @@
- #include "iscsi.h"
- #include "digest.h"
- #include "iscsi_dbg.h"
-+#include <linux/semaphore.h>
-
- #define MAX_NR_TARGETS (1UL << 30)
-
- static LIST_HEAD(target_list);
--static DECLARE_MUTEX(target_list_sem);
-+static DEFINE_SEMAPHORE(target_list_sem);
- static u32 next_target_id;
- static u32 nr_targets;
-
-@@ -157,7 +158,7 @@ static int iscsi_target_create(struct ta
-
- strncpy(target->name, name, sizeof(target->name) - 1);
-
-- init_MUTEX(&target->target_sem);
-+ sema_init(&target->target_sem, 0);
- spin_lock_init(&target->session_list_lock);
-
- INIT_LIST_HEAD(&target->session_list);
---- trunk/kernel/config.c 2010/03/30 18:08:19 309
-+++ trunk/kernel/config.c 2011/01/12 20:39:36 378
+--- trunk/kernel/config.c (wersja 377)
++++ trunk/kernel/config.c (wersja 378)
@@ -9,7 +9,7 @@
#include "iscsi.h"
#include "iscsi_dbg.h"
@@ -66,6 +39,178 @@
return 0;
}
+--- trunk/kernel/volume.c (wersja 377)
++++ trunk/kernel/volume.c (wersja 378)
+@@ -6,6 +6,7 @@
+
+ #include <linux/types.h>
+ #include <linux/parser.h>
++#include <linux/blkdev.h>
+
+ #include "iscsi.h"
+ #include "iscsi_dbg.h"
+--- trunk/kernel/iscsi.h (wersja 377)
++++ trunk/kernel/iscsi.h (wersja 378)
+@@ -130,7 +130,7 @@
+ /* Points either to own list or global pool */
+ struct worker_thread_info * wthread_info;
+
+- struct semaphore target_sem;
++ struct mutex target_mutex;
+ };
+
+ struct iscsi_queue {
+--- trunk/kernel/target.c (wersja 377)
++++ trunk/kernel/target.c (wersja 378)
+@@ -4,6 +4,8 @@
+ * Released under the terms of the GNU GPL v2.0.
+ */
+
++#include <linux/mutex.h>
++
+ #include "iscsi.h"
+ #include "digest.h"
+ #include "iscsi_dbg.h"
+@@ -11,7 +13,7 @@
+ #define MAX_NR_TARGETS (1UL << 30)
+
+ static LIST_HEAD(target_list);
+-static DECLARE_MUTEX(target_list_sem);
++static DEFINE_MUTEX(target_list_mutex);
+ static u32 next_target_id;
+ static u32 nr_targets;
+
+@@ -48,16 +50,16 @@
+ int err = 0;
+
+ if (interruptible)
+- err = down_interruptible(&target->target_sem);
++ err = mutex_lock_interruptible(&target->target_mutex);
+ else
+- down(&target->target_sem);
++ mutex_lock(&target->target_mutex);
+
+ return err;
+ }
+
+ inline void target_unlock(struct iscsi_target *target)
+ {
+- up(&target->target_sem);
++ mutex_unlock(&target->target_mutex);
+ }
+
+ static struct iscsi_target *__target_lookup_by_id(u32 id)
+@@ -86,9 +88,9 @@
+ {
+ struct iscsi_target *target;
+
+- down(&target_list_sem);
++ mutex_lock(&target_list_mutex);
+ target = __target_lookup_by_id(id);
+- up(&target_list_sem);
++ mutex_unlock(&target_list_mutex);
+
+ return target;
+ }
+@@ -157,7 +159,7 @@
+
+ strncpy(target->name, name, sizeof(target->name) - 1);
+
+- init_MUTEX(&target->target_sem);
++ mutex_init(&target->target_mutex);
+ spin_lock_init(&target->session_list_lock);
+
+ INIT_LIST_HEAD(&target->session_list);
+@@ -195,7 +197,7 @@
+ u32 tid = info->tid;
+ int err;
+
+- err = down_interruptible(&target_list_sem);
++ err = mutex_lock_interruptible(&target_list_mutex);
+ if (err < 0)
+ return err;
+
+@@ -204,7 +206,7 @@
+ goto out;
+ }
+
+- if (__target_lookup_by_name(info->name) ||
++ if (__target_lookup_by_name(info->name) ||
+ (tid && __target_lookup_by_id(tid))) {
+ err = -EEXIST;
+ goto out;
+@@ -223,7 +225,7 @@
+ if (!err)
+ nr_targets++;
+ out:
+- up(&target_list_sem);
++ mutex_unlock(&target_list_mutex);
+
+ return err;
+ }
+@@ -248,7 +250,7 @@
+ module_put(THIS_MODULE);
+ }
+
+-/* @locking: target_list_sem must be locked */
++/* @locking: target_list_mutex must be locked */
+ static int __target_del(struct iscsi_target *target)
+ {
+ int err;
+@@ -283,7 +285,7 @@
+ struct iscsi_target *target;
+ int err;
+
+- err = down_interruptible(&target_list_sem);
++ err = mutex_lock_interruptible(&target_list_mutex);
+ if (err < 0)
+ return err;
+
+@@ -295,7 +297,7 @@
+
+ err = __target_del(target);
+ out:
+- up(&target_list_sem);
++ mutex_unlock(&target_list_mutex);
+
+ return err;
+ }
+@@ -305,7 +307,7 @@
+ struct iscsi_target *target, *tmp;
+ int err;
+
+- down(&target_list_sem);
++ mutex_lock(&target_list_mutex);
+
+ if (!list_empty(&target_list))
+ iprintk("Removing all connections, sessions and targets\n");
+@@ -319,7 +321,7 @@
+
+ next_target_id = 0;
+
+- up(&target_list_sem);
++ mutex_unlock(&target_list_mutex);
+ }
+
+ static void *iet_seq_start(struct seq_file *m, loff_t *pos)
+@@ -327,7 +329,7 @@
+ int err;
+
+ /* are you sure this is to be interruptible? */
+- err = down_interruptible(&target_list_sem);
++ err = mutex_lock_interruptible(&target_list_mutex);
+ if (err < 0)
+ return ERR_PTR(err);
+
+@@ -341,7 +343,7 @@
+
+ static void iet_seq_stop(struct seq_file *m, void *v)
+ {
+- up(&target_list_sem);
++ mutex_unlock(&target_list_mutex);
+ }
+
+ static int iet_seq_show(struct seq_file *m, void *p)
--- trunk/kernel/wthread.c 2010/04/11 15:34:14 320
+++ trunk/kernel/wthread.c 2011/01/19 18:36:01 389
@@ -67,14 +67,13 @@
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/iscsitarget/iscsitarget-2.6.37.patch?r1=1.1&r2=1.2&f=u
More information about the pld-cvs-commit
mailing list