All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] scsi_debug cleanup
@ 2015-02-18 22:31 Tomas Winkler
  2015-02-18 22:31 ` [PATCH 1/4] scsi_debug: define pr_fmt() for consistent logging Tomas Winkler
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Tomas Winkler @ 2015-02-18 22:31 UTC (permalink / raw)
  To: James E.J. Bottomley"; +Cc: linux-scsi, Tomas Winkler

I did some minor code cleanups while playing with 
scsi_debug module

Tomas Winkler (4):
  scsi_debug: define pr_fmt() for consistent logging
  scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of
    SAM2_WLUN_REPORT_LUNS;
  scsi_debug: vfree is null safe so drop the check
  scsi_debug: make dump_sector static

 drivers/scsi/scsi_debug.c | 143 ++++++++++++++++++++--------------------------
 1 file changed, 63 insertions(+), 80 deletions(-)

-- 
1.9.3


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

* [PATCH 1/4] scsi_debug: define pr_fmt() for consistent logging
  2015-02-18 22:31 [PATCH 0/4] scsi_debug cleanup Tomas Winkler
@ 2015-02-18 22:31 ` Tomas Winkler
  2015-02-23 18:19   ` Douglas Gilbert
  2015-02-18 22:31 ` [PATCH 2/4] scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS; Tomas Winkler
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 9+ messages in thread
From: Tomas Winkler @ 2015-02-18 22:31 UTC (permalink / raw)
  To: James E.J. Bottomley"; +Cc: linux-scsi, Tomas Winkler

Use pr_fmt with both module name and __func__
Also drop few bare printk leftovers

The log format should stay pretty much intact

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
---
 drivers/scsi/scsi_debug.c | 118 +++++++++++++++++++++-------------------------
 1 file changed, 53 insertions(+), 65 deletions(-)

diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
index 8bcf6ad0d765..14e73f27c27f 100644
--- a/drivers/scsi/scsi_debug.c
+++ b/drivers/scsi/scsi_debug.c
@@ -25,6 +25,9 @@
  *        module options to "modprobe scsi_debug num_tgts=2" [20021221]
  */
 
+
+#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__
+
 #include <linux/module.h>
 
 #include <linux/kernel.h>
@@ -2450,8 +2453,7 @@ static int dif_verify(struct sd_dif_tuple *sdt, const void *data,
 	__be16 csum = dif_compute_csum(data, scsi_debug_sector_size);
 
 	if (sdt->guard_tag != csum) {
-		pr_err("%s: GUARD check failed on sector %lu rcvd 0x%04x, data 0x%04x\n",
-			__func__,
+		pr_err("GUARD check failed on sector %lu rcvd 0x%04x, data 0x%04x\n",
 			(unsigned long)sector,
 			be16_to_cpu(sdt->guard_tag),
 			be16_to_cpu(csum));
@@ -2459,14 +2461,14 @@ static int dif_verify(struct sd_dif_tuple *sdt, const void *data,
 	}
 	if (scsi_debug_dif == SD_DIF_TYPE1_PROTECTION &&
 	    be32_to_cpu(sdt->ref_tag) != (sector & 0xffffffff)) {
-		pr_err("%s: REF check failed on sector %lu\n",
-			__func__, (unsigned long)sector);
+		pr_err("REF check failed on sector %lu\n",
+			(unsigned long)sector);
 		return 0x03;
 	}
 	if (scsi_debug_dif == SD_DIF_TYPE2_PROTECTION &&
 	    be32_to_cpu(sdt->ref_tag) != ei_lba) {
-		pr_err("%s: REF check failed on sector %lu\n",
-			__func__, (unsigned long)sector);
+		pr_err("REF check failed on sector %lu\n",
+			(unsigned long)sector);
 		return 0x03;
 	}
 	return 0;
@@ -3453,7 +3455,7 @@ static void sdebug_q_cmd_complete(unsigned long indx)
 	atomic_inc(&sdebug_completions);
 	qa_indx = indx;
 	if ((qa_indx < 0) || (qa_indx >= SCSI_DEBUG_CANQUEUE)) {
-		pr_err("%s: wild qa_indx=%d\n", __func__, qa_indx);
+		pr_err("wild qa_indx=%d\n", qa_indx);
 		return;
 	}
 	spin_lock_irqsave(&queued_arr_lock, iflags);
@@ -3461,21 +3463,21 @@ static void sdebug_q_cmd_complete(unsigned long indx)
 	scp = sqcp->a_cmnd;
 	if (NULL == scp) {
 		spin_unlock_irqrestore(&queued_arr_lock, iflags);
-		pr_err("%s: scp is NULL\n", __func__);
+		pr_err("scp is NULL\n");
 		return;
 	}
 	devip = (struct sdebug_dev_info *)scp->device->hostdata;
 	if (devip)
 		atomic_dec(&devip->num_in_q);
 	else
-		pr_err("%s: devip=NULL\n", __func__);
+		pr_err("devip=NULL\n");
 	if (atomic_read(&retired_max_queue) > 0)
 		retiring = 1;
 
 	sqcp->a_cmnd = NULL;
 	if (!test_and_clear_bit(qa_indx, queued_in_use_bm)) {
 		spin_unlock_irqrestore(&queued_arr_lock, iflags);
-		pr_err("%s: Unexpected completion\n", __func__);
+		pr_err("Unexpected completion\n");
 		return;
 	}
 
@@ -3485,7 +3487,7 @@ static void sdebug_q_cmd_complete(unsigned long indx)
 		retval = atomic_read(&retired_max_queue);
 		if (qa_indx >= retval) {
 			spin_unlock_irqrestore(&queued_arr_lock, iflags);
-			pr_err("%s: index %d too large\n", __func__, retval);
+			pr_err("index %d too large\n", retval);
 			return;
 		}
 		k = find_last_bit(queued_in_use_bm, retval);
@@ -3513,7 +3515,7 @@ sdebug_q_cmd_hrt_complete(struct hrtimer *timer)
 	atomic_inc(&sdebug_completions);
 	qa_indx = sd_hrtp->qa_indx;
 	if ((qa_indx < 0) || (qa_indx >= SCSI_DEBUG_CANQUEUE)) {
-		pr_err("%s: wild qa_indx=%d\n", __func__, qa_indx);
+		pr_err("wild qa_indx=%d\n", qa_indx);
 		goto the_end;
 	}
 	spin_lock_irqsave(&queued_arr_lock, iflags);
@@ -3521,21 +3523,21 @@ sdebug_q_cmd_hrt_complete(struct hrtimer *timer)
 	scp = sqcp->a_cmnd;
 	if (NULL == scp) {
 		spin_unlock_irqrestore(&queued_arr_lock, iflags);
-		pr_err("%s: scp is NULL\n", __func__);
+		pr_err("scp is NULL\n");
 		goto the_end;
 	}
 	devip = (struct sdebug_dev_info *)scp->device->hostdata;
 	if (devip)
 		atomic_dec(&devip->num_in_q);
 	else
-		pr_err("%s: devip=NULL\n", __func__);
+		pr_err("devip=NULL\n");
 	if (atomic_read(&retired_max_queue) > 0)
 		retiring = 1;
 
 	sqcp->a_cmnd = NULL;
 	if (!test_and_clear_bit(qa_indx, queued_in_use_bm)) {
 		spin_unlock_irqrestore(&queued_arr_lock, iflags);
-		pr_err("%s: Unexpected completion\n", __func__);
+		pr_err("Unexpected completion\n");
 		goto the_end;
 	}
 
@@ -3545,7 +3547,7 @@ sdebug_q_cmd_hrt_complete(struct hrtimer *timer)
 		retval = atomic_read(&retired_max_queue);
 		if (qa_indx >= retval) {
 			spin_unlock_irqrestore(&queued_arr_lock, iflags);
-			pr_err("%s: index %d too large\n", __func__, retval);
+			pr_err("index %d too large\n", retval);
 			goto the_end;
 		}
 		k = find_last_bit(queued_in_use_bm, retval);
@@ -3584,7 +3586,7 @@ static struct sdebug_dev_info * devInfoReg(struct scsi_device * sdev)
 		return devip;
 	sdbg_host = *(struct sdebug_host_info **)shost_priv(sdev->host);
 	if (!sdbg_host) {
-		pr_err("%s: Host info NULL\n", __func__);
+		pr_err("Host info NULL\n");
 		return NULL;
         }
 	list_for_each_entry(devip, &sdbg_host->dev_info_list, dev_list) {
@@ -3600,8 +3602,7 @@ static struct sdebug_dev_info * devInfoReg(struct scsi_device * sdev)
 	if (!open_devip) { /* try and make a new one */
 		open_devip = sdebug_device_create(sdbg_host, GFP_ATOMIC);
 		if (!open_devip) {
-			printk(KERN_ERR "%s: out of memory at line %d\n",
-				__func__, __LINE__);
+			pr_err("out of memory at line %d\n", __LINE__);
 			return NULL;
 		}
 	}
@@ -3619,7 +3620,7 @@ static struct sdebug_dev_info * devInfoReg(struct scsi_device * sdev)
 static int scsi_debug_slave_alloc(struct scsi_device *sdp)
 {
 	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
-		printk(KERN_INFO "scsi_debug: slave_alloc <%u %u %u %llu>\n",
+		pr_info("slave_alloc <%u %u %u %llu>\n",
 		       sdp->host->host_no, sdp->channel, sdp->id, sdp->lun);
 	queue_flag_set_unlocked(QUEUE_FLAG_BIDI, sdp->request_queue);
 	return 0;
@@ -3630,7 +3631,7 @@ static int scsi_debug_slave_configure(struct scsi_device *sdp)
 	struct sdebug_dev_info *devip;
 
 	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
-		printk(KERN_INFO "scsi_debug: slave_configure <%u %u %u %llu>\n",
+		pr_info("slave_configure <%u %u %u %llu>\n",
 		       sdp->host->host_no, sdp->channel, sdp->id, sdp->lun);
 	if (sdp->host->max_cmd_len != SCSI_DEBUG_MAX_CMD_LEN)
 		sdp->host->max_cmd_len = SCSI_DEBUG_MAX_CMD_LEN;
@@ -3650,7 +3651,7 @@ static void scsi_debug_slave_destroy(struct scsi_device *sdp)
 		(struct sdebug_dev_info *)sdp->hostdata;
 
 	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
-		printk(KERN_INFO "scsi_debug: slave_destroy <%u %u %u %llu>\n",
+		pr_info("slave_destroy <%u %u %u %llu>\n",
 		       sdp->host->host_no, sdp->channel, sdp->id, sdp->lun);
 	if (devip) {
 		/* make this slot available for re-use */
@@ -3901,8 +3902,7 @@ static void __init sdebug_build_parts(unsigned char *ramp,
 		return;
 	if (scsi_debug_num_parts > SDEBUG_MAX_PARTS) {
 		scsi_debug_num_parts = SDEBUG_MAX_PARTS;
-		pr_warn("%s: reducing partitions to %d\n", __func__,
-			SDEBUG_MAX_PARTS);
+		pr_warn("reducing partitions to %d\n", SDEBUG_MAX_PARTS);
 	}
 	num_sectors = (int)sdebug_store_sectors;
 	sectors_per_part = (num_sectors - sdebug_sectors_per)
@@ -3949,8 +3949,7 @@ schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
 	struct scsi_device *sdp = cmnd->device;
 
 	if (NULL == cmnd || NULL == devip) {
-		pr_warn("%s: called with NULL cmnd or devip pointer\n",
-			__func__);
+		pr_warn("called with NULL cmnd or devip pointer\n");
 		/* no particularly good error to report back */
 		return SCSI_MLQUEUE_HOST_BUSY;
 	}
@@ -4387,8 +4386,7 @@ static ssize_t fake_rw_store(struct device_driver *ddp, const char *buf,
 
 				fake_storep = vmalloc(sz);
 				if (NULL == fake_storep) {
-					pr_err("%s: out of memory, 9\n",
-					       __func__);
+					pr_err("out of memory, 9\n");
 					return -ENOMEM;
 				}
 				memset(fake_storep, 0, sz);
@@ -4788,8 +4786,7 @@ static int __init scsi_debug_init(void)
 	atomic_set(&retired_max_queue, 0);
 
 	if (scsi_debug_ndelay >= 1000000000) {
-		pr_warn("%s: ndelay must be less than 1 second, ignored\n",
-			__func__);
+		pr_warn("ndelay must be less than 1 second, ignored\n");
 		scsi_debug_ndelay = 0;
 	} else if (scsi_debug_ndelay > 0)
 		scsi_debug_delay = DELAY_OVERRIDDEN;
@@ -4801,8 +4798,7 @@ static int __init scsi_debug_init(void)
 	case 4096:
 		break;
 	default:
-		pr_err("%s: invalid sector_size %d\n", __func__,
-		       scsi_debug_sector_size);
+		pr_err("invalid sector_size %d\n", scsi_debug_sector_size);
 		return -EINVAL;
 	}
 
@@ -4815,29 +4811,28 @@ static int __init scsi_debug_init(void)
 		break;
 
 	default:
-		pr_err("%s: dif must be 0, 1, 2 or 3\n", __func__);
+		pr_err("dif must be 0, 1, 2 or 3\n");
 		return -EINVAL;
 	}
 
 	if (scsi_debug_guard > 1) {
-		pr_err("%s: guard must be 0 or 1\n", __func__);
+		pr_err("guard must be 0 or 1\n");
 		return -EINVAL;
 	}
 
 	if (scsi_debug_ato > 1) {
-		pr_err("%s: ato must be 0 or 1\n", __func__);
+		pr_err("ato must be 0 or 1\n");
 		return -EINVAL;
 	}
 
 	if (scsi_debug_physblk_exp > 15) {
-		pr_err("%s: invalid physblk_exp %u\n", __func__,
-		       scsi_debug_physblk_exp);
+		pr_err("invalid physblk_exp %u\n", scsi_debug_physblk_exp);
 		return -EINVAL;
 	}
 
 	if (scsi_debug_lowest_aligned > 0x3fff) {
-		pr_err("%s: lowest_aligned too big: %u\n", __func__,
-		       scsi_debug_lowest_aligned);
+		pr_err("lowest_aligned too big: %u\n",
+			scsi_debug_lowest_aligned);
 		return -EINVAL;
 	}
 
@@ -4867,7 +4862,7 @@ static int __init scsi_debug_init(void)
 	if (0 == scsi_debug_fake_rw) {
 		fake_storep = vmalloc(sz);
 		if (NULL == fake_storep) {
-			pr_err("%s: out of memory, 1\n", __func__);
+			pr_err("out of memory, 1\n");
 			return -ENOMEM;
 		}
 		memset(fake_storep, 0, sz);
@@ -4881,11 +4876,10 @@ static int __init scsi_debug_init(void)
 		dif_size = sdebug_store_sectors * sizeof(struct sd_dif_tuple);
 		dif_storep = vmalloc(dif_size);
 
-		pr_err("%s: dif_storep %u bytes @ %p\n", __func__, dif_size,
-			dif_storep);
+		pr_err("dif_storep %u bytes @ %p\n", dif_size, dif_storep);
 
 		if (dif_storep == NULL) {
-			pr_err("%s: out of mem. (DIX)\n", __func__);
+			pr_err("out of mem. (DIX)\n");
 			ret = -ENOMEM;
 			goto free_vm;
 		}
@@ -4907,18 +4901,17 @@ static int __init scsi_debug_init(void)
 		if (scsi_debug_unmap_alignment &&
 		    scsi_debug_unmap_granularity <=
 		    scsi_debug_unmap_alignment) {
-			pr_err("%s: ERR: unmap_granularity <= unmap_alignment\n",
-			       __func__);
+			pr_err("ERR: unmap_granularity <= unmap_alignment\n");
 			return -EINVAL;
 		}
 
 		map_size = lba_to_map_index(sdebug_store_sectors - 1) + 1;
 		map_storep = vmalloc(BITS_TO_LONGS(map_size) * sizeof(long));
 
-		pr_info("%s: %lu provisioning blocks\n", __func__, map_size);
+		pr_info("%lu provisioning blocks\n", map_size);
 
 		if (map_storep == NULL) {
-			pr_err("%s: out of mem. (MAP)\n", __func__);
+			pr_err("out of mem. (MAP)\n");
 			ret = -ENOMEM;
 			goto free_vm;
 		}
@@ -4932,18 +4925,18 @@ static int __init scsi_debug_init(void)
 
 	pseudo_primary = root_device_register("pseudo_0");
 	if (IS_ERR(pseudo_primary)) {
-		pr_warn("%s: root_device_register() error\n", __func__);
+		pr_warn("root_device_register() error\n");
 		ret = PTR_ERR(pseudo_primary);
 		goto free_vm;
 	}
 	ret = bus_register(&pseudo_lld_bus);
 	if (ret < 0) {
-		pr_warn("%s: bus_register error: %d\n", __func__, ret);
+		pr_warn("bus_register error: %d\n", ret);
 		goto dev_unreg;
 	}
 	ret = driver_register(&sdebug_driverfs_driver);
 	if (ret < 0) {
-		pr_warn("%s: driver_register error: %d\n", __func__, ret);
+		pr_warn("driver_register error: %d\n", ret);
 		goto bus_unreg;
 	}
 
@@ -4952,16 +4945,14 @@ static int __init scsi_debug_init(void)
 
         for (k = 0; k < host_to_add; k++) {
                 if (sdebug_add_adapter()) {
-			pr_err("%s: sdebug_add_adapter failed k=%d\n",
-				__func__, k);
+			pr_err("sdebug_add_adapter failed k=%d\n", k);
                         break;
                 }
         }
 
-	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts) {
-		pr_info("%s: built %d host(s)\n", __func__,
-			scsi_debug_add_host);
-	}
+	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
+		pr_info("built %d host(s)\n", scsi_debug_add_host);
+
 	return 0;
 
 bus_unreg:
@@ -5016,8 +5007,7 @@ static int sdebug_add_adapter(void)
 
         sdbg_host = kzalloc(sizeof(*sdbg_host),GFP_KERNEL);
         if (NULL == sdbg_host) {
-                printk(KERN_ERR "%s: out of memory at line %d\n",
-                       __func__, __LINE__);
+		pr_err("out of memory at line %d\n", __LINE__);
                 return -ENOMEM;
         }
 
@@ -5027,8 +5017,7 @@ static int sdebug_add_adapter(void)
         for (k = 0; k < devs_per_host; k++) {
 		sdbg_devinfo = sdebug_device_create(sdbg_host, GFP_KERNEL);
 		if (!sdbg_devinfo) {
-                        printk(KERN_ERR "%s: out of memory at line %d\n",
-                               __func__, __LINE__);
+			pr_err("out of memory at line %d\n", __LINE__);
                         error = -ENOMEM;
 			goto clean;
                 }
@@ -5342,7 +5331,7 @@ static int sdebug_driver_probe(struct device * dev)
 		sdebug_driver_template.use_clustering = ENABLE_CLUSTERING;
 	hpnt = scsi_host_alloc(&sdebug_driver_template, sizeof(sdbg_host));
 	if (NULL == hpnt) {
-		pr_err("%s: scsi_host_alloc failed\n", __func__);
+		pr_err("scsi_host_alloc failed\n");
 		error = -ENODEV;
 		return error;
 	}
@@ -5385,7 +5374,7 @@ static int sdebug_driver_probe(struct device * dev)
 
 	scsi_host_set_prot(hpnt, host_prot);
 
-	printk(KERN_INFO "scsi_debug: host protection%s%s%s%s%s%s%s\n",
+	pr_info("host protection%s%s%s%s%s%s%s\n",
 	       (host_prot & SHOST_DIF_TYPE1_PROTECTION) ? " DIF1" : "",
 	       (host_prot & SHOST_DIF_TYPE2_PROTECTION) ? " DIF2" : "",
 	       (host_prot & SHOST_DIF_TYPE3_PROTECTION) ? " DIF3" : "",
@@ -5413,7 +5402,7 @@ static int sdebug_driver_probe(struct device * dev)
 
         error = scsi_add_host(hpnt, &sdbg_host->dev);
         if (error) {
-                printk(KERN_ERR "%s: scsi_add_host failed\n", __func__);
+		pr_err("scsi_add_host failed\n");
                 error = -ENODEV;
 		scsi_host_put(hpnt);
         } else
@@ -5430,8 +5419,7 @@ static int sdebug_driver_remove(struct device * dev)
 	sdbg_host = to_sdebug_host(dev);
 
 	if (!sdbg_host) {
-		printk(KERN_ERR "%s: Unable to locate host info\n",
-		       __func__);
+		pr_err("Unable to locate host info\n");
 		return -ENODEV;
 	}
 
-- 
1.9.3


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

* [PATCH 2/4] scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS;
  2015-02-18 22:31 [PATCH 0/4] scsi_debug cleanup Tomas Winkler
  2015-02-18 22:31 ` [PATCH 1/4] scsi_debug: define pr_fmt() for consistent logging Tomas Winkler
@ 2015-02-18 22:31 ` Tomas Winkler
  2015-02-23 18:20   ` Douglas Gilbert
  2015-02-18 22:31 ` [PATCH 3/4] scsi_debug: vfree is null safe so drop the check Tomas Winkler
  2015-02-18 22:31 ` [PATCH 4/4] scsi_debug: make dump_sector static Tomas Winkler
  3 siblings, 1 reply; 9+ messages in thread
From: Tomas Winkler @ 2015-02-18 22:31 UTC (permalink / raw)
  To: James E.J. Bottomley"; +Cc: linux-scsi, Tomas Winkler

use SCSI_W_LUN_REPORT_LUNS from scsi.h instead of localy defined
SAM2_WLUN_REPORT_LUNS

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
---
 drivers/scsi/scsi_debug.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
index 14e73f27c27f..11774cd1741a 100644
--- a/drivers/scsi/scsi_debug.c
+++ b/drivers/scsi/scsi_debug.c
@@ -204,7 +204,6 @@ static const char *scsi_debug_version_date = "20141022";
 /* If REPORT LUNS has luns >= 256 it can choose "flat space" (value 1)
  * or "peripheral device" addressing (value 0) */
 #define SAM2_LUN_ADDRESS_METHOD 0
-#define SAM2_WLUN_REPORT_LUNS 0xc101
 
 /* SCSI_DEBUG_CANQUEUE is the maximum number of commands that can be queued
  * (for response) at one time. Can be reduced by max_queue option. Command
@@ -701,7 +700,7 @@ static void sdebug_max_tgts_luns(void)
 		else
 			hpnt->max_id = scsi_debug_num_tgts;
 		/* scsi_debug_max_luns; */
-		hpnt->max_lun = SAM2_WLUN_REPORT_LUNS;
+		hpnt->max_lun = SCSI_W_LUN_REPORT_LUNS;
 	}
 	spin_unlock(&sdebug_host_list_lock);
 }
@@ -1291,7 +1290,7 @@ static int resp_inquiry(struct scsi_cmnd *scp, struct sdebug_dev_info *devip)
 	arr = kzalloc(SDEBUG_MAX_INQ_ARR_SZ, GFP_ATOMIC);
 	if (! arr)
 		return DID_REQUEUE << 16;
-	have_wlun = (scp->device->lun == SAM2_WLUN_REPORT_LUNS);
+	have_wlun = (scp->device->lun == SCSI_W_LUN_REPORT_LUNS);
 	if (have_wlun)
 		pq_pdt = 0x1e;	/* present, wlun */
 	else if (scsi_debug_no_lun_0 && (0 == devip->lun))
@@ -3371,8 +3370,8 @@ static int resp_report_luns(struct scsi_cmnd * scp,
 		one_lun[i].scsi_lun[1] = lun & 0xff;
 	}
 	if (want_wlun) {
-		one_lun[i].scsi_lun[0] = (SAM2_WLUN_REPORT_LUNS >> 8) & 0xff;
-		one_lun[i].scsi_lun[1] = SAM2_WLUN_REPORT_LUNS & 0xff;
+		one_lun[i].scsi_lun[0] = (SCSI_W_LUN_REPORT_LUNS >> 8) & 0xff;
+		one_lun[i].scsi_lun[1] = SCSI_W_LUN_REPORT_LUNS & 0xff;
 		i++;
 	}
 	alloc_len = (unsigned char *)(one_lun + i) - arr;
@@ -5171,7 +5170,7 @@ scsi_debug_queuecommand(struct scsi_cmnd *scp)
 		}
 		sdev_printk(KERN_INFO, sdp, "%s: cmd %s\n", my_name, b);
 	}
-	has_wlun_rl = (sdp->lun == SAM2_WLUN_REPORT_LUNS);
+	has_wlun_rl = (sdp->lun == SCSI_W_LUN_REPORT_LUNS);
 	if ((sdp->lun >= scsi_debug_max_luns) && !has_wlun_rl)
 		return schedule_resp(scp, NULL, errsts_no_connect, 0);
 
@@ -5342,7 +5341,7 @@ static int sdebug_driver_probe(struct device * dev)
 		hpnt->max_id = scsi_debug_num_tgts + 1;
 	else
 		hpnt->max_id = scsi_debug_num_tgts;
-	hpnt->max_lun = SAM2_WLUN_REPORT_LUNS;	/* = scsi_debug_max_luns; */
+	hpnt->max_lun = SCSI_W_LUN_REPORT_LUNS;	/* = scsi_debug_max_luns; */
 
 	host_prot = 0;
 
-- 
1.9.3


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

* [PATCH 3/4] scsi_debug: vfree is null safe so drop the check
  2015-02-18 22:31 [PATCH 0/4] scsi_debug cleanup Tomas Winkler
  2015-02-18 22:31 ` [PATCH 1/4] scsi_debug: define pr_fmt() for consistent logging Tomas Winkler
  2015-02-18 22:31 ` [PATCH 2/4] scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS; Tomas Winkler
@ 2015-02-18 22:31 ` Tomas Winkler
  2015-02-23 18:23   ` Douglas Gilbert
  2015-02-18 22:31 ` [PATCH 4/4] scsi_debug: make dump_sector static Tomas Winkler
  3 siblings, 1 reply; 9+ messages in thread
From: Tomas Winkler @ 2015-02-18 22:31 UTC (permalink / raw)
  To: James E.J. Bottomley"; +Cc: linux-scsi, Tomas Winkler

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
---
 drivers/scsi/scsi_debug.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
index 11774cd1741a..80410f9588ba 100644
--- a/drivers/scsi/scsi_debug.c
+++ b/drivers/scsi/scsi_debug.c
@@ -4959,10 +4959,8 @@ bus_unreg:
 dev_unreg:
 	root_device_unregister(pseudo_primary);
 free_vm:
-	if (map_storep)
-		vfree(map_storep);
-	if (dif_storep)
-		vfree(dif_storep);
+	vfree(map_storep);
+	vfree(dif_storep);
 	vfree(fake_storep);
 
 	return ret;
@@ -4980,9 +4978,7 @@ static void __exit scsi_debug_exit(void)
 	bus_unregister(&pseudo_lld_bus);
 	root_device_unregister(pseudo_primary);
 
-	if (dif_storep)
-		vfree(dif_storep);
-
+	vfree(dif_storep);
 	vfree(fake_storep);
 }
 
-- 
1.9.3


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

* [PATCH 4/4] scsi_debug: make dump_sector static
  2015-02-18 22:31 [PATCH 0/4] scsi_debug cleanup Tomas Winkler
                   ` (2 preceding siblings ...)
  2015-02-18 22:31 ` [PATCH 3/4] scsi_debug: vfree is null safe so drop the check Tomas Winkler
@ 2015-02-18 22:31 ` Tomas Winkler
  2015-02-23 18:23   ` Douglas Gilbert
  3 siblings, 1 reply; 9+ messages in thread
From: Tomas Winkler @ 2015-02-18 22:31 UTC (permalink / raw)
  To: James E.J. Bottomley"; +Cc: linux-scsi, Tomas Winkler

fixes warning:
warning: no previous prototype for ‘dump_sector’

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
---
 drivers/scsi/scsi_debug.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
index 80410f9588ba..ccbe1282e975 100644
--- a/drivers/scsi/scsi_debug.c
+++ b/drivers/scsi/scsi_debug.c
@@ -2685,7 +2685,7 @@ resp_read_dt0(struct scsi_cmnd *scp, struct sdebug_dev_info *devip)
 	return 0;
 }
 
-void dump_sector(unsigned char *buf, int len)
+static void dump_sector(unsigned char *buf, int len)
 {
 	int i, j, n;
 
-- 
1.9.3

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

* Re: [PATCH 1/4] scsi_debug: define pr_fmt() for consistent logging
  2015-02-18 22:31 ` [PATCH 1/4] scsi_debug: define pr_fmt() for consistent logging Tomas Winkler
@ 2015-02-23 18:19   ` Douglas Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Douglas Gilbert @ 2015-02-23 18:19 UTC (permalink / raw)
  To: Tomas Winkler, James E.J. Bottomley"; +Cc: linux-scsi

On 15-02-18 05:31 PM, Tomas Winkler wrote:
> Use pr_fmt with both module name and __func__
> Also drop few bare printk leftovers
>
> The log format should stay pretty much intact
>
> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>

Acked-by: Douglas Gilbert <dgilbert@interlog.com>

> ---
>   drivers/scsi/scsi_debug.c | 118 +++++++++++++++++++++-------------------------
>   1 file changed, 53 insertions(+), 65 deletions(-)
>
> diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
> index 8bcf6ad0d765..14e73f27c27f 100644
> --- a/drivers/scsi/scsi_debug.c
> +++ b/drivers/scsi/scsi_debug.c
> @@ -25,6 +25,9 @@
>    *        module options to "modprobe scsi_debug num_tgts=2" [20021221]
>    */
>
> +
> +#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__
> +
>   #include <linux/module.h>
>
>   #include <linux/kernel.h>
> @@ -2450,8 +2453,7 @@ static int dif_verify(struct sd_dif_tuple *sdt, const void *data,
>   	__be16 csum = dif_compute_csum(data, scsi_debug_sector_size);
>
>   	if (sdt->guard_tag != csum) {
> -		pr_err("%s: GUARD check failed on sector %lu rcvd 0x%04x, data 0x%04x\n",
> -			__func__,
> +		pr_err("GUARD check failed on sector %lu rcvd 0x%04x, data 0x%04x\n",
>   			(unsigned long)sector,
>   			be16_to_cpu(sdt->guard_tag),
>   			be16_to_cpu(csum));
> @@ -2459,14 +2461,14 @@ static int dif_verify(struct sd_dif_tuple *sdt, const void *data,
>   	}
>   	if (scsi_debug_dif == SD_DIF_TYPE1_PROTECTION &&
>   	    be32_to_cpu(sdt->ref_tag) != (sector & 0xffffffff)) {
> -		pr_err("%s: REF check failed on sector %lu\n",
> -			__func__, (unsigned long)sector);
> +		pr_err("REF check failed on sector %lu\n",
> +			(unsigned long)sector);
>   		return 0x03;
>   	}
>   	if (scsi_debug_dif == SD_DIF_TYPE2_PROTECTION &&
>   	    be32_to_cpu(sdt->ref_tag) != ei_lba) {
> -		pr_err("%s: REF check failed on sector %lu\n",
> -			__func__, (unsigned long)sector);
> +		pr_err("REF check failed on sector %lu\n",
> +			(unsigned long)sector);
>   		return 0x03;
>   	}
>   	return 0;
> @@ -3453,7 +3455,7 @@ static void sdebug_q_cmd_complete(unsigned long indx)
>   	atomic_inc(&sdebug_completions);
>   	qa_indx = indx;
>   	if ((qa_indx < 0) || (qa_indx >= SCSI_DEBUG_CANQUEUE)) {
> -		pr_err("%s: wild qa_indx=%d\n", __func__, qa_indx);
> +		pr_err("wild qa_indx=%d\n", qa_indx);
>   		return;
>   	}
>   	spin_lock_irqsave(&queued_arr_lock, iflags);
> @@ -3461,21 +3463,21 @@ static void sdebug_q_cmd_complete(unsigned long indx)
>   	scp = sqcp->a_cmnd;
>   	if (NULL == scp) {
>   		spin_unlock_irqrestore(&queued_arr_lock, iflags);
> -		pr_err("%s: scp is NULL\n", __func__);
> +		pr_err("scp is NULL\n");
>   		return;
>   	}
>   	devip = (struct sdebug_dev_info *)scp->device->hostdata;
>   	if (devip)
>   		atomic_dec(&devip->num_in_q);
>   	else
> -		pr_err("%s: devip=NULL\n", __func__);
> +		pr_err("devip=NULL\n");
>   	if (atomic_read(&retired_max_queue) > 0)
>   		retiring = 1;
>
>   	sqcp->a_cmnd = NULL;
>   	if (!test_and_clear_bit(qa_indx, queued_in_use_bm)) {
>   		spin_unlock_irqrestore(&queued_arr_lock, iflags);
> -		pr_err("%s: Unexpected completion\n", __func__);
> +		pr_err("Unexpected completion\n");
>   		return;
>   	}
>
> @@ -3485,7 +3487,7 @@ static void sdebug_q_cmd_complete(unsigned long indx)
>   		retval = atomic_read(&retired_max_queue);
>   		if (qa_indx >= retval) {
>   			spin_unlock_irqrestore(&queued_arr_lock, iflags);
> -			pr_err("%s: index %d too large\n", __func__, retval);
> +			pr_err("index %d too large\n", retval);
>   			return;
>   		}
>   		k = find_last_bit(queued_in_use_bm, retval);
> @@ -3513,7 +3515,7 @@ sdebug_q_cmd_hrt_complete(struct hrtimer *timer)
>   	atomic_inc(&sdebug_completions);
>   	qa_indx = sd_hrtp->qa_indx;
>   	if ((qa_indx < 0) || (qa_indx >= SCSI_DEBUG_CANQUEUE)) {
> -		pr_err("%s: wild qa_indx=%d\n", __func__, qa_indx);
> +		pr_err("wild qa_indx=%d\n", qa_indx);
>   		goto the_end;
>   	}
>   	spin_lock_irqsave(&queued_arr_lock, iflags);
> @@ -3521,21 +3523,21 @@ sdebug_q_cmd_hrt_complete(struct hrtimer *timer)
>   	scp = sqcp->a_cmnd;
>   	if (NULL == scp) {
>   		spin_unlock_irqrestore(&queued_arr_lock, iflags);
> -		pr_err("%s: scp is NULL\n", __func__);
> +		pr_err("scp is NULL\n");
>   		goto the_end;
>   	}
>   	devip = (struct sdebug_dev_info *)scp->device->hostdata;
>   	if (devip)
>   		atomic_dec(&devip->num_in_q);
>   	else
> -		pr_err("%s: devip=NULL\n", __func__);
> +		pr_err("devip=NULL\n");
>   	if (atomic_read(&retired_max_queue) > 0)
>   		retiring = 1;
>
>   	sqcp->a_cmnd = NULL;
>   	if (!test_and_clear_bit(qa_indx, queued_in_use_bm)) {
>   		spin_unlock_irqrestore(&queued_arr_lock, iflags);
> -		pr_err("%s: Unexpected completion\n", __func__);
> +		pr_err("Unexpected completion\n");
>   		goto the_end;
>   	}
>
> @@ -3545,7 +3547,7 @@ sdebug_q_cmd_hrt_complete(struct hrtimer *timer)
>   		retval = atomic_read(&retired_max_queue);
>   		if (qa_indx >= retval) {
>   			spin_unlock_irqrestore(&queued_arr_lock, iflags);
> -			pr_err("%s: index %d too large\n", __func__, retval);
> +			pr_err("index %d too large\n", retval);
>   			goto the_end;
>   		}
>   		k = find_last_bit(queued_in_use_bm, retval);
> @@ -3584,7 +3586,7 @@ static struct sdebug_dev_info * devInfoReg(struct scsi_device * sdev)
>   		return devip;
>   	sdbg_host = *(struct sdebug_host_info **)shost_priv(sdev->host);
>   	if (!sdbg_host) {
> -		pr_err("%s: Host info NULL\n", __func__);
> +		pr_err("Host info NULL\n");
>   		return NULL;
>           }
>   	list_for_each_entry(devip, &sdbg_host->dev_info_list, dev_list) {
> @@ -3600,8 +3602,7 @@ static struct sdebug_dev_info * devInfoReg(struct scsi_device * sdev)
>   	if (!open_devip) { /* try and make a new one */
>   		open_devip = sdebug_device_create(sdbg_host, GFP_ATOMIC);
>   		if (!open_devip) {
> -			printk(KERN_ERR "%s: out of memory at line %d\n",
> -				__func__, __LINE__);
> +			pr_err("out of memory at line %d\n", __LINE__);
>   			return NULL;
>   		}
>   	}
> @@ -3619,7 +3620,7 @@ static struct sdebug_dev_info * devInfoReg(struct scsi_device * sdev)
>   static int scsi_debug_slave_alloc(struct scsi_device *sdp)
>   {
>   	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
> -		printk(KERN_INFO "scsi_debug: slave_alloc <%u %u %u %llu>\n",
> +		pr_info("slave_alloc <%u %u %u %llu>\n",
>   		       sdp->host->host_no, sdp->channel, sdp->id, sdp->lun);
>   	queue_flag_set_unlocked(QUEUE_FLAG_BIDI, sdp->request_queue);
>   	return 0;
> @@ -3630,7 +3631,7 @@ static int scsi_debug_slave_configure(struct scsi_device *sdp)
>   	struct sdebug_dev_info *devip;
>
>   	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
> -		printk(KERN_INFO "scsi_debug: slave_configure <%u %u %u %llu>\n",
> +		pr_info("slave_configure <%u %u %u %llu>\n",
>   		       sdp->host->host_no, sdp->channel, sdp->id, sdp->lun);
>   	if (sdp->host->max_cmd_len != SCSI_DEBUG_MAX_CMD_LEN)
>   		sdp->host->max_cmd_len = SCSI_DEBUG_MAX_CMD_LEN;
> @@ -3650,7 +3651,7 @@ static void scsi_debug_slave_destroy(struct scsi_device *sdp)
>   		(struct sdebug_dev_info *)sdp->hostdata;
>
>   	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
> -		printk(KERN_INFO "scsi_debug: slave_destroy <%u %u %u %llu>\n",
> +		pr_info("slave_destroy <%u %u %u %llu>\n",
>   		       sdp->host->host_no, sdp->channel, sdp->id, sdp->lun);
>   	if (devip) {
>   		/* make this slot available for re-use */
> @@ -3901,8 +3902,7 @@ static void __init sdebug_build_parts(unsigned char *ramp,
>   		return;
>   	if (scsi_debug_num_parts > SDEBUG_MAX_PARTS) {
>   		scsi_debug_num_parts = SDEBUG_MAX_PARTS;
> -		pr_warn("%s: reducing partitions to %d\n", __func__,
> -			SDEBUG_MAX_PARTS);
> +		pr_warn("reducing partitions to %d\n", SDEBUG_MAX_PARTS);
>   	}
>   	num_sectors = (int)sdebug_store_sectors;
>   	sectors_per_part = (num_sectors - sdebug_sectors_per)
> @@ -3949,8 +3949,7 @@ schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
>   	struct scsi_device *sdp = cmnd->device;
>
>   	if (NULL == cmnd || NULL == devip) {
> -		pr_warn("%s: called with NULL cmnd or devip pointer\n",
> -			__func__);
> +		pr_warn("called with NULL cmnd or devip pointer\n");
>   		/* no particularly good error to report back */
>   		return SCSI_MLQUEUE_HOST_BUSY;
>   	}
> @@ -4387,8 +4386,7 @@ static ssize_t fake_rw_store(struct device_driver *ddp, const char *buf,
>
>   				fake_storep = vmalloc(sz);
>   				if (NULL == fake_storep) {
> -					pr_err("%s: out of memory, 9\n",
> -					       __func__);
> +					pr_err("out of memory, 9\n");
>   					return -ENOMEM;
>   				}
>   				memset(fake_storep, 0, sz);
> @@ -4788,8 +4786,7 @@ static int __init scsi_debug_init(void)
>   	atomic_set(&retired_max_queue, 0);
>
>   	if (scsi_debug_ndelay >= 1000000000) {
> -		pr_warn("%s: ndelay must be less than 1 second, ignored\n",
> -			__func__);
> +		pr_warn("ndelay must be less than 1 second, ignored\n");
>   		scsi_debug_ndelay = 0;
>   	} else if (scsi_debug_ndelay > 0)
>   		scsi_debug_delay = DELAY_OVERRIDDEN;
> @@ -4801,8 +4798,7 @@ static int __init scsi_debug_init(void)
>   	case 4096:
>   		break;
>   	default:
> -		pr_err("%s: invalid sector_size %d\n", __func__,
> -		       scsi_debug_sector_size);
> +		pr_err("invalid sector_size %d\n", scsi_debug_sector_size);
>   		return -EINVAL;
>   	}
>
> @@ -4815,29 +4811,28 @@ static int __init scsi_debug_init(void)
>   		break;
>
>   	default:
> -		pr_err("%s: dif must be 0, 1, 2 or 3\n", __func__);
> +		pr_err("dif must be 0, 1, 2 or 3\n");
>   		return -EINVAL;
>   	}
>
>   	if (scsi_debug_guard > 1) {
> -		pr_err("%s: guard must be 0 or 1\n", __func__);
> +		pr_err("guard must be 0 or 1\n");
>   		return -EINVAL;
>   	}
>
>   	if (scsi_debug_ato > 1) {
> -		pr_err("%s: ato must be 0 or 1\n", __func__);
> +		pr_err("ato must be 0 or 1\n");
>   		return -EINVAL;
>   	}
>
>   	if (scsi_debug_physblk_exp > 15) {
> -		pr_err("%s: invalid physblk_exp %u\n", __func__,
> -		       scsi_debug_physblk_exp);
> +		pr_err("invalid physblk_exp %u\n", scsi_debug_physblk_exp);
>   		return -EINVAL;
>   	}
>
>   	if (scsi_debug_lowest_aligned > 0x3fff) {
> -		pr_err("%s: lowest_aligned too big: %u\n", __func__,
> -		       scsi_debug_lowest_aligned);
> +		pr_err("lowest_aligned too big: %u\n",
> +			scsi_debug_lowest_aligned);
>   		return -EINVAL;
>   	}
>
> @@ -4867,7 +4862,7 @@ static int __init scsi_debug_init(void)
>   	if (0 == scsi_debug_fake_rw) {
>   		fake_storep = vmalloc(sz);
>   		if (NULL == fake_storep) {
> -			pr_err("%s: out of memory, 1\n", __func__);
> +			pr_err("out of memory, 1\n");
>   			return -ENOMEM;
>   		}
>   		memset(fake_storep, 0, sz);
> @@ -4881,11 +4876,10 @@ static int __init scsi_debug_init(void)
>   		dif_size = sdebug_store_sectors * sizeof(struct sd_dif_tuple);
>   		dif_storep = vmalloc(dif_size);
>
> -		pr_err("%s: dif_storep %u bytes @ %p\n", __func__, dif_size,
> -			dif_storep);
> +		pr_err("dif_storep %u bytes @ %p\n", dif_size, dif_storep);
>
>   		if (dif_storep == NULL) {
> -			pr_err("%s: out of mem. (DIX)\n", __func__);
> +			pr_err("out of mem. (DIX)\n");
>   			ret = -ENOMEM;
>   			goto free_vm;
>   		}
> @@ -4907,18 +4901,17 @@ static int __init scsi_debug_init(void)
>   		if (scsi_debug_unmap_alignment &&
>   		    scsi_debug_unmap_granularity <=
>   		    scsi_debug_unmap_alignment) {
> -			pr_err("%s: ERR: unmap_granularity <= unmap_alignment\n",
> -			       __func__);
> +			pr_err("ERR: unmap_granularity <= unmap_alignment\n");
>   			return -EINVAL;
>   		}
>
>   		map_size = lba_to_map_index(sdebug_store_sectors - 1) + 1;
>   		map_storep = vmalloc(BITS_TO_LONGS(map_size) * sizeof(long));
>
> -		pr_info("%s: %lu provisioning blocks\n", __func__, map_size);
> +		pr_info("%lu provisioning blocks\n", map_size);
>
>   		if (map_storep == NULL) {
> -			pr_err("%s: out of mem. (MAP)\n", __func__);
> +			pr_err("out of mem. (MAP)\n");
>   			ret = -ENOMEM;
>   			goto free_vm;
>   		}
> @@ -4932,18 +4925,18 @@ static int __init scsi_debug_init(void)
>
>   	pseudo_primary = root_device_register("pseudo_0");
>   	if (IS_ERR(pseudo_primary)) {
> -		pr_warn("%s: root_device_register() error\n", __func__);
> +		pr_warn("root_device_register() error\n");
>   		ret = PTR_ERR(pseudo_primary);
>   		goto free_vm;
>   	}
>   	ret = bus_register(&pseudo_lld_bus);
>   	if (ret < 0) {
> -		pr_warn("%s: bus_register error: %d\n", __func__, ret);
> +		pr_warn("bus_register error: %d\n", ret);
>   		goto dev_unreg;
>   	}
>   	ret = driver_register(&sdebug_driverfs_driver);
>   	if (ret < 0) {
> -		pr_warn("%s: driver_register error: %d\n", __func__, ret);
> +		pr_warn("driver_register error: %d\n", ret);
>   		goto bus_unreg;
>   	}
>
> @@ -4952,16 +4945,14 @@ static int __init scsi_debug_init(void)
>
>           for (k = 0; k < host_to_add; k++) {
>                   if (sdebug_add_adapter()) {
> -			pr_err("%s: sdebug_add_adapter failed k=%d\n",
> -				__func__, k);
> +			pr_err("sdebug_add_adapter failed k=%d\n", k);
>                           break;
>                   }
>           }
>
> -	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts) {
> -		pr_info("%s: built %d host(s)\n", __func__,
> -			scsi_debug_add_host);
> -	}
> +	if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
> +		pr_info("built %d host(s)\n", scsi_debug_add_host);
> +
>   	return 0;
>
>   bus_unreg:
> @@ -5016,8 +5007,7 @@ static int sdebug_add_adapter(void)
>
>           sdbg_host = kzalloc(sizeof(*sdbg_host),GFP_KERNEL);
>           if (NULL == sdbg_host) {
> -                printk(KERN_ERR "%s: out of memory at line %d\n",
> -                       __func__, __LINE__);
> +		pr_err("out of memory at line %d\n", __LINE__);
>                   return -ENOMEM;
>           }
>
> @@ -5027,8 +5017,7 @@ static int sdebug_add_adapter(void)
>           for (k = 0; k < devs_per_host; k++) {
>   		sdbg_devinfo = sdebug_device_create(sdbg_host, GFP_KERNEL);
>   		if (!sdbg_devinfo) {
> -                        printk(KERN_ERR "%s: out of memory at line %d\n",
> -                               __func__, __LINE__);
> +			pr_err("out of memory at line %d\n", __LINE__);
>                           error = -ENOMEM;
>   			goto clean;
>                   }
> @@ -5342,7 +5331,7 @@ static int sdebug_driver_probe(struct device * dev)
>   		sdebug_driver_template.use_clustering = ENABLE_CLUSTERING;
>   	hpnt = scsi_host_alloc(&sdebug_driver_template, sizeof(sdbg_host));
>   	if (NULL == hpnt) {
> -		pr_err("%s: scsi_host_alloc failed\n", __func__);
> +		pr_err("scsi_host_alloc failed\n");
>   		error = -ENODEV;
>   		return error;
>   	}
> @@ -5385,7 +5374,7 @@ static int sdebug_driver_probe(struct device * dev)
>
>   	scsi_host_set_prot(hpnt, host_prot);
>
> -	printk(KERN_INFO "scsi_debug: host protection%s%s%s%s%s%s%s\n",
> +	pr_info("host protection%s%s%s%s%s%s%s\n",
>   	       (host_prot & SHOST_DIF_TYPE1_PROTECTION) ? " DIF1" : "",
>   	       (host_prot & SHOST_DIF_TYPE2_PROTECTION) ? " DIF2" : "",
>   	       (host_prot & SHOST_DIF_TYPE3_PROTECTION) ? " DIF3" : "",
> @@ -5413,7 +5402,7 @@ static int sdebug_driver_probe(struct device * dev)
>
>           error = scsi_add_host(hpnt, &sdbg_host->dev);
>           if (error) {
> -                printk(KERN_ERR "%s: scsi_add_host failed\n", __func__);
> +		pr_err("scsi_add_host failed\n");
>                   error = -ENODEV;
>   		scsi_host_put(hpnt);
>           } else
> @@ -5430,8 +5419,7 @@ static int sdebug_driver_remove(struct device * dev)
>   	sdbg_host = to_sdebug_host(dev);
>
>   	if (!sdbg_host) {
> -		printk(KERN_ERR "%s: Unable to locate host info\n",
> -		       __func__);
> +		pr_err("Unable to locate host info\n");
>   		return -ENODEV;
>   	}
>
>


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

* Re: [PATCH 2/4] scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS;
  2015-02-18 22:31 ` [PATCH 2/4] scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS; Tomas Winkler
@ 2015-02-23 18:20   ` Douglas Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Douglas Gilbert @ 2015-02-23 18:20 UTC (permalink / raw)
  To: Tomas Winkler, James E.J. Bottomley"; +Cc: linux-scsi

On 15-02-18 05:31 PM, Tomas Winkler wrote:
> use SCSI_W_LUN_REPORT_LUNS from scsi.h instead of localy defined
> SAM2_WLUN_REPORT_LUNS
>
> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>

Acked-by: Douglas Gilbert <dgilbert@interlog.com>

> ---
>   drivers/scsi/scsi_debug.c | 13 ++++++-------
>   1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
> index 14e73f27c27f..11774cd1741a 100644
> --- a/drivers/scsi/scsi_debug.c
> +++ b/drivers/scsi/scsi_debug.c
> @@ -204,7 +204,6 @@ static const char *scsi_debug_version_date = "20141022";
>   /* If REPORT LUNS has luns >= 256 it can choose "flat space" (value 1)
>    * or "peripheral device" addressing (value 0) */
>   #define SAM2_LUN_ADDRESS_METHOD 0
> -#define SAM2_WLUN_REPORT_LUNS 0xc101
>
>   /* SCSI_DEBUG_CANQUEUE is the maximum number of commands that can be queued
>    * (for response) at one time. Can be reduced by max_queue option. Command
> @@ -701,7 +700,7 @@ static void sdebug_max_tgts_luns(void)
>   		else
>   			hpnt->max_id = scsi_debug_num_tgts;
>   		/* scsi_debug_max_luns; */
> -		hpnt->max_lun = SAM2_WLUN_REPORT_LUNS;
> +		hpnt->max_lun = SCSI_W_LUN_REPORT_LUNS;
>   	}
>   	spin_unlock(&sdebug_host_list_lock);
>   }
> @@ -1291,7 +1290,7 @@ static int resp_inquiry(struct scsi_cmnd *scp, struct sdebug_dev_info *devip)
>   	arr = kzalloc(SDEBUG_MAX_INQ_ARR_SZ, GFP_ATOMIC);
>   	if (! arr)
>   		return DID_REQUEUE << 16;
> -	have_wlun = (scp->device->lun == SAM2_WLUN_REPORT_LUNS);
> +	have_wlun = (scp->device->lun == SCSI_W_LUN_REPORT_LUNS);
>   	if (have_wlun)
>   		pq_pdt = 0x1e;	/* present, wlun */
>   	else if (scsi_debug_no_lun_0 && (0 == devip->lun))
> @@ -3371,8 +3370,8 @@ static int resp_report_luns(struct scsi_cmnd * scp,
>   		one_lun[i].scsi_lun[1] = lun & 0xff;
>   	}
>   	if (want_wlun) {
> -		one_lun[i].scsi_lun[0] = (SAM2_WLUN_REPORT_LUNS >> 8) & 0xff;
> -		one_lun[i].scsi_lun[1] = SAM2_WLUN_REPORT_LUNS & 0xff;
> +		one_lun[i].scsi_lun[0] = (SCSI_W_LUN_REPORT_LUNS >> 8) & 0xff;
> +		one_lun[i].scsi_lun[1] = SCSI_W_LUN_REPORT_LUNS & 0xff;
>   		i++;
>   	}
>   	alloc_len = (unsigned char *)(one_lun + i) - arr;
> @@ -5171,7 +5170,7 @@ scsi_debug_queuecommand(struct scsi_cmnd *scp)
>   		}
>   		sdev_printk(KERN_INFO, sdp, "%s: cmd %s\n", my_name, b);
>   	}
> -	has_wlun_rl = (sdp->lun == SAM2_WLUN_REPORT_LUNS);
> +	has_wlun_rl = (sdp->lun == SCSI_W_LUN_REPORT_LUNS);
>   	if ((sdp->lun >= scsi_debug_max_luns) && !has_wlun_rl)
>   		return schedule_resp(scp, NULL, errsts_no_connect, 0);
>
> @@ -5342,7 +5341,7 @@ static int sdebug_driver_probe(struct device * dev)
>   		hpnt->max_id = scsi_debug_num_tgts + 1;
>   	else
>   		hpnt->max_id = scsi_debug_num_tgts;
> -	hpnt->max_lun = SAM2_WLUN_REPORT_LUNS;	/* = scsi_debug_max_luns; */
> +	hpnt->max_lun = SCSI_W_LUN_REPORT_LUNS;	/* = scsi_debug_max_luns; */
>
>   	host_prot = 0;
>
>


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

* Re: [PATCH 3/4] scsi_debug: vfree is null safe so drop the check
  2015-02-18 22:31 ` [PATCH 3/4] scsi_debug: vfree is null safe so drop the check Tomas Winkler
@ 2015-02-23 18:23   ` Douglas Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Douglas Gilbert @ 2015-02-23 18:23 UTC (permalink / raw)
  To: Tomas Winkler, James E.J. Bottomley"; +Cc: linux-scsi

On 15-02-18 05:31 PM, Tomas Winkler wrote:
> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>

James and Christoph,
Please ignore this patch. I have just acked a more comprehensive
patch on this code from SF Markus Elfring.

Doug Gilbert

> ---
>   drivers/scsi/scsi_debug.c | 10 +++-------
>   1 file changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
> index 11774cd1741a..80410f9588ba 100644
> --- a/drivers/scsi/scsi_debug.c
> +++ b/drivers/scsi/scsi_debug.c
> @@ -4959,10 +4959,8 @@ bus_unreg:
>   dev_unreg:
>   	root_device_unregister(pseudo_primary);
>   free_vm:
> -	if (map_storep)
> -		vfree(map_storep);
> -	if (dif_storep)
> -		vfree(dif_storep);
> +	vfree(map_storep);
> +	vfree(dif_storep);
>   	vfree(fake_storep);
>
>   	return ret;
> @@ -4980,9 +4978,7 @@ static void __exit scsi_debug_exit(void)
>   	bus_unregister(&pseudo_lld_bus);
>   	root_device_unregister(pseudo_primary);
>
> -	if (dif_storep)
> -		vfree(dif_storep);
> -
> +	vfree(dif_storep);
>   	vfree(fake_storep);
>   }
>
>


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

* Re: [PATCH 4/4] scsi_debug: make dump_sector static
  2015-02-18 22:31 ` [PATCH 4/4] scsi_debug: make dump_sector static Tomas Winkler
@ 2015-02-23 18:23   ` Douglas Gilbert
  0 siblings, 0 replies; 9+ messages in thread
From: Douglas Gilbert @ 2015-02-23 18:23 UTC (permalink / raw)
  To: Tomas Winkler, James E.J. Bottomley"; +Cc: linux-scsi

On 15-02-18 05:31 PM, Tomas Winkler wrote:
> fixes warning:
> warning: no previous prototype for ‘dump_sector’
>
> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>

Acked-by: Douglas Gilbert <dgilbert@interlog.com>

> ---
>   drivers/scsi/scsi_debug.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
> index 80410f9588ba..ccbe1282e975 100644
> --- a/drivers/scsi/scsi_debug.c
> +++ b/drivers/scsi/scsi_debug.c
> @@ -2685,7 +2685,7 @@ resp_read_dt0(struct scsi_cmnd *scp, struct sdebug_dev_info *devip)
>   	return 0;
>   }
>
> -void dump_sector(unsigned char *buf, int len)
> +static void dump_sector(unsigned char *buf, int len)
>   {
>   	int i, j, n;
>
>

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2015-02-23 18:24 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-18 22:31 [PATCH 0/4] scsi_debug cleanup Tomas Winkler
2015-02-18 22:31 ` [PATCH 1/4] scsi_debug: define pr_fmt() for consistent logging Tomas Winkler
2015-02-23 18:19   ` Douglas Gilbert
2015-02-18 22:31 ` [PATCH 2/4] scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS; Tomas Winkler
2015-02-23 18:20   ` Douglas Gilbert
2015-02-18 22:31 ` [PATCH 3/4] scsi_debug: vfree is null safe so drop the check Tomas Winkler
2015-02-23 18:23   ` Douglas Gilbert
2015-02-18 22:31 ` [PATCH 4/4] scsi_debug: make dump_sector static Tomas Winkler
2015-02-23 18:23   ` Douglas Gilbert

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.