diff --git a/iscsi-scst/kernel/session.c b/iscsi-scst/kernel/session.c index 63b248cdc..b9af48dfb 100644 --- a/iscsi-scst/kernel/session.c +++ b/iscsi-scst/kernel/session.c @@ -552,10 +552,9 @@ static ssize_t iscsi_sess_force_close_store(struct kobject *kobj, scst_sess = container_of(kobj, struct scst_session, sess_kobj); sess = (struct iscsi_session *)scst_sess_get_tgt_priv(scst_sess); - if (mutex_lock_interruptible(&sess->target->target_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&sess->target->target_mutex); + if (res != 0) goto out; - } iscsi_sess_force_close(sess); diff --git a/scst/src/dev_handlers/scst_vdisk.c b/scst/src/dev_handlers/scst_vdisk.c index d9c081dfa..6bbb11c56 100644 --- a/scst/src/dev_handlers/scst_vdisk.c +++ b/scst/src/dev_handlers/scst_vdisk.c @@ -4524,10 +4524,9 @@ static ssize_t vdisk_add_fileio_device(const char *device_name, char *params) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out; - } res = vdev_fileio_add_device(device_name, params); @@ -4544,10 +4543,9 @@ static ssize_t vdisk_add_blockio_device(const char *device_name, char *params) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out; - } res = vdev_blockio_add_device(device_name, params); @@ -4565,10 +4563,9 @@ static ssize_t vdisk_add_nullio_device(const char *device_name, char *params) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res) goto out; - } res = vdev_nullio_add_device(device_name, params); @@ -4608,10 +4605,9 @@ static ssize_t vdisk_del_device(const char *device_name) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out; - } virt_dev = vdev_find(device_name); if (virt_dev == NULL) { @@ -4693,10 +4689,9 @@ static ssize_t vcdrom_add_device(const char *device_name, char *params) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out; - } res = __vcdrom_add_device(device_name, params); @@ -4715,10 +4710,9 @@ static ssize_t vcdrom_del_device(const char *device_name) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out; - } virt_dev = vdev_find(device_name); if (virt_dev == NULL) { @@ -5434,10 +5428,9 @@ static int vdisk_read_proc(struct seq_file *seq, struct scst_dev_type *dev_type) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out; - } seq_printf(seq, "%-17s %-11s %-11s %-15s %-45s %-16s\n", "Name", "Size(MB)", "Block size", "Options", "File name", @@ -5525,10 +5518,9 @@ static int vdisk_write_proc(char *buffer, char **start, off_t offset, goto out; } - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out_free; - } p = i_buf; if (p[strlen(p) - 1] == '\n') @@ -5777,10 +5769,9 @@ static int vcdrom_read_proc(struct seq_file *seq, TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out; - } seq_printf(seq, "%-17s %-9s %s\n", "Name", "Size(MB)", "File name"); @@ -5931,10 +5922,9 @@ static int vcdrom_write_proc(char *buffer, char **start, off_t offset, goto out; } - if (mutex_lock_interruptible(&scst_vdisk_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_vdisk_mutex); + if (res != 0) goto out_free; - } p = i_buf; if (p[strlen(p) - 1] == '\n') diff --git a/scst/src/scst_lib.c b/scst/src/scst_lib.c index 4c8cc5b35..b78084b32 100644 --- a/scst/src/scst_lib.c +++ b/scst/src/scst_lib.c @@ -3251,10 +3251,9 @@ int gen_relative_target_port_id(uint16_t *id) TRACE_ENTRY(); - if (mutex_lock_interruptible(&scst_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_mutex); + if (res != 0) goto out; - } rti_prev = rti; do { diff --git a/scst/src/scst_main.c b/scst/src/scst_main.c index 167d84034..a3179ac26 100644 --- a/scst/src/scst_main.c +++ b/scst/src/scst_main.c @@ -743,10 +743,9 @@ int scst_suspend_activity(unsigned long timeout) #endif if (timeout != SCST_SUSPEND_TIMEOUT_UNLIMITED) { - if (mutex_lock_interruptible(&scst_suspend_mutex) != 0) { - res = -EINTR; + res = mutex_lock_interruptible(&scst_suspend_mutex); + if (res != 0) goto out; - } } else mutex_lock(&scst_suspend_mutex);