LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH] Fusion MPT: convert inactive_list_mutex in a mutex
@ 2008-03-09 11:16 Matthias Kaehlcke
  0 siblings, 0 replies; 6+ messages in thread
From: Matthias Kaehlcke @ 2008-03-09 11:16 UTC (permalink / raw)
  To: Eric.Moore, support, DL-MPTFusionLinux, linux-scsi; +Cc: linux-kernel, akpm

Fusion MPT driver: the semaphore inactive_list_mutex is used as a
mutex, convert it to the mutex API

Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>

--

diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
index 0c303c8..06557f2 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -2136,7 +2136,7 @@ mpt_do_ioc_recovery(MPT_ADAPTER *ioc, u32 reason, int sleepFlag)
 		/*
 		 * Initalize link list for inactive raid volumes.
 		 */
-		init_MUTEX(&ioc->raid_data.inactive_list_mutex);
+		mutex_init(&ioc->raid_data.inactive_list_mutex);
 		INIT_LIST_HEAD(&ioc->raid_data.inactive_list);
 
 		if (ioc->bus_type == SAS) {
@@ -5122,13 +5122,13 @@ mpt_inactive_raid_list_free(MPT_ADAPTER *ioc)
 	if (list_empty(&ioc->raid_data.inactive_list))
 		return;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	list_for_each_entry_safe(component_info, pNext,
 	    &ioc->raid_data.inactive_list, list) {
 		list_del(&component_info->list);
 		kfree(component_info);
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 }
 
 /**
@@ -5187,7 +5187,7 @@ mpt_inactive_raid_volumes(MPT_ADAPTER *ioc, u8 channel, u8 id)
 	if (!handle_inactive_volumes)
 		goto out;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	for (i = 0; i < buffer->NumPhysDisks; i++) {
 		if(mpt_raid_phys_disk_pg0(ioc,
 		    buffer->PhysDisk[i].PhysDiskNum, &phys_disk) != 0)
@@ -5207,7 +5207,7 @@ mpt_inactive_raid_volumes(MPT_ADAPTER *ioc, u8 channel, u8 id)
 		list_add_tail(&component_info->list,
 		    &ioc->raid_data.inactive_list);
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 
  out:
 	if (buffer)
diff --git a/drivers/message/fusion/mptbase.h b/drivers/message/fusion/mptbase.h
index caadc68..88e7a15 100644
--- a/drivers/message/fusion/mptbase.h
+++ b/drivers/message/fusion/mptbase.h
@@ -51,6 +51,7 @@
 
 #include <linux/kernel.h>
 #include <linux/pci.h>
+#include <linux/mutex.h>
 
 #include "lsi/mpi_type.h"
 #include "lsi/mpi.h"		/* Fusion MPI(nterface) basic defs */
@@ -531,7 +532,7 @@ struct inactive_raid_component_info {
 typedef	struct _RaidCfgData {
 	IOCPage2_t	*pIocPg2;		/* table of Raid Volumes */
 	IOCPage3_t	*pIocPg3;		/* table of physical disks */
-	struct semaphore	inactive_list_mutex;
+	struct mutex	inactive_list_mutex;
 	struct list_head	inactive_list; /* link list for physical
 						disk that belong in
 						inactive volumes */
diff --git a/drivers/message/fusion/mptscsih.c b/drivers/message/fusion/mptscsih.c
index af1de0c..4e70ef4 100644
--- a/drivers/message/fusion/mptscsih.c
+++ b/drivers/message/fusion/mptscsih.c
@@ -2295,14 +2295,14 @@ mptscsih_is_phys_disk(MPT_ADAPTER *ioc, u8 channel, u8 id)
 	if (list_empty(&ioc->raid_data.inactive_list))
 		goto out;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	list_for_each_entry(component_info, &ioc->raid_data.inactive_list,
 	    list) {
 		if ((component_info->d.PhysDiskID == id) &&
 		    (component_info->d.PhysDiskBus == channel))
 			rc = 1;
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 
  out:
 	return rc;
@@ -2332,14 +2332,14 @@ mptscsih_raid_id_to_num(MPT_ADAPTER *ioc, u8 channel, u8 id)
 	if (list_empty(&ioc->raid_data.inactive_list))
 		goto out;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	list_for_each_entry(component_info, &ioc->raid_data.inactive_list,
 	    list) {
 		if ((component_info->d.PhysDiskID == id) &&
 		    (component_info->d.PhysDiskBus == channel))
 			rc = component_info->d.PhysDiskNum;
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 
  out:
 	return rc;
 
-- 
Matthias Kaehlcke
Linux System Developer
Barcelona

         An ounce of practice is worth more than tons of preaching
                            (Mahatma Gandhi)
                                                                 .''`.
    using free software / Debian GNU/Linux | http://debian.org  : :'  :
                                                                `. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4                  `-

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Fusion MPT: Convert inactive_list_mutex in a mutex
  2008-05-05 15:28     ` James Bottomley
@ 2008-05-05 15:52       ` Matthias Kaehlcke
  0 siblings, 0 replies; 6+ messages in thread
From: Matthias Kaehlcke @ 2008-05-05 15:52 UTC (permalink / raw)
  To: James Bottomley
  Cc: Eric.Moore, support, DL-MPTFusionLinux, linux-scsi, linux-kernel, akpm

El Mon, May 05, 2008 at 10:28:37AM -0500 James Bottomley ha dit:

> On Mon, 2008-05-05 at 17:21 +0200, Matthias Kaehlcke wrote:
> > El Mon, May 05, 2008 at 09:26:06AM -0500 James Bottomley ha dit:
> > 
> > > On Sun, 2008-05-04 at 20:05 +0200, Matthias Kaehlcke wrote:
> > > > MPT Fusion: The semaphore inactive_list_mutex is used as a
> > > > mutex. Convert it to the mutex API
> > > > 
> > > > Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>
> > > 
> > > Um, it would at least vaguely help if you checked the tree; even
> > > actually trying to apply the patch would have told you.  I know the
> > > email notifications from scsi misc can sometimes get lost.
> > > 
> > > commit ed5f606fef22e515331aab4c1f927775cf4af70e
> > > Author: Matthias Kaehlcke <matthias@kaehlcke.net>
> > > Date:   Sun Mar 9 12:16:27 2008 +0100
> > > 
> > >     [SCSI] mpt fusion: convert inactive_list_mutex to a mutex
> > 
> > apologizes for my ignorance, which tree exactly should i have checked
> > for this patch? is it linux/kernel/git/jejb/scsi-misc-2.6.git? 
> 
> It's in the released kernel and has been there for the past two weeks.

i actually missed the mail notification and worked with outdated copy
of linus' tree ...

thanks for your patience and sorry for making you loose your time

-- 
Matthias Kaehlcke
Embedded Linux Engineer
Barcelona

     The assumption that what currently exists must necessarily
      exist is the acid that corrodes all visionary thinking
                                                                 .''`.
    using free software / Debian GNU/Linux | http://debian.org  : :'  :
                                                                `. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4                  `-

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Fusion MPT: Convert inactive_list_mutex in a mutex
  2008-05-05 15:21   ` Matthias Kaehlcke
@ 2008-05-05 15:28     ` James Bottomley
  2008-05-05 15:52       ` Matthias Kaehlcke
  0 siblings, 1 reply; 6+ messages in thread
From: James Bottomley @ 2008-05-05 15:28 UTC (permalink / raw)
  To: Matthias Kaehlcke
  Cc: Eric.Moore, support, DL-MPTFusionLinux, linux-scsi, linux-kernel, akpm

On Mon, 2008-05-05 at 17:21 +0200, Matthias Kaehlcke wrote:
> El Mon, May 05, 2008 at 09:26:06AM -0500 James Bottomley ha dit:
> 
> > On Sun, 2008-05-04 at 20:05 +0200, Matthias Kaehlcke wrote:
> > > MPT Fusion: The semaphore inactive_list_mutex is used as a
> > > mutex. Convert it to the mutex API
> > > 
> > > Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>
> > 
> > Um, it would at least vaguely help if you checked the tree; even
> > actually trying to apply the patch would have told you.  I know the
> > email notifications from scsi misc can sometimes get lost.
> > 
> > commit ed5f606fef22e515331aab4c1f927775cf4af70e
> > Author: Matthias Kaehlcke <matthias@kaehlcke.net>
> > Date:   Sun Mar 9 12:16:27 2008 +0100
> > 
> >     [SCSI] mpt fusion: convert inactive_list_mutex to a mutex
> 
> apologizes for my ignorance, which tree exactly should i have checked
> for this patch? is it linux/kernel/git/jejb/scsi-misc-2.6.git? 

It's in the released kernel and has been there for the past two weeks.

James



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Fusion MPT: Convert inactive_list_mutex in a mutex
  2008-05-05 14:26 ` James Bottomley
@ 2008-05-05 15:21   ` Matthias Kaehlcke
  2008-05-05 15:28     ` James Bottomley
  0 siblings, 1 reply; 6+ messages in thread
From: Matthias Kaehlcke @ 2008-05-05 15:21 UTC (permalink / raw)
  To: James Bottomley
  Cc: Eric.Moore, support, DL-MPTFusionLinux, linux-scsi, linux-kernel, akpm

El Mon, May 05, 2008 at 09:26:06AM -0500 James Bottomley ha dit:

> On Sun, 2008-05-04 at 20:05 +0200, Matthias Kaehlcke wrote:
> > MPT Fusion: The semaphore inactive_list_mutex is used as a
> > mutex. Convert it to the mutex API
> > 
> > Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>
> 
> Um, it would at least vaguely help if you checked the tree; even
> actually trying to apply the patch would have told you.  I know the
> email notifications from scsi misc can sometimes get lost.
> 
> commit ed5f606fef22e515331aab4c1f927775cf4af70e
> Author: Matthias Kaehlcke <matthias@kaehlcke.net>
> Date:   Sun Mar 9 12:16:27 2008 +0100
> 
>     [SCSI] mpt fusion: convert inactive_list_mutex to a mutex

apologizes for my ignorance, which tree exactly should i have checked
for this patch? is it linux/kernel/git/jejb/scsi-misc-2.6.git? 

regards

-- 
Matthias Kaehlcke
Embedded Linux Engineer
Barcelona

     Nationalism is an infantile disease. It is the measles of mankind
                         (Albert Einstein)
                                                                 .''`.
    using free software / Debian GNU/Linux | http://debian.org  : :'  :
                                                                `. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4                  `-

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] Fusion MPT: Convert inactive_list_mutex in a mutex
  2008-05-04 18:05 [PATCH] Fusion MPT: Convert " Matthias Kaehlcke
@ 2008-05-05 14:26 ` James Bottomley
  2008-05-05 15:21   ` Matthias Kaehlcke
  0 siblings, 1 reply; 6+ messages in thread
From: James Bottomley @ 2008-05-05 14:26 UTC (permalink / raw)
  To: Matthias Kaehlcke
  Cc: Eric.Moore, support, DL-MPTFusionLinux, linux-scsi, linux-kernel, akpm

On Sun, 2008-05-04 at 20:05 +0200, Matthias Kaehlcke wrote:
> MPT Fusion: The semaphore inactive_list_mutex is used as a
> mutex. Convert it to the mutex API
> 
> Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>

Um, it would at least vaguely help if you checked the tree; even
actually trying to apply the patch would have told you.  I know the
email notifications from scsi misc can sometimes get lost.

commit ed5f606fef22e515331aab4c1f927775cf4af70e
Author: Matthias Kaehlcke <matthias@kaehlcke.net>
Date:   Sun Mar 9 12:16:27 2008 +0100

    [SCSI] mpt fusion: convert inactive_list_mutex to a mutex

James



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] Fusion MPT: Convert inactive_list_mutex in a mutex
@ 2008-05-04 18:05 Matthias Kaehlcke
  2008-05-05 14:26 ` James Bottomley
  0 siblings, 1 reply; 6+ messages in thread
From: Matthias Kaehlcke @ 2008-05-04 18:05 UTC (permalink / raw)
  To: Eric.Moore, support, DL-MPTFusionLinux, linux-scsi; +Cc: linux-kernel, akpm

MPT Fusion: The semaphore inactive_list_mutex is used as a
mutex. Convert it to the mutex API

Signed-off-by: Matthias Kaehlcke <matthias@kaehlcke.net>

--

diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
index 0c303c8..06557f2 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -2136,7 +2136,7 @@ mpt_do_ioc_recovery(MPT_ADAPTER *ioc, u32 reason, int sleepFlag)
 		/*
 		 * Initalize link list for inactive raid volumes.
 		 */
-		init_MUTEX(&ioc->raid_data.inactive_list_mutex);
+		mutex_init(&ioc->raid_data.inactive_list_mutex);
 		INIT_LIST_HEAD(&ioc->raid_data.inactive_list);
 
 		if (ioc->bus_type == SAS) {
@@ -5122,13 +5122,13 @@ mpt_inactive_raid_list_free(MPT_ADAPTER *ioc)
 	if (list_empty(&ioc->raid_data.inactive_list))
 		return;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	list_for_each_entry_safe(component_info, pNext,
 	    &ioc->raid_data.inactive_list, list) {
 		list_del(&component_info->list);
 		kfree(component_info);
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 }
 
 /**
@@ -5187,7 +5187,7 @@ mpt_inactive_raid_volumes(MPT_ADAPTER *ioc, u8 channel, u8 id)
 	if (!handle_inactive_volumes)
 		goto out;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	for (i = 0; i < buffer->NumPhysDisks; i++) {
 		if(mpt_raid_phys_disk_pg0(ioc,
 		    buffer->PhysDisk[i].PhysDiskNum, &phys_disk) != 0)
@@ -5207,7 +5207,7 @@ mpt_inactive_raid_volumes(MPT_ADAPTER *ioc, u8 channel, u8 id)
 		list_add_tail(&component_info->list,
 		    &ioc->raid_data.inactive_list);
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 
  out:
 	if (buffer)
diff --git a/drivers/message/fusion/mptbase.h b/drivers/message/fusion/mptbase.h
index caadc68..4190e88 100644
--- a/drivers/message/fusion/mptbase.h
+++ b/drivers/message/fusion/mptbase.h
@@ -531,7 +531,7 @@ struct inactive_raid_component_info {
 typedef	struct _RaidCfgData {
 	IOCPage2_t	*pIocPg2;		/* table of Raid Volumes */
 	IOCPage3_t	*pIocPg3;		/* table of physical disks */
-	struct semaphore	inactive_list_mutex;
+	struct mutex	inactive_list_mutex;
 	struct list_head	inactive_list; /* link list for physical
 						disk that belong in
 						inactive volumes */
diff --git a/drivers/message/fusion/mptscsih.c b/drivers/message/fusion/mptscsih.c
index af1de0c..4e70ef4 100644
--- a/drivers/message/fusion/mptscsih.c
+++ b/drivers/message/fusion/mptscsih.c
@@ -2295,14 +2295,14 @@ mptscsih_is_phys_disk(MPT_ADAPTER *ioc, u8 channel, u8 id)
 	if (list_empty(&ioc->raid_data.inactive_list))
 		goto out;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	list_for_each_entry(component_info, &ioc->raid_data.inactive_list,
 	    list) {
 		if ((component_info->d.PhysDiskID == id) &&
 		    (component_info->d.PhysDiskBus == channel))
 			rc = 1;
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 
  out:
 	return rc;
@@ -2332,14 +2332,14 @@ mptscsih_raid_id_to_num(MPT_ADAPTER *ioc, u8 channel, u8 id)
 	if (list_empty(&ioc->raid_data.inactive_list))
 		goto out;
 
-	down(&ioc->raid_data.inactive_list_mutex);
+	mutex_lock(&ioc->raid_data.inactive_list_mutex);
 	list_for_each_entry(component_info, &ioc->raid_data.inactive_list,
 	    list) {
 		if ((component_info->d.PhysDiskID == id) &&
 		    (component_info->d.PhysDiskBus == channel))
 			rc = component_info->d.PhysDiskNum;
 	}
-	up(&ioc->raid_data.inactive_list_mutex);
+	mutex_unlock(&ioc->raid_data.inactive_list_mutex);
 
  out:
 	return rc;

-- 
Matthias Kaehlcke
Embedded Linux Engineer
Barcelona


   Usually when people are sad, they don't do anything. They just cry over
     their condition. But when they get angry, they bring about a change
                              (Malcolm X)
                                                                 .''`.
    using free software / Debian GNU/Linux | http://debian.org  : :'  :
                                                                `. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4                  `-

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-05-05 15:52 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-09 11:16 [PATCH] Fusion MPT: convert inactive_list_mutex in a mutex Matthias Kaehlcke
2008-05-04 18:05 [PATCH] Fusion MPT: Convert " Matthias Kaehlcke
2008-05-05 14:26 ` James Bottomley
2008-05-05 15:21   ` Matthias Kaehlcke
2008-05-05 15:28     ` James Bottomley
2008-05-05 15:52       ` Matthias Kaehlcke

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).