[PATCH] sem2mutex: drivers/scsi/ide-scsi.c
Semaphore to mutex conversion. The conversion was generated via scripts, and the result was validated automatically via a script as well. Signed-off-by: Ingo Molnar <mingo@elte.hu> Cc: Jens Axboe <axboe@suse.de> Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
8ed965d612
commit
e723ccd805
@@ -47,6 +47,7 @@
|
|||||||
#include <linux/ide.h>
|
#include <linux/ide.h>
|
||||||
#include <linux/scatterlist.h>
|
#include <linux/scatterlist.h>
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
|
#include <linux/mutex.h>
|
||||||
|
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <asm/bitops.h>
|
#include <asm/bitops.h>
|
||||||
@@ -109,7 +110,7 @@ typedef struct ide_scsi_obj {
|
|||||||
unsigned long log; /* log flags */
|
unsigned long log; /* log flags */
|
||||||
} idescsi_scsi_t;
|
} idescsi_scsi_t;
|
||||||
|
|
||||||
static DECLARE_MUTEX(idescsi_ref_sem);
|
static DEFINE_MUTEX(idescsi_ref_mutex);
|
||||||
|
|
||||||
#define ide_scsi_g(disk) \
|
#define ide_scsi_g(disk) \
|
||||||
container_of((disk)->private_data, struct ide_scsi_obj, driver)
|
container_of((disk)->private_data, struct ide_scsi_obj, driver)
|
||||||
@@ -118,19 +119,19 @@ static struct ide_scsi_obj *ide_scsi_get(struct gendisk *disk)
|
|||||||
{
|
{
|
||||||
struct ide_scsi_obj *scsi = NULL;
|
struct ide_scsi_obj *scsi = NULL;
|
||||||
|
|
||||||
down(&idescsi_ref_sem);
|
mutex_lock(&idescsi_ref_mutex);
|
||||||
scsi = ide_scsi_g(disk);
|
scsi = ide_scsi_g(disk);
|
||||||
if (scsi)
|
if (scsi)
|
||||||
scsi_host_get(scsi->host);
|
scsi_host_get(scsi->host);
|
||||||
up(&idescsi_ref_sem);
|
mutex_unlock(&idescsi_ref_mutex);
|
||||||
return scsi;
|
return scsi;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ide_scsi_put(struct ide_scsi_obj *scsi)
|
static void ide_scsi_put(struct ide_scsi_obj *scsi)
|
||||||
{
|
{
|
||||||
down(&idescsi_ref_sem);
|
mutex_lock(&idescsi_ref_mutex);
|
||||||
scsi_host_put(scsi->host);
|
scsi_host_put(scsi->host);
|
||||||
up(&idescsi_ref_sem);
|
mutex_unlock(&idescsi_ref_mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline idescsi_scsi_t *scsihost_to_idescsi(struct Scsi_Host *host)
|
static inline idescsi_scsi_t *scsihost_to_idescsi(struct Scsi_Host *host)
|
||||||
|
Reference in New Issue
Block a user