[SCSI] turn most scsi semaphores into mutexes
the scsi layer is using semaphores in a mutex way, this patch converts these into using mutexes instead Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
committed by
James Bottomley
parent
dacee84b07
commit
0b95067238
@ -25,6 +25,7 @@
|
||||
#include <linux/errno.h>
|
||||
#include <linux/blkdev.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
#include <scsi/scsi.h>
|
||||
@ -41,7 +42,7 @@
|
||||
static struct proc_dir_entry *proc_scsi;
|
||||
|
||||
/* Protect sht->present and sht->proc_dir */
|
||||
static DECLARE_MUTEX(global_host_template_sem);
|
||||
static DEFINE_MUTEX(global_host_template_mutex);
|
||||
|
||||
static int proc_scsi_read(char *buffer, char **start, off_t offset,
|
||||
int length, int *eof, void *data)
|
||||
@ -83,7 +84,7 @@ void scsi_proc_hostdir_add(struct scsi_host_template *sht)
|
||||
if (!sht->proc_info)
|
||||
return;
|
||||
|
||||
down(&global_host_template_sem);
|
||||
mutex_lock(&global_host_template_mutex);
|
||||
if (!sht->present++) {
|
||||
sht->proc_dir = proc_mkdir(sht->proc_name, proc_scsi);
|
||||
if (!sht->proc_dir)
|
||||
@ -92,7 +93,7 @@ void scsi_proc_hostdir_add(struct scsi_host_template *sht)
|
||||
else
|
||||
sht->proc_dir->owner = sht->module;
|
||||
}
|
||||
up(&global_host_template_sem);
|
||||
mutex_unlock(&global_host_template_mutex);
|
||||
}
|
||||
|
||||
void scsi_proc_hostdir_rm(struct scsi_host_template *sht)
|
||||
@ -100,12 +101,12 @@ void scsi_proc_hostdir_rm(struct scsi_host_template *sht)
|
||||
if (!sht->proc_info)
|
||||
return;
|
||||
|
||||
down(&global_host_template_sem);
|
||||
mutex_lock(&global_host_template_mutex);
|
||||
if (!--sht->present && sht->proc_dir) {
|
||||
remove_proc_entry(sht->proc_name, proc_scsi);
|
||||
sht->proc_dir = NULL;
|
||||
}
|
||||
up(&global_host_template_sem);
|
||||
mutex_unlock(&global_host_template_mutex);
|
||||
}
|
||||
|
||||
void scsi_proc_host_add(struct Scsi_Host *shost)
|
||||
|
Reference in New Issue
Block a user