* [patch] pktcdvd: silence static checker warning
@ 2013-05-16 8:11 ` Dan Carpenter
0 siblings, 0 replies; 38+ messages in thread
From: Dan Carpenter @ 2013-05-16 8:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: linux-kernel, kernel-janitors
Static checkers complain about widening the binary "not" operations here
because sectors are u64 and "(pd)->settings.size" is unsigned int.
It unintentionally clears the high 32 bits of the sector. This means
that the driver won't work for devices with over 2TB of space. Since
this is a DVD drive, we're unlikely to reach that limit, but we may as
well silence the warning.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 898fa74..09142c4 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -83,7 +83,8 @@
#define MAX_SPEED 0xffff
-#define ZONE(sector, pd) (((sector) + (pd)->offset) & ~((pd)->settings.size - 1))
+#define ZONE(sector, pd) (((sector) + (pd)->offset) & \
+ ~(sector_t)((pd)->settings.size - 1))
static DEFINE_MUTEX(pktcdvd_mutex);
static struct pktcdvd_device *pkt_devs[MAX_WRITERS];
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [patch] pktcdvd: silence static checker warning
@ 2013-05-16 8:11 ` Dan Carpenter
0 siblings, 0 replies; 38+ messages in thread
From: Dan Carpenter @ 2013-05-16 8:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: linux-kernel, kernel-janitors
Static checkers complain about widening the binary "not" operations here
because sectors are u64 and "(pd)->settings.size" is unsigned int.
It unintentionally clears the high 32 bits of the sector. This means
that the driver won't work for devices with over 2TB of space. Since
this is a DVD drive, we're unlikely to reach that limit, but we may as
well silence the warning.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 898fa74..09142c4 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -83,7 +83,8 @@
#define MAX_SPEED 0xffff
-#define ZONE(sector, pd) (((sector) + (pd)->offset) & ~((pd)->settings.size - 1))
+#define ZONE(sector, pd) (((sector) + (pd)->offset) & \
+ ~(sector_t)((pd)->settings.size - 1))
static DEFINE_MUTEX(pktcdvd_mutex);
static struct pktcdvd_device *pkt_devs[MAX_WRITERS];
^ permalink raw reply related [flat|nested] 38+ messages in thread
* Re: [patch] pktcdvd: silence static checker warning
2013-05-16 8:11 ` Dan Carpenter
@ 2013-05-29 13:37 ` Jiri Kosina
-1 siblings, 0 replies; 38+ messages in thread
From: Jiri Kosina @ 2013-05-29 13:37 UTC (permalink / raw)
To: Dan Carpenter; +Cc: linux-kernel, kernel-janitors
On Thu, 16 May 2013, Dan Carpenter wrote:
> Static checkers complain about widening the binary "not" operations here
> because sectors are u64 and "(pd)->settings.size" is unsigned int.
> It unintentionally clears the high 32 bits of the sector. This means
> that the driver won't work for devices with over 2TB of space. Since
> this is a DVD drive, we're unlikely to reach that limit, but we may as
> well silence the warning.
>
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
> index 898fa74..09142c4 100644
> --- a/drivers/block/pktcdvd.c
> +++ b/drivers/block/pktcdvd.c
> @@ -83,7 +83,8 @@
>
> #define MAX_SPEED 0xffff
>
> -#define ZONE(sector, pd) (((sector) + (pd)->offset) & ~((pd)->settings.size - 1))
> +#define ZONE(sector, pd) (((sector) + (pd)->offset) & \
> + ~(sector_t)((pd)->settings.size - 1))
>
> static DEFINE_MUTEX(pktcdvd_mutex);
> static struct pktcdvd_device *pkt_devs[MAX_WRITERS];
Makes sense. Applied, thanks Dan.
--
Jiri Kosina
SUSE Labs
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [patch] pktcdvd: silence static checker warning
@ 2013-05-29 13:37 ` Jiri Kosina
0 siblings, 0 replies; 38+ messages in thread
From: Jiri Kosina @ 2013-05-29 13:37 UTC (permalink / raw)
To: Dan Carpenter; +Cc: linux-kernel, kernel-janitors
On Thu, 16 May 2013, Dan Carpenter wrote:
> Static checkers complain about widening the binary "not" operations here
> because sectors are u64 and "(pd)->settings.size" is unsigned int.
> It unintentionally clears the high 32 bits of the sector. This means
> that the driver won't work for devices with over 2TB of space. Since
> this is a DVD drive, we're unlikely to reach that limit, but we may as
> well silence the warning.
>
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
> index 898fa74..09142c4 100644
> --- a/drivers/block/pktcdvd.c
> +++ b/drivers/block/pktcdvd.c
> @@ -83,7 +83,8 @@
>
> #define MAX_SPEED 0xffff
>
> -#define ZONE(sector, pd) (((sector) + (pd)->offset) & ~((pd)->settings.size - 1))
> +#define ZONE(sector, pd) (((sector) + (pd)->offset) & \
> + ~(sector_t)((pd)->settings.size - 1))
>
> static DEFINE_MUTEX(pktcdvd_mutex);
> static struct pktcdvd_device *pkt_devs[MAX_WRITERS];
Makes sense. Applied, thanks Dan.
--
Jiri Kosina
SUSE Labs
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH 0/3] pktcdvd: A few more neatenings
2013-05-29 13:37 ` Jiri Kosina
(?)
@ 2013-05-30 20:57 ` Joe Perches
2013-05-30 20:57 ` [PATCH 1/3] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
` (3 more replies)
-1 siblings, 4 replies; 38+ messages in thread
From: Joe Perches @ 2013-05-30 20:57 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, linux-kernel
Joe Perches (3):
pktcdvd: Convert ZONE macro to static function get_zone()
pktcdvd: Convert printk to pr_<level>
pktcdvd: Consolidate DPRINTK and VPRINTK macros
drivers/block/pktcdvd.c | 248 ++++++++++++++++++++++++------------------------
1 file changed, 126 insertions(+), 122 deletions(-)
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH 1/3] pktcdvd: Convert ZONE macro to static function get_zone()
2013-05-30 20:57 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
@ 2013-05-30 20:57 ` Joe Perches
2013-05-30 20:57 ` [PATCH 2/3] pktcdvd: Convert printk to pr_<level> Joe Perches
` (2 subsequent siblings)
3 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-05-30 20:57 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, linux-kernel
Macros should be converted to functions where feasible to
verify arguments and the like.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 09142c4..635f6cb 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -60,7 +60,7 @@
#include <linux/mutex.h>
#include <linux/slab.h>
#include <scsi/scsi_cmnd.h>
-#include <scsi/scsi_ioctl.h>
+l#include <scsi/scsi_ioctl.h>
#include <scsi/scsi.h>
#include <linux/debugfs.h>
#include <linux/device.h>
@@ -83,9 +83,6 @@
#define MAX_SPEED 0xffff
-#define ZONE(sector, pd) (((sector) + (pd)->offset) & \
- ~(sector_t)((pd)->settings.size - 1))
-
static DEFINE_MUTEX(pktcdvd_mutex);
static struct pktcdvd_device *pkt_devs[MAX_WRITERS];
static struct proc_dir_entry *pkt_proc;
@@ -103,7 +100,10 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev);
static int pkt_remove_dev(dev_t pkt_dev);
static int pkt_seq_show(struct seq_file *m, void *p);
-
+static sector_t get_zone(sector_t sector, struct pktcdvd_device *pd)
+{
+ return (sector + pd->offset) & ~(sector_t)(pd->settings.size - 1);
+}
/*
* create and register a pktcdvd kernel object.
@@ -1226,7 +1226,7 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
node = first_node;
while (node) {
bio = node->bio;
- zone = ZONE(bio->bi_sector, pd);
+ zone = get_zone(bio->bi_sector, pd);
list_for_each_entry(p, &pd->cdrw.pkt_active_list, list) {
if (p->sector == zone) {
bio = NULL;
@@ -1266,8 +1266,8 @@ try_next_bio:
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
VPRINTK("pkt_handle_queue: found zone=%llx\n",
- (unsigned long long)ZONE(bio->bi_sector, pd));
- if (ZONE(bio->bi_sector, pd) != zone)
+ (unsigned long long)get_zone(bio->bi_sector, pd));
+ if (get_zone(bio->bi_sector, pd) != zone)
break;
pkt_rbtree_erase(pd, node);
spin_lock(&pkt->lock);
@@ -2397,7 +2397,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
- zone = ZONE(bio->bi_sector, pd);
+ zone = get_zone(bio->bi_sector, pd);
VPRINTK("pkt_make_request: start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2408,7 +2408,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
sector_t last_zone;
int first_sectors;
- last_zone = ZONE(bio_end_sector(bio) - 1, pd);
+ last_zone = get_zone(bio_end_sector(bio) - 1, pd);
if (last_zone != zone) {
BUG_ON(last_zone != zone + pd->settings.size);
first_sectors = last_zone - bio->bi_sector;
@@ -2503,7 +2503,7 @@ static int pkt_merge_bvec(struct request_queue *q, struct bvec_merge_data *bmd,
struct bio_vec *bvec)
{
struct pktcdvd_device *pd = q->queuedata;
- sector_t zone = ZONE(bmd->bi_sector, pd);
+ sector_t zone = get_zone(bmd->bi_sector, pd);
int used = ((bmd->bi_sector - zone) << 9) + bmd->bi_size;
int remaining = (pd->settings.size << 9) - used;
int remaining2;
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH 2/3] pktcdvd: Convert printk to pr_<level>
2013-05-30 20:57 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
2013-05-30 20:57 ` [PATCH 1/3] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
@ 2013-05-30 20:57 ` Joe Perches
2013-05-31 19:44 ` Andy Shevchenko
2013-05-30 20:57 ` [PATCH 3/3] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
2013-05-31 5:37 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
3 siblings, 1 reply; 38+ messages in thread
From: Joe Perches @ 2013-05-30 20:57 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, linux-kernel
Use a more current logging style and add messages levels
to the logging messages.
Convert bare printks to pr_cont where appropriate and
add a simple function to emit the sense string.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 123 +++++++++++++++++++++++++-----------------------
1 file changed, 64 insertions(+), 59 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 635f6cb..ff08de1 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -44,6 +44,8 @@
*
*************************************************************************/
+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+
#include <linux/pktcdvd.h>
#include <linux/module.h>
#include <linux/types.h>
@@ -60,7 +62,7 @@
#include <linux/mutex.h>
#include <linux/slab.h>
#include <scsi/scsi_cmnd.h>
-l#include <scsi/scsi_ioctl.h>
+#include <scsi/scsi_ioctl.h>
#include <scsi/scsi.h>
#include <linux/debugfs.h>
#include <linux/device.h>
@@ -424,7 +426,7 @@ static int pkt_sysfs_init(void)
if (ret) {
kfree(class_pktcdvd);
class_pktcdvd = NULL;
- printk(DRIVER_NAME": failed to create class pktcdvd\n");
+ pr_err("failed to create class pktcdvd\n");
return ret;
}
return 0;
@@ -734,36 +736,37 @@ out:
return ret;
}
+static const char *sense_key_string(__u8 index)
+{
+ static const char *info[9] = {
+ "No sense", "Recovered error", "Not ready",
+ "Medium error", "Hardware error", "Illegal request",
+ "Unit attention", "Data protect", "Blank check"
+ };
+ if (index < 8)
+ return info[index];
+ return "INVALID";
+}
+
/*
* A generic sense dump / resolve mechanism should be implemented across
* all ATAPI + SCSI devices.
*/
static void pkt_dump_sense(struct packet_command *cgc)
{
- static char *info[9] = { "No sense", "Recovered error", "Not ready",
- "Medium error", "Hardware error", "Illegal request",
- "Unit attention", "Data protect", "Blank check" };
int i;
struct request_sense *sense = cgc->sense;
- printk(DRIVER_NAME":");
+ pr_err("");
for (i = 0; i < CDROM_PACKET_SIZE; i++)
- printk(" %02x", cgc->cmd[i]);
- printk(" - ");
+ pr_cont(" %02x", cgc->cmd[i]);
- if (sense == NULL) {
- printk("no sense\n");
- return;
- }
-
- printk("sense %02x.%02x.%02x", sense->sense_key, sense->asc, sense->ascq);
-
- if (sense->sense_key > 8) {
- printk(" (INVALID)\n");
- return;
- }
-
- printk(" (%s)\n", info[sense->sense_key]);
+ if (sense)
+ pr_cont(" - sense %02x.%02x.%02x (%s)\n",
+ sense->sense_key, sense->asc, sense->ascq,
+ sense_key_string(sense->sense_key));
+ else
+ pr_cont(" - no sense\n");
}
/*
@@ -943,7 +946,7 @@ static int pkt_set_segment_merging(struct pktcdvd_device *pd, struct request_que
set_bit(PACKET_MERGE_SEGS, &pd->flags);
return 0;
} else {
- printk(DRIVER_NAME": cdrom max_phys_segments too small\n");
+ pr_err("cdrom max_phys_segments too small\n");
return -EIO;
}
}
@@ -1565,9 +1568,10 @@ work_to_do:
static void pkt_print_settings(struct pktcdvd_device *pd)
{
- printk(DRIVER_NAME": %s packets, ", pd->settings.fp ? "Fixed" : "Variable");
- printk("%u blocks, ", pd->settings.size >> 2);
- printk("Mode-%c disc\n", pd->settings.block_mode == 8 ? '1' : '2');
+ pr_info("%s packets, %u blocks, Mode-%c disc\n",
+ pd->settings.fp ? "Fixed" : "Variable",
+ pd->settings.size >> 2,
+ pd->settings.block_mode == 8 ? '1' : '2');
}
static int pkt_mode_sense(struct pktcdvd_device *pd, struct packet_command *cgc, int page_code, int page_control)
@@ -1751,7 +1755,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
/*
* paranoia
*/
- printk(DRIVER_NAME": write mode wrong %d\n", wp->data_block_type);
+ pr_err("write mode wrong %d\n", wp->data_block_type);
return 1;
}
wp->packet_size = cpu_to_be32(pd->settings.size >> 2);
@@ -1795,7 +1799,7 @@ static int pkt_writable_track(struct pktcdvd_device *pd, track_information *ti)
if (ti->rt == 1 && ti->blank == 0)
return 1;
- printk(DRIVER_NAME": bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
+ pr_err("bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
return 0;
}
@@ -1822,22 +1826,22 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
* but i'm not sure, should we leave this to user apps? probably.
*/
if (di->disc_type == 0xff) {
- printk(DRIVER_NAME": Unknown disc. No track?\n");
+ pr_notice("unknown disc - no track?\n");
return 0;
}
if (di->disc_type != 0x20 && di->disc_type != 0) {
- printk(DRIVER_NAME": Wrong disc type (%x)\n", di->disc_type);
+ pr_err("wrong disc type (%x)\n", di->disc_type);
return 0;
}
if (di->erasable == 0) {
- printk(DRIVER_NAME": Disc not erasable\n");
+ pr_notice("disc not erasable\n");
return 0;
}
if (di->border_status == PACKET_SESSION_RESERVED) {
- printk(DRIVER_NAME": Can't write to last track (reserved)\n");
+ pr_err("can't write to last track (reserved)\n");
return 0;
}
@@ -1862,7 +1866,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
memset(&ti, 0, sizeof(track_information));
if ((ret = pkt_get_disc_info(pd, &di))) {
- printk("failed get_disc\n");
+ pr_err("failed get_disc\n");
return ret;
}
@@ -1873,12 +1877,12 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
track = 1; /* (di.last_track_msb << 8) | di.last_track_lsb; */
if ((ret = pkt_get_track_info(pd, track, 1, &ti))) {
- printk(DRIVER_NAME": failed get_track\n");
+ pr_err("failed get_track\n");
return ret;
}
if (!pkt_writable_track(pd, &ti)) {
- printk(DRIVER_NAME": can't write to this track\n");
+ pr_err("can't write to this track\n");
return -EROFS;
}
@@ -1888,11 +1892,11 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
*/
pd->settings.size = be32_to_cpu(ti.fixed_packet_size) << 2;
if (pd->settings.size == 0) {
- printk(DRIVER_NAME": detected zero packet size!\n");
+ pr_notice("detected zero packet size!\n");
return -ENXIO;
}
if (pd->settings.size > PACKET_MAX_SECTORS) {
- printk(DRIVER_NAME": packet size is too big\n");
+ pr_err("packet size is too big\n");
return -EROFS;
}
pd->settings.fp = ti.fp;
@@ -1934,7 +1938,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
pd->settings.block_mode = PACKET_BLOCK_MODE2;
break;
default:
- printk(DRIVER_NAME": unknown data mode\n");
+ pr_err("unknown data mode\n");
return -EROFS;
}
return 0;
@@ -1968,10 +1972,10 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
cgc.buflen = cgc.cmd[8] = 2 + ((buf[0] << 8) | (buf[1] & 0xff));
ret = pkt_mode_select(pd, &cgc);
if (ret) {
- printk(DRIVER_NAME": write caching control failed\n");
+ pr_err("write caching control failed\n");
pkt_dump_sense(&cgc);
} else if (!ret && set)
- printk(DRIVER_NAME": enabled write caching on %s\n", pd->name);
+ pr_notice("enabled write caching on %s\n", pd->name);
return ret;
}
@@ -2086,11 +2090,11 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
}
if (!(buf[6] & 0x40)) {
- printk(DRIVER_NAME": Disc type is not CD-RW\n");
+ pr_notice("disc type is not CD-RW\n");
return 1;
}
if (!(buf[6] & 0x4)) {
- printk(DRIVER_NAME": A1 values on media are not valid, maybe not CDRW?\n");
+ pr_notice("A1 values on media are not valid, maybe not CDRW?\n");
return 1;
}
@@ -2110,14 +2114,14 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
*speed = us_clv_to_speed[sp];
break;
default:
- printk(DRIVER_NAME": Unknown disc sub-type %d\n",st);
+ pr_notice("unknown disc sub-type %d\n",st);
return 1;
}
if (*speed) {
- printk(DRIVER_NAME": Max. media speed: %d\n",*speed);
+ pr_info("maximum media speed: %d\n", *speed);
return 0;
} else {
- printk(DRIVER_NAME": Unknown speed %d for sub-type %d\n",sp,st);
+ pr_notice("unknown speed %d for sub-type %d\n", sp, st);
return 1;
}
}
@@ -2207,7 +2211,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
goto out;
if ((ret = pkt_get_last_written(pd, &lba))) {
- printk(DRIVER_NAME": pkt_get_last_written failed\n");
+ pr_err("pkt_get_last_written failed\n");
goto out_putdev;
}
@@ -2237,11 +2241,11 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
if (write) {
if (!pkt_grow_pktlist(pd, CONFIG_CDROM_PKTCDVD_BUFFERS)) {
- printk(DRIVER_NAME": not enough memory for buffers\n");
+ pr_err("not enough memory for buffers\n");
ret = -ENOMEM;
goto out_putdev;
}
- printk(DRIVER_NAME": %lukB available on disc\n", lba << 1);
+ pr_info("%lukB available on disc\n", lba << 1);
}
return 0;
@@ -2363,7 +2367,8 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
pd = q->queuedata;
if (!pd) {
- printk(DRIVER_NAME": %s incorrect request queue\n", bdevname(bio->bi_bdev, b));
+ pr_err("%s incorrect request queue\n",
+ bdevname(bio->bi_bdev, b));
goto end_io;
}
@@ -2385,13 +2390,13 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
}
if (!test_bit(PACKET_WRITABLE, &pd->flags)) {
- printk(DRIVER_NAME": WRITE for ro device %s (%llu)\n",
- pd->name, (unsigned long long)bio->bi_sector);
+ pr_notice("WRITE for ro device %s (%llu)\n",
+ pd->name, (unsigned long long)bio->bi_sector);
goto end_io;
}
if (!bio->bi_size || (bio->bi_size % CD_FRAMESIZE)) {
- printk(DRIVER_NAME": wrong bio size\n");
+ pr_err("wrong bio size\n");
goto end_io;
}
@@ -2612,7 +2617,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
struct block_device *bdev;
if (pd->pkt_dev == dev) {
- printk(DRIVER_NAME": Recursive setup not allowed\n");
+ pr_err("recursive setup not allowed\n");
return -EBUSY;
}
for (i = 0; i < MAX_WRITERS; i++) {
@@ -2620,11 +2625,11 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
if (!pd2)
continue;
if (pd2->bdev->bd_dev == dev) {
- printk(DRIVER_NAME": %s already setup\n", bdevname(pd2->bdev, b));
+ pr_err("%s already setup\n", bdevname(pd2->bdev, b));
return -EBUSY;
}
if (pd2->pkt_dev == dev) {
- printk(DRIVER_NAME": Can't chain pktcdvd devices\n");
+ pr_err("can't chain pktcdvd devices\n");
return -EBUSY;
}
}
@@ -2647,7 +2652,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
atomic_set(&pd->cdrw.pending_bios, 0);
pd->cdrw.thread = kthread_run(kcdrwd, pd, "%s", pd->name);
if (IS_ERR(pd->cdrw.thread)) {
- printk(DRIVER_NAME": can't start kernel thread\n");
+ pr_err("can't start kernel thread\n");
ret = -ENOMEM;
goto out_mem;
}
@@ -2746,7 +2751,7 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev)
if (!pkt_devs[idx])
break;
if (idx == MAX_WRITERS) {
- printk(DRIVER_NAME": max %d writers supported\n", MAX_WRITERS);
+ pr_err("max %d writers supported\n", MAX_WRITERS);
ret = -EBUSY;
goto out_mutex;
}
@@ -2821,7 +2826,7 @@ out_mem:
kfree(pd);
out_mutex:
mutex_unlock(&ctl_mutex);
- printk(DRIVER_NAME": setup of pktcdvd device failed\n");
+ pr_err("setup of pktcdvd device failed\n");
return ret;
}
@@ -2972,7 +2977,7 @@ static int __init pkt_init(void)
ret = register_blkdev(pktdev_major, DRIVER_NAME);
if (ret < 0) {
- printk(DRIVER_NAME": Unable to register block device\n");
+ pr_err("unable to register block device\n");
goto out2;
}
if (!pktdev_major)
@@ -2986,7 +2991,7 @@ static int __init pkt_init(void)
ret = misc_register(&pkt_misc);
if (ret) {
- printk(DRIVER_NAME": Unable to register misc device\n");
+ pr_err("unable to register misc device\n");
goto out_misc;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH 3/3] pktcdvd: Consolidate DPRINTK and VPRINTK macros
2013-05-30 20:57 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
2013-05-30 20:57 ` [PATCH 1/3] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
2013-05-30 20:57 ` [PATCH 2/3] pktcdvd: Convert printk to pr_<level> Joe Perches
@ 2013-05-30 20:57 ` Joe Perches
2013-05-31 5:37 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
3 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-05-30 20:57 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, linux-kernel
Use the more common pkt_dbg(level, fmt, ...) form.
These messages are emitted at KERN_NOTICE.
Always emit function name with pkt_dbg(2, ...) uses and
remove the sometimes abbreviated embedded function name.
This form always verifies the format and arguments.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 107 ++++++++++++++++++++++++------------------------
1 file changed, 53 insertions(+), 54 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index ff08de1..0281210 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -71,17 +71,13 @@
#define DRIVER_NAME "pktcdvd"
-#if PACKET_DEBUG
-#define DPRINTK(fmt, args...) printk(KERN_NOTICE fmt, ##args)
-#else
-#define DPRINTK(fmt, args...)
-#endif
-
-#if PACKET_DEBUG > 1
-#define VPRINTK(fmt, args...) printk(KERN_NOTICE fmt, ##args)
-#else
-#define VPRINTK(fmt, args...)
-#endif
+#define pkt_dbg(level, fmt, ...) \
+do { \
+ if (level == 2 && PACKET_DEBUG >= 2) \
+ pr_notice("%s: " fmt, __func__, ##__VA_ARGS__); \
+ else if (level == 1 && PACKET_DEBUG >= 1) \
+ pr_notice(fmt, ##__VA_ARGS__); \
+} while (0)
#define MAX_SPEED 0xffff
@@ -519,7 +515,7 @@ static void pkt_bio_finished(struct pktcdvd_device *pd)
{
BUG_ON(atomic_read(&pd->cdrw.pending_bios) <= 0);
if (atomic_dec_and_test(&pd->cdrw.pending_bios)) {
- VPRINTK(DRIVER_NAME": queue empty\n");
+ pkt_dbg(2, "queue empty\n");
atomic_set(&pd->iosched.attention, 1);
wake_up(&pd->wqueue);
}
@@ -875,7 +871,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
need_write_seek = 0;
if (need_write_seek && reads_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- VPRINTK(DRIVER_NAME": write, waiting\n");
+ pkt_dbg(2, "write, waiting\n");
break;
}
pkt_flush_cache(pd);
@@ -884,7 +880,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
} else {
if (!reads_queued && writes_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- VPRINTK(DRIVER_NAME": read, waiting\n");
+ pkt_dbg(2, "read, waiting\n");
break;
}
pd->iosched.writing = 1;
@@ -991,8 +987,9 @@ static void pkt_end_io_read(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- VPRINTK("pkt_end_io_read: bio=%p sec0=%llx sec=%llx err=%d\n", bio,
- (unsigned long long)pkt->sector, (unsigned long long)bio->bi_sector, err);
+ pkt_dbg(2, "bio=%p sec0=%llx sec=%llx err=%d\n",
+ bio, (unsigned long long)pkt->sector,
+ (unsigned long long)bio->bi_sector, err);
if (err)
atomic_inc(&pkt->io_errors);
@@ -1010,7 +1007,7 @@ static void pkt_end_io_packet_write(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- VPRINTK("pkt_end_io_packet_write: id=%d, err=%d\n", pkt->id, err);
+ pkt_dbg(2, "id=%d, err=%d\n", pkt->id, err);
pd->stats.pkt_ended++;
@@ -1052,7 +1049,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
spin_unlock(&pkt->lock);
if (pkt->cache_valid) {
- VPRINTK("pkt_gather_data: zone %llx cached\n",
+ pkt_dbg(2, "zone %llx cached\n",
(unsigned long long)pkt->sector);
goto out_account;
}
@@ -1075,7 +1072,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
p = (f * CD_FRAMESIZE) / PAGE_SIZE;
offset = (f * CD_FRAMESIZE) % PAGE_SIZE;
- VPRINTK("pkt_gather_data: Adding frame %d, page:%p offs:%d\n",
+ pkt_dbg(2, "Adding frame %d, page:%p offs:%d\n",
f, pkt->pages[p], offset);
if (!bio_add_page(bio, pkt->pages[p], CD_FRAMESIZE, offset))
BUG();
@@ -1087,7 +1084,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
}
out_account:
- VPRINTK("pkt_gather_data: need %d frames for zone %llx\n",
+ pkt_dbg(2, "need %d frames for zone %llx\n",
frames_read, (unsigned long long)pkt->sector);
pd->stats.pkt_started++;
pd->stats.secs_rg += frames_read * (CD_FRAMESIZE >> 9);
@@ -1188,7 +1185,8 @@ static inline void pkt_set_state(struct packet_data *pkt, enum packet_data_state
"IDLE", "WAITING", "READ_WAIT", "WRITE_WAIT", "RECOVERY", "FINISHED"
};
enum packet_data_state old_state = pkt->state;
- VPRINTK("pkt %2d : s=%6llx %s -> %s\n", pkt->id, (unsigned long long)pkt->sector,
+ pkt_dbg(2, "pkt %2d : s=%6llx %s -> %s\n",
+ pkt->id, (unsigned long long)pkt->sector,
state_name[old_state], state_name[state]);
#endif
pkt->state = state;
@@ -1207,12 +1205,12 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
struct rb_node *n;
int wakeup;
- VPRINTK("handle_queue\n");
+ pkt_dbg(2, "\n");
atomic_set(&pd->scan_queue, 0);
if (list_empty(&pd->cdrw.pkt_free_list)) {
- VPRINTK("handle_queue: no pkt\n");
+ pkt_dbg(2, "no pkt\n");
return 0;
}
@@ -1249,7 +1247,7 @@ try_next_bio:
}
spin_unlock(&pd->lock);
if (!bio) {
- VPRINTK("handle_queue: no bio\n");
+ pkt_dbg(2, "no bio\n");
return 0;
}
@@ -1265,10 +1263,10 @@ try_next_bio:
* to this packet.
*/
spin_lock(&pd->lock);
- VPRINTK("pkt_handle_queue: looking for zone %llx\n", (unsigned long long)zone);
+ pkt_dbg(2, "looking for zone %llx\n", (unsigned long long)zone);
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
- VPRINTK("pkt_handle_queue: found zone=%llx\n",
+ pkt_dbg(2, "found zone=%llx\n",
(unsigned long long)get_zone(bio->bi_sector, pd));
if (get_zone(bio->bi_sector, pd) != zone)
break;
@@ -1321,7 +1319,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
if (!bio_add_page(pkt->w_bio, bvec[f].bv_page, CD_FRAMESIZE, bvec[f].bv_offset))
BUG();
}
- VPRINTK(DRIVER_NAME": vcnt=%d\n", pkt->w_bio->bi_vcnt);
+ pkt_dbg(2, "vcnt=%d\n", pkt->w_bio->bi_vcnt);
/*
* Fill-in bvec with data from orig_bios.
@@ -1332,7 +1330,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
pkt_set_state(pkt, PACKET_WRITE_WAIT_STATE);
spin_unlock(&pkt->lock);
- VPRINTK("pkt_start_write: Writing %d frames for zone %llx\n",
+ pkt_dbg(2, "Writing %d frames for zone %llx\n",
pkt->write_size, (unsigned long long)pkt->sector);
if (test_bit(PACKET_MERGE_SEGS, &pd->flags) || (pkt->write_size < pkt->frames)) {
@@ -1364,7 +1362,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
{
int uptodate;
- VPRINTK("run_state_machine: pkt %d\n", pkt->id);
+ pkt_dbg(2, "pkt %d\n", pkt->id);
for (;;) {
switch (pkt->state) {
@@ -1403,7 +1401,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
if (pkt_start_recovery(pkt)) {
pkt_start_write(pd, pkt);
} else {
- VPRINTK("No recovery possible\n");
+ pkt_dbg(2, "No recovery possible\n");
pkt_set_state(pkt, PACKET_FINISHED_STATE);
}
break;
@@ -1424,7 +1422,7 @@ static void pkt_handle_packets(struct pktcdvd_device *pd)
{
struct packet_data *pkt, *next;
- VPRINTK("pkt_handle_packets\n");
+ pkt_dbg(2, "\n");
/*
* Run state machine for active packets
@@ -1507,9 +1505,9 @@ static int kcdrwd(void *foobar)
if (PACKET_DEBUG > 1) {
int states[PACKET_NUM_STATES];
pkt_count_states(pd, states);
- VPRINTK("kcdrwd: i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
- states[0], states[1], states[2], states[3],
- states[4], states[5]);
+ pkt_dbg(2, "i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
+ states[0], states[1], states[2],
+ states[3], states[4], states[5]);
}
min_sleep_time = MAX_SCHEDULE_TIMEOUT;
@@ -1518,9 +1516,9 @@ static int kcdrwd(void *foobar)
min_sleep_time = pkt->sleep_time;
}
- VPRINTK("kcdrwd: sleeping\n");
+ pkt_dbg(2, "sleeping\n");
residue = schedule_timeout(min_sleep_time);
- VPRINTK("kcdrwd: wake up\n");
+ pkt_dbg(2, "wake up\n");
/* make swsusp happy with our thread */
try_to_freeze();
@@ -1817,7 +1815,8 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
case 0x12: /* DVD-RAM */
return 1;
default:
- VPRINTK(DRIVER_NAME": Wrong disc profile (%x)\n", pd->mmc3_profile);
+ pkt_dbg(2, "Wrong disc profile (%x)\n",
+ pd->mmc3_profile);
return 0;
}
@@ -2132,7 +2131,7 @@ static noinline_for_stack int pkt_perform_opc(struct pktcdvd_device *pd)
struct request_sense sense;
int ret;
- VPRINTK(DRIVER_NAME": Performing OPC\n");
+ pkt_dbg(2, "Performing OPC\n");
init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
cgc.sense = &sense;
@@ -2150,12 +2149,12 @@ static int pkt_open_write(struct pktcdvd_device *pd)
unsigned int write_speed, media_write_speed, read_speed;
if ((ret = pkt_probe_settings(pd))) {
- VPRINTK(DRIVER_NAME": %s failed probe\n", pd->name);
+ pkt_dbg(2, "%s failed probe\n", pd->name);
return ret;
}
if ((ret = pkt_set_write_settings(pd))) {
- DPRINTK(DRIVER_NAME": %s failed saving write settings\n", pd->name);
+ pkt_dbg(1, "%s failed saving write settings\n", pd->name);
return -EIO;
}
@@ -2167,26 +2166,26 @@ static int pkt_open_write(struct pktcdvd_device *pd)
case 0x13: /* DVD-RW */
case 0x1a: /* DVD+RW */
case 0x12: /* DVD-RAM */
- DPRINTK(DRIVER_NAME": write speed %ukB/s\n", write_speed);
+ pkt_dbg(1, "write speed %ukB/s\n", write_speed);
break;
default:
if ((ret = pkt_media_speed(pd, &media_write_speed)))
media_write_speed = 16;
write_speed = min(write_speed, media_write_speed * 177);
- DPRINTK(DRIVER_NAME": write speed %ux\n", write_speed / 176);
+ pkt_dbg(1, "write speed %ux\n", write_speed / 176);
break;
}
read_speed = write_speed;
if ((ret = pkt_set_speed(pd, write_speed, read_speed))) {
- DPRINTK(DRIVER_NAME": %s couldn't set write speed\n", pd->name);
+ pkt_dbg(1, "%s couldn't set write speed\n", pd->name);
return -EIO;
}
pd->write_speed = write_speed;
pd->read_speed = read_speed;
if ((ret = pkt_perform_opc(pd))) {
- DPRINTK(DRIVER_NAME": %s Optimum Power Calibration failed\n", pd->name);
+ pkt_dbg(1, "%s Optimum Power Calibration failed\n", pd->name);
}
return 0;
@@ -2263,7 +2262,7 @@ out:
static void pkt_release_dev(struct pktcdvd_device *pd, int flush)
{
if (flush && pkt_flush_cache(pd))
- DPRINTK(DRIVER_NAME": %s not flushing cache\n", pd->name);
+ pkt_dbg(1, "%s not flushing cache\n", pd->name);
pkt_lock_door(pd, 0);
@@ -2285,7 +2284,7 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
struct pktcdvd_device *pd = NULL;
int ret;
- VPRINTK(DRIVER_NAME": entering open\n");
+ pkt_dbg(2, "entering\n");
mutex_lock(&pktcdvd_mutex);
mutex_lock(&ctl_mutex);
@@ -2321,7 +2320,7 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
out_dec:
pd->refcnt--;
out:
- VPRINTK(DRIVER_NAME": failed open (%d)\n", ret);
+ pkt_dbg(2, "failed (%d)\n", ret);
mutex_unlock(&ctl_mutex);
mutex_unlock(&pktcdvd_mutex);
return ret;
@@ -2403,7 +2402,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
zone = get_zone(bio->bi_sector, pd);
- VPRINTK("pkt_make_request: start = %6llx stop = %6llx\n",
+ pkt_dbg(2, "start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2658,7 +2657,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
}
proc_create_data(pd->name, 0, pkt_proc, &pkt_proc_fops, pd);
- DPRINTK(DRIVER_NAME": writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
+ pkt_dbg(1, "writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
return 0;
out_mem:
@@ -2673,8 +2672,8 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
struct pktcdvd_device *pd = bdev->bd_disk->private_data;
int ret;
- VPRINTK("pkt_ioctl: cmd %x, dev %d:%d\n", cmd,
- MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
+ pkt_dbg(2, "cmd %x, dev %d:%d\n",
+ cmd, MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
mutex_lock(&pktcdvd_mutex);
switch (cmd) {
@@ -2698,7 +2697,7 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
break;
default:
- VPRINTK(DRIVER_NAME": Unknown ioctl for %s (%x)\n", pd->name, cmd);
+ pkt_dbg(2, "Unknown ioctl for %s (%x)\n", pd->name, cmd);
ret = -ENOTTY;
}
mutex_unlock(&pktcdvd_mutex);
@@ -2847,7 +2846,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
break;
}
if (idx == MAX_WRITERS) {
- DPRINTK(DRIVER_NAME": dev not setup\n");
+ pkt_dbg(1, "dev not setup\n");
ret = -ENXIO;
goto out;
}
@@ -2867,7 +2866,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
blkdev_put(pd->bdev, FMODE_READ | FMODE_NDELAY);
remove_proc_entry(pd->name, pkt_proc);
- DPRINTK(DRIVER_NAME": writer %s unmapped\n", pd->name);
+ pkt_dbg(1, "writer %s unmapped\n", pd->name);
del_gendisk(pd->disk);
blk_cleanup_queue(pd->disk->queue);
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* Re: [PATCH 0/3] pktcdvd: A few more neatenings
2013-05-30 20:57 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
` (2 preceding siblings ...)
2013-05-30 20:57 ` [PATCH 3/3] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
@ 2013-05-31 5:37 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
3 siblings, 1 reply; 38+ messages in thread
From: Joe Perches @ 2013-05-31 5:37 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, linux-kernel
On Thu, 2013-05-30 at 13:57 -0700, Joe Perches wrote:
> Joe Perches (3):
> pktcdvd: Convert ZONE macro to static function get_zone()
> pktcdvd: Convert printk to pr_<level>
> pktcdvd: Consolidate DPRINTK and VPRINTK macros
>
> drivers/block/pktcdvd.c | 248 ++++++++++++++++++++++++------------------------
> 1 file changed, 126 insertions(+), 122 deletions(-)
>
Hey Jiri.
This doesn't compile correctly.
1/3 adds a compile time error, 2/3 corrects it.
Please ignore it.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH 2/3] pktcdvd: Convert printk to pr_<level>
2013-05-30 20:57 ` [PATCH 2/3] pktcdvd: Convert printk to pr_<level> Joe Perches
@ 2013-05-31 19:44 ` Andy Shevchenko
2013-05-31 21:56 ` Joe Perches
0 siblings, 1 reply; 38+ messages in thread
From: Andy Shevchenko @ 2013-05-31 19:44 UTC (permalink / raw)
To: Joe Perches; +Cc: Jiri Kosina, Dan Carpenter, linux-kernel
On Thu, May 30, 2013 at 11:57 PM, Joe Perches <joe@perches.com> wrote:
> Use a more current logging style and add messages levels
> to the logging messages.
>
> Convert bare printks to pr_cont where appropriate and
> add a simple function to emit the sense string.
Few comments below.
Why not dev_dbg wherever it's possible?
> --- a/drivers/block/pktcdvd.c
> +++ b/drivers/block/pktcdvd.c
> @@ -60,7 +62,7 @@
> #include <linux/mutex.h>
> #include <linux/slab.h>
> #include <scsi/scsi_cmnd.h>
> -l#include <scsi/scsi_ioctl.h>
> +#include <scsi/scsi_ioctl.h>
Maybe you simple could remove this typo in first patch?
> @@ -734,36 +736,37 @@ out:
> return ret;
> }
>
> +static const char *sense_key_string(__u8 index)
> +{
> + static const char *info[9] = {
> + "No sense", "Recovered error", "Not ready",
> + "Medium error", "Hardware error", "Illegal request",
> + "Unit attention", "Data protect", "Blank check"
> + };
> + if (index < 8)
> + return info[index];
> + return "INVALID";
> +}
> +
> /*
> * A generic sense dump / resolve mechanism should be implemented across
> * all ATAPI + SCSI devices.
> */
> static void pkt_dump_sense(struct packet_command *cgc)
> {
> - static char *info[9] = { "No sense", "Recovered error", "Not ready",
> - "Medium error", "Hardware error", "Illegal request",
> - "Unit attention", "Data protect", "Blank check" };
> int i;
> struct request_sense *sense = cgc->sense;
>
> - printk(DRIVER_NAME":");
> + pr_err("");
> for (i = 0; i < CDROM_PACKET_SIZE; i++)
> - printk(" %02x", cgc->cmd[i]);
> - printk(" - ");
> + pr_cont(" %02x", cgc->cmd[i]);
This one is actually %*ph.
Like: pr_info("%*ph", CDROM_PACKET_SIZE, cgc->cmd);
And what is the level of this message? debug?
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH 2/3] pktcdvd: Convert printk to pr_<level>
2013-05-31 19:44 ` Andy Shevchenko
@ 2013-05-31 21:56 ` Joe Perches
0 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-05-31 21:56 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: Jiri Kosina, Dan Carpenter, linux-kernel
On Fri, 2013-05-31 at 22:44 +0300, Andy Shevchenko wrote:
> On Thu, May 30, 2013 at 11:57 PM, Joe Perches <joe@perches.com> wrote:
> > Use a more current logging style and add messages levels
> > to the logging messages.
> >
> > Convert bare printks to pr_cont where appropriate and
> > add a simple function to emit the sense string.
>
> Few comments below.
>
> Why not dev_dbg wherever it's possible?
Because dev_<level> conversions are not appropriate for a
first pass. The "struct pktcdvd *" needs to be available
for more function calls and that's more work / less
automatic and this pass is more easily verified.
> > - printk(DRIVER_NAME":");
> > + pr_err("");
> > for (i = 0; i < CDROM_PACKET_SIZE; i++)
> > - printk(" %02x", cgc->cmd[i]);
> > - printk(" - ");
> > + pr_cont(" %02x", cgc->cmd[i]);
>
> This one is actually %*ph.
>
> Like: pr_info("%*ph", CDROM_PACKET_SIZE, cgc->cmd);
>
> And what is the level of this message? debug?
pr_err and good point about %*ph, I've fixed it and
the stupid typo around the #include here.
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH V2 0/8] pktcdvd: More neatenings
2013-05-31 5:37 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
` (7 more replies)
0 siblings, 8 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Removed the compile error the patch 1 and compile fix in 2
Added Andy's suggestion in patch 2.
Added conversions to print pd->name in logging macros.
Joe Perches (8):
pktcdvd: Convert ZONE macro to static function get_zone()
pktcdvd: Convert printk to pr_<level>
pktcdvd: Consolidate DPRINTK and VPRINTK macros
pktcdvd: Add struct pktcdvd_device * to pkt_dbg
pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible
pktcdvd: Convert pr_notice to pkt_notice
pktcdvd: Convert pr_info to pkt_info
pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense()
drivers/block/pktcdvd.c | 277 ++++++++++++++++++++++++------------------------
1 file changed, 140 insertions(+), 137 deletions(-)
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH V2 1/8] pktcdvd: Convert ZONE macro to static function get_zone()
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level> Joe Perches
` (6 subsequent siblings)
7 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Macros should be converted to functions where feasible to
verify arguments and the like.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 09142c4..9dcb601 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -83,9 +83,6 @@
#define MAX_SPEED 0xffff
-#define ZONE(sector, pd) (((sector) + (pd)->offset) & \
- ~(sector_t)((pd)->settings.size - 1))
-
static DEFINE_MUTEX(pktcdvd_mutex);
static struct pktcdvd_device *pkt_devs[MAX_WRITERS];
static struct proc_dir_entry *pkt_proc;
@@ -103,7 +100,10 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev);
static int pkt_remove_dev(dev_t pkt_dev);
static int pkt_seq_show(struct seq_file *m, void *p);
-
+static sector_t get_zone(sector_t sector, struct pktcdvd_device *pd)
+{
+ return (sector + pd->offset) & ~(sector_t)(pd->settings.size - 1);
+}
/*
* create and register a pktcdvd kernel object.
@@ -1226,7 +1226,7 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
node = first_node;
while (node) {
bio = node->bio;
- zone = ZONE(bio->bi_sector, pd);
+ zone = get_zone(bio->bi_sector, pd);
list_for_each_entry(p, &pd->cdrw.pkt_active_list, list) {
if (p->sector == zone) {
bio = NULL;
@@ -1266,8 +1266,8 @@ try_next_bio:
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
VPRINTK("pkt_handle_queue: found zone=%llx\n",
- (unsigned long long)ZONE(bio->bi_sector, pd));
- if (ZONE(bio->bi_sector, pd) != zone)
+ (unsigned long long)get_zone(bio->bi_sector, pd));
+ if (get_zone(bio->bi_sector, pd) != zone)
break;
pkt_rbtree_erase(pd, node);
spin_lock(&pkt->lock);
@@ -2397,7 +2397,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
- zone = ZONE(bio->bi_sector, pd);
+ zone = get_zone(bio->bi_sector, pd);
VPRINTK("pkt_make_request: start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2408,7 +2408,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
sector_t last_zone;
int first_sectors;
- last_zone = ZONE(bio_end_sector(bio) - 1, pd);
+ last_zone = get_zone(bio_end_sector(bio) - 1, pd);
if (last_zone != zone) {
BUG_ON(last_zone != zone + pd->settings.size);
first_sectors = last_zone - bio->bi_sector;
@@ -2503,7 +2503,7 @@ static int pkt_merge_bvec(struct request_queue *q, struct bvec_merge_data *bmd,
struct bio_vec *bvec)
{
struct pktcdvd_device *pd = q->queuedata;
- sector_t zone = ZONE(bmd->bi_sector, pd);
+ sector_t zone = get_zone(bmd->bi_sector, pd);
int used = ((bmd->bi_sector - zone) << 9) + bmd->bi_size;
int remaining = (pd->settings.size << 9) - used;
int remaining2;
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level>
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
2013-06-01 4:11 ` [PATCH V2 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-03 9:57 ` Dan Carpenter
2013-06-01 4:11 ` [PATCH V2 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
` (5 subsequent siblings)
7 siblings, 1 reply; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Use a more current logging style and add messages levels
to the logging messages.
Simplify pkt_dump_sense by using %*ph and adding a simple
function to emit the sense string.
Signed-off-by: Joe Perches <joe@perches.com>
Improved-by: Andy Shevchenko <andy.shevchenko@gmail.com>
---
drivers/block/pktcdvd.c | 123 ++++++++++++++++++++++++------------------------
1 file changed, 62 insertions(+), 61 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 9dcb601..12bdce4 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -44,6 +44,8 @@
*
*************************************************************************/
+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+
#include <linux/pktcdvd.h>
#include <linux/module.h>
#include <linux/types.h>
@@ -424,7 +426,7 @@ static int pkt_sysfs_init(void)
if (ret) {
kfree(class_pktcdvd);
class_pktcdvd = NULL;
- printk(DRIVER_NAME": failed to create class pktcdvd\n");
+ pr_err("failed to create class pktcdvd\n");
return ret;
}
return 0;
@@ -734,36 +736,33 @@ out:
return ret;
}
+static const char *sense_key_string(__u8 index)
+{
+ static const char *info[9] = {
+ "No sense", "Recovered error", "Not ready",
+ "Medium error", "Hardware error", "Illegal request",
+ "Unit attention", "Data protect", "Blank check"
+ };
+ if (index < 8)
+ return info[index];
+ return "INVALID";
+}
+
/*
* A generic sense dump / resolve mechanism should be implemented across
* all ATAPI + SCSI devices.
*/
static void pkt_dump_sense(struct packet_command *cgc)
{
- static char *info[9] = { "No sense", "Recovered error", "Not ready",
- "Medium error", "Hardware error", "Illegal request",
- "Unit attention", "Data protect", "Blank check" };
- int i;
struct request_sense *sense = cgc->sense;
- printk(DRIVER_NAME":");
- for (i = 0; i < CDROM_PACKET_SIZE; i++)
- printk(" %02x", cgc->cmd[i]);
- printk(" - ");
-
- if (sense == NULL) {
- printk("no sense\n");
- return;
- }
-
- printk("sense %02x.%02x.%02x", sense->sense_key, sense->asc, sense->ascq);
-
- if (sense->sense_key > 8) {
- printk(" (INVALID)\n");
- return;
- }
-
- printk(" (%s)\n", info[sense->sense_key]);
+ if (sense)
+ pr_err("%*ph - sense %02x.%02x.%02x (%s)\n",
+ CDROM_PACKET_SIZE, cgc->cmd,
+ sense->sense_key, sense->asc, sense->ascq,
+ sense_key_string(sense->sense_key));
+ else
+ pr_err("%*ph - no sense\n", CDROM_PACKET_SIZE, cgc->cmd);
}
/*
@@ -943,7 +942,7 @@ static int pkt_set_segment_merging(struct pktcdvd_device *pd, struct request_que
set_bit(PACKET_MERGE_SEGS, &pd->flags);
return 0;
} else {
- printk(DRIVER_NAME": cdrom max_phys_segments too small\n");
+ pr_err("cdrom max_phys_segments too small\n");
return -EIO;
}
}
@@ -1565,9 +1564,10 @@ work_to_do:
static void pkt_print_settings(struct pktcdvd_device *pd)
{
- printk(DRIVER_NAME": %s packets, ", pd->settings.fp ? "Fixed" : "Variable");
- printk("%u blocks, ", pd->settings.size >> 2);
- printk("Mode-%c disc\n", pd->settings.block_mode == 8 ? '1' : '2');
+ pr_info("%s packets, %u blocks, Mode-%c disc\n",
+ pd->settings.fp ? "Fixed" : "Variable",
+ pd->settings.size >> 2,
+ pd->settings.block_mode == 8 ? '1' : '2');
}
static int pkt_mode_sense(struct pktcdvd_device *pd, struct packet_command *cgc, int page_code, int page_control)
@@ -1751,7 +1751,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
/*
* paranoia
*/
- printk(DRIVER_NAME": write mode wrong %d\n", wp->data_block_type);
+ pr_err("write mode wrong %d\n", wp->data_block_type);
return 1;
}
wp->packet_size = cpu_to_be32(pd->settings.size >> 2);
@@ -1795,7 +1795,7 @@ static int pkt_writable_track(struct pktcdvd_device *pd, track_information *ti)
if (ti->rt == 1 && ti->blank == 0)
return 1;
- printk(DRIVER_NAME": bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
+ pr_err("bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
return 0;
}
@@ -1822,22 +1822,22 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
* but i'm not sure, should we leave this to user apps? probably.
*/
if (di->disc_type == 0xff) {
- printk(DRIVER_NAME": Unknown disc. No track?\n");
+ pr_notice("unknown disc - no track?\n");
return 0;
}
if (di->disc_type != 0x20 && di->disc_type != 0) {
- printk(DRIVER_NAME": Wrong disc type (%x)\n", di->disc_type);
+ pr_err("wrong disc type (%x)\n", di->disc_type);
return 0;
}
if (di->erasable == 0) {
- printk(DRIVER_NAME": Disc not erasable\n");
+ pr_notice("disc not erasable\n");
return 0;
}
if (di->border_status == PACKET_SESSION_RESERVED) {
- printk(DRIVER_NAME": Can't write to last track (reserved)\n");
+ pr_err("can't write to last track (reserved)\n");
return 0;
}
@@ -1862,7 +1862,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
memset(&ti, 0, sizeof(track_information));
if ((ret = pkt_get_disc_info(pd, &di))) {
- printk("failed get_disc\n");
+ pr_err("failed get_disc\n");
return ret;
}
@@ -1873,12 +1873,12 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
track = 1; /* (di.last_track_msb << 8) | di.last_track_lsb; */
if ((ret = pkt_get_track_info(pd, track, 1, &ti))) {
- printk(DRIVER_NAME": failed get_track\n");
+ pr_err("failed get_track\n");
return ret;
}
if (!pkt_writable_track(pd, &ti)) {
- printk(DRIVER_NAME": can't write to this track\n");
+ pr_err("can't write to this track\n");
return -EROFS;
}
@@ -1888,11 +1888,11 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
*/
pd->settings.size = be32_to_cpu(ti.fixed_packet_size) << 2;
if (pd->settings.size == 0) {
- printk(DRIVER_NAME": detected zero packet size!\n");
+ pr_notice("detected zero packet size!\n");
return -ENXIO;
}
if (pd->settings.size > PACKET_MAX_SECTORS) {
- printk(DRIVER_NAME": packet size is too big\n");
+ pr_err("packet size is too big\n");
return -EROFS;
}
pd->settings.fp = ti.fp;
@@ -1934,7 +1934,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
pd->settings.block_mode = PACKET_BLOCK_MODE2;
break;
default:
- printk(DRIVER_NAME": unknown data mode\n");
+ pr_err("unknown data mode\n");
return -EROFS;
}
return 0;
@@ -1968,10 +1968,10 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
cgc.buflen = cgc.cmd[8] = 2 + ((buf[0] << 8) | (buf[1] & 0xff));
ret = pkt_mode_select(pd, &cgc);
if (ret) {
- printk(DRIVER_NAME": write caching control failed\n");
+ pr_err("write caching control failed\n");
pkt_dump_sense(&cgc);
} else if (!ret && set)
- printk(DRIVER_NAME": enabled write caching on %s\n", pd->name);
+ pr_notice("enabled write caching on %s\n", pd->name);
return ret;
}
@@ -2086,11 +2086,11 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
}
if (!(buf[6] & 0x40)) {
- printk(DRIVER_NAME": Disc type is not CD-RW\n");
+ pr_notice("disc type is not CD-RW\n");
return 1;
}
if (!(buf[6] & 0x4)) {
- printk(DRIVER_NAME": A1 values on media are not valid, maybe not CDRW?\n");
+ pr_notice("A1 values on media are not valid, maybe not CDRW?\n");
return 1;
}
@@ -2110,14 +2110,14 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
*speed = us_clv_to_speed[sp];
break;
default:
- printk(DRIVER_NAME": Unknown disc sub-type %d\n",st);
+ pr_notice("unknown disc sub-type %d\n", st);
return 1;
}
if (*speed) {
- printk(DRIVER_NAME": Max. media speed: %d\n",*speed);
+ pr_info("maximum media speed: %d\n", *speed);
return 0;
} else {
- printk(DRIVER_NAME": Unknown speed %d for sub-type %d\n",sp,st);
+ pr_notice("unknown speed %d for sub-type %d\n", sp, st);
return 1;
}
}
@@ -2207,7 +2207,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
goto out;
if ((ret = pkt_get_last_written(pd, &lba))) {
- printk(DRIVER_NAME": pkt_get_last_written failed\n");
+ pr_err("pkt_get_last_written failed\n");
goto out_putdev;
}
@@ -2237,11 +2237,11 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
if (write) {
if (!pkt_grow_pktlist(pd, CONFIG_CDROM_PKTCDVD_BUFFERS)) {
- printk(DRIVER_NAME": not enough memory for buffers\n");
+ pr_err("not enough memory for buffers\n");
ret = -ENOMEM;
goto out_putdev;
}
- printk(DRIVER_NAME": %lukB available on disc\n", lba << 1);
+ pr_info("%lukB available on disc\n", lba << 1);
}
return 0;
@@ -2363,7 +2363,8 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
pd = q->queuedata;
if (!pd) {
- printk(DRIVER_NAME": %s incorrect request queue\n", bdevname(bio->bi_bdev, b));
+ pr_err("%s incorrect request queue\n",
+ bdevname(bio->bi_bdev, b));
goto end_io;
}
@@ -2385,13 +2386,13 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
}
if (!test_bit(PACKET_WRITABLE, &pd->flags)) {
- printk(DRIVER_NAME": WRITE for ro device %s (%llu)\n",
- pd->name, (unsigned long long)bio->bi_sector);
+ pr_notice("WRITE for ro device %s (%llu)\n",
+ pd->name, (unsigned long long)bio->bi_sector);
goto end_io;
}
if (!bio->bi_size || (bio->bi_size % CD_FRAMESIZE)) {
- printk(DRIVER_NAME": wrong bio size\n");
+ pr_err("wrong bio size\n");
goto end_io;
}
@@ -2612,7 +2613,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
struct block_device *bdev;
if (pd->pkt_dev == dev) {
- printk(DRIVER_NAME": Recursive setup not allowed\n");
+ pr_err("recursive setup not allowed\n");
return -EBUSY;
}
for (i = 0; i < MAX_WRITERS; i++) {
@@ -2620,11 +2621,11 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
if (!pd2)
continue;
if (pd2->bdev->bd_dev == dev) {
- printk(DRIVER_NAME": %s already setup\n", bdevname(pd2->bdev, b));
+ pr_err("%s already setup\n", bdevname(pd2->bdev, b));
return -EBUSY;
}
if (pd2->pkt_dev == dev) {
- printk(DRIVER_NAME": Can't chain pktcdvd devices\n");
+ pr_err("can't chain pktcdvd devices\n");
return -EBUSY;
}
}
@@ -2647,7 +2648,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
atomic_set(&pd->cdrw.pending_bios, 0);
pd->cdrw.thread = kthread_run(kcdrwd, pd, "%s", pd->name);
if (IS_ERR(pd->cdrw.thread)) {
- printk(DRIVER_NAME": can't start kernel thread\n");
+ pr_err("can't start kernel thread\n");
ret = -ENOMEM;
goto out_mem;
}
@@ -2746,7 +2747,7 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev)
if (!pkt_devs[idx])
break;
if (idx == MAX_WRITERS) {
- printk(DRIVER_NAME": max %d writers supported\n", MAX_WRITERS);
+ pr_err("max %d writers supported\n", MAX_WRITERS);
ret = -EBUSY;
goto out_mutex;
}
@@ -2821,7 +2822,7 @@ out_mem:
kfree(pd);
out_mutex:
mutex_unlock(&ctl_mutex);
- printk(DRIVER_NAME": setup of pktcdvd device failed\n");
+ pr_err("setup of pktcdvd device failed\n");
return ret;
}
@@ -2972,7 +2973,7 @@ static int __init pkt_init(void)
ret = register_blkdev(pktdev_major, DRIVER_NAME);
if (ret < 0) {
- printk(DRIVER_NAME": Unable to register block device\n");
+ pr_err("unable to register block device\n");
goto out2;
}
if (!pktdev_major)
@@ -2986,7 +2987,7 @@ static int __init pkt_init(void)
ret = misc_register(&pkt_misc);
if (ret) {
- printk(DRIVER_NAME": Unable to register misc device\n");
+ pr_err("unable to register misc device\n");
goto out_misc;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V2 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
2013-06-01 4:11 ` [PATCH V2 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
2013-06-01 4:11 ` [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level> Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg Joe Perches
` (4 subsequent siblings)
7 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Use the more common pkt_dbg(level, fmt, ...) form.
These messages are emitted at KERN_NOTICE.
Always emit function name with pkt_dbg(2, ...) uses and
remove the sometimes abbreviated embedded function name.
This form always verifies the format and arguments.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 107 ++++++++++++++++++++++++------------------------
1 file changed, 53 insertions(+), 54 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 12bdce4..b546d97 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -71,17 +71,13 @@
#define DRIVER_NAME "pktcdvd"
-#if PACKET_DEBUG
-#define DPRINTK(fmt, args...) printk(KERN_NOTICE fmt, ##args)
-#else
-#define DPRINTK(fmt, args...)
-#endif
-
-#if PACKET_DEBUG > 1
-#define VPRINTK(fmt, args...) printk(KERN_NOTICE fmt, ##args)
-#else
-#define VPRINTK(fmt, args...)
-#endif
+#define pkt_dbg(level, fmt, ...) \
+do { \
+ if (level == 2 && PACKET_DEBUG >= 2) \
+ pr_notice("%s: " fmt, __func__, ##__VA_ARGS__); \
+ else if (level == 1 && PACKET_DEBUG >= 1) \
+ pr_notice(fmt, ##__VA_ARGS__); \
+} while (0)
#define MAX_SPEED 0xffff
@@ -519,7 +515,7 @@ static void pkt_bio_finished(struct pktcdvd_device *pd)
{
BUG_ON(atomic_read(&pd->cdrw.pending_bios) <= 0);
if (atomic_dec_and_test(&pd->cdrw.pending_bios)) {
- VPRINTK(DRIVER_NAME": queue empty\n");
+ pkt_dbg(2, "queue empty\n");
atomic_set(&pd->iosched.attention, 1);
wake_up(&pd->wqueue);
}
@@ -871,7 +867,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
need_write_seek = 0;
if (need_write_seek && reads_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- VPRINTK(DRIVER_NAME": write, waiting\n");
+ pkt_dbg(2, "write, waiting\n");
break;
}
pkt_flush_cache(pd);
@@ -880,7 +876,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
} else {
if (!reads_queued && writes_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- VPRINTK(DRIVER_NAME": read, waiting\n");
+ pkt_dbg(2, "read, waiting\n");
break;
}
pd->iosched.writing = 1;
@@ -987,8 +983,9 @@ static void pkt_end_io_read(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- VPRINTK("pkt_end_io_read: bio=%p sec0=%llx sec=%llx err=%d\n", bio,
- (unsigned long long)pkt->sector, (unsigned long long)bio->bi_sector, err);
+ pkt_dbg(2, "bio=%p sec0=%llx sec=%llx err=%d\n",
+ bio, (unsigned long long)pkt->sector,
+ (unsigned long long)bio->bi_sector, err);
if (err)
atomic_inc(&pkt->io_errors);
@@ -1006,7 +1003,7 @@ static void pkt_end_io_packet_write(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- VPRINTK("pkt_end_io_packet_write: id=%d, err=%d\n", pkt->id, err);
+ pkt_dbg(2, "id=%d, err=%d\n", pkt->id, err);
pd->stats.pkt_ended++;
@@ -1048,7 +1045,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
spin_unlock(&pkt->lock);
if (pkt->cache_valid) {
- VPRINTK("pkt_gather_data: zone %llx cached\n",
+ pkt_dbg(2, "zone %llx cached\n",
(unsigned long long)pkt->sector);
goto out_account;
}
@@ -1071,7 +1068,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
p = (f * CD_FRAMESIZE) / PAGE_SIZE;
offset = (f * CD_FRAMESIZE) % PAGE_SIZE;
- VPRINTK("pkt_gather_data: Adding frame %d, page:%p offs:%d\n",
+ pkt_dbg(2, "Adding frame %d, page:%p offs:%d\n",
f, pkt->pages[p], offset);
if (!bio_add_page(bio, pkt->pages[p], CD_FRAMESIZE, offset))
BUG();
@@ -1083,7 +1080,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
}
out_account:
- VPRINTK("pkt_gather_data: need %d frames for zone %llx\n",
+ pkt_dbg(2, "need %d frames for zone %llx\n",
frames_read, (unsigned long long)pkt->sector);
pd->stats.pkt_started++;
pd->stats.secs_rg += frames_read * (CD_FRAMESIZE >> 9);
@@ -1184,7 +1181,8 @@ static inline void pkt_set_state(struct packet_data *pkt, enum packet_data_state
"IDLE", "WAITING", "READ_WAIT", "WRITE_WAIT", "RECOVERY", "FINISHED"
};
enum packet_data_state old_state = pkt->state;
- VPRINTK("pkt %2d : s=%6llx %s -> %s\n", pkt->id, (unsigned long long)pkt->sector,
+ pkt_dbg(2, "pkt %2d : s=%6llx %s -> %s\n",
+ pkt->id, (unsigned long long)pkt->sector,
state_name[old_state], state_name[state]);
#endif
pkt->state = state;
@@ -1203,12 +1201,12 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
struct rb_node *n;
int wakeup;
- VPRINTK("handle_queue\n");
+ pkt_dbg(2, "\n");
atomic_set(&pd->scan_queue, 0);
if (list_empty(&pd->cdrw.pkt_free_list)) {
- VPRINTK("handle_queue: no pkt\n");
+ pkt_dbg(2, "no pkt\n");
return 0;
}
@@ -1245,7 +1243,7 @@ try_next_bio:
}
spin_unlock(&pd->lock);
if (!bio) {
- VPRINTK("handle_queue: no bio\n");
+ pkt_dbg(2, "no bio\n");
return 0;
}
@@ -1261,10 +1259,10 @@ try_next_bio:
* to this packet.
*/
spin_lock(&pd->lock);
- VPRINTK("pkt_handle_queue: looking for zone %llx\n", (unsigned long long)zone);
+ pkt_dbg(2, "looking for zone %llx\n", (unsigned long long)zone);
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
- VPRINTK("pkt_handle_queue: found zone=%llx\n",
+ pkt_dbg(2, "found zone=%llx\n",
(unsigned long long)get_zone(bio->bi_sector, pd));
if (get_zone(bio->bi_sector, pd) != zone)
break;
@@ -1317,7 +1315,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
if (!bio_add_page(pkt->w_bio, bvec[f].bv_page, CD_FRAMESIZE, bvec[f].bv_offset))
BUG();
}
- VPRINTK(DRIVER_NAME": vcnt=%d\n", pkt->w_bio->bi_vcnt);
+ pkt_dbg(2, "vcnt=%d\n", pkt->w_bio->bi_vcnt);
/*
* Fill-in bvec with data from orig_bios.
@@ -1328,7 +1326,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
pkt_set_state(pkt, PACKET_WRITE_WAIT_STATE);
spin_unlock(&pkt->lock);
- VPRINTK("pkt_start_write: Writing %d frames for zone %llx\n",
+ pkt_dbg(2, "Writing %d frames for zone %llx\n",
pkt->write_size, (unsigned long long)pkt->sector);
if (test_bit(PACKET_MERGE_SEGS, &pd->flags) || (pkt->write_size < pkt->frames)) {
@@ -1360,7 +1358,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
{
int uptodate;
- VPRINTK("run_state_machine: pkt %d\n", pkt->id);
+ pkt_dbg(2, "pkt %d\n", pkt->id);
for (;;) {
switch (pkt->state) {
@@ -1399,7 +1397,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
if (pkt_start_recovery(pkt)) {
pkt_start_write(pd, pkt);
} else {
- VPRINTK("No recovery possible\n");
+ pkt_dbg(2, "No recovery possible\n");
pkt_set_state(pkt, PACKET_FINISHED_STATE);
}
break;
@@ -1420,7 +1418,7 @@ static void pkt_handle_packets(struct pktcdvd_device *pd)
{
struct packet_data *pkt, *next;
- VPRINTK("pkt_handle_packets\n");
+ pkt_dbg(2, "\n");
/*
* Run state machine for active packets
@@ -1503,9 +1501,9 @@ static int kcdrwd(void *foobar)
if (PACKET_DEBUG > 1) {
int states[PACKET_NUM_STATES];
pkt_count_states(pd, states);
- VPRINTK("kcdrwd: i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
- states[0], states[1], states[2], states[3],
- states[4], states[5]);
+ pkt_dbg(2, "i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
+ states[0], states[1], states[2],
+ states[3], states[4], states[5]);
}
min_sleep_time = MAX_SCHEDULE_TIMEOUT;
@@ -1514,9 +1512,9 @@ static int kcdrwd(void *foobar)
min_sleep_time = pkt->sleep_time;
}
- VPRINTK("kcdrwd: sleeping\n");
+ pkt_dbg(2, "sleeping\n");
residue = schedule_timeout(min_sleep_time);
- VPRINTK("kcdrwd: wake up\n");
+ pkt_dbg(2, "wake up\n");
/* make swsusp happy with our thread */
try_to_freeze();
@@ -1813,7 +1811,8 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
case 0x12: /* DVD-RAM */
return 1;
default:
- VPRINTK(DRIVER_NAME": Wrong disc profile (%x)\n", pd->mmc3_profile);
+ pkt_dbg(2, "Wrong disc profile (%x)\n",
+ pd->mmc3_profile);
return 0;
}
@@ -2128,7 +2127,7 @@ static noinline_for_stack int pkt_perform_opc(struct pktcdvd_device *pd)
struct request_sense sense;
int ret;
- VPRINTK(DRIVER_NAME": Performing OPC\n");
+ pkt_dbg(2, "Performing OPC\n");
init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
cgc.sense = &sense;
@@ -2146,12 +2145,12 @@ static int pkt_open_write(struct pktcdvd_device *pd)
unsigned int write_speed, media_write_speed, read_speed;
if ((ret = pkt_probe_settings(pd))) {
- VPRINTK(DRIVER_NAME": %s failed probe\n", pd->name);
+ pkt_dbg(2, "%s failed probe\n", pd->name);
return ret;
}
if ((ret = pkt_set_write_settings(pd))) {
- DPRINTK(DRIVER_NAME": %s failed saving write settings\n", pd->name);
+ pkt_dbg(1, "%s failed saving write settings\n", pd->name);
return -EIO;
}
@@ -2163,26 +2162,26 @@ static int pkt_open_write(struct pktcdvd_device *pd)
case 0x13: /* DVD-RW */
case 0x1a: /* DVD+RW */
case 0x12: /* DVD-RAM */
- DPRINTK(DRIVER_NAME": write speed %ukB/s\n", write_speed);
+ pkt_dbg(1, "write speed %ukB/s\n", write_speed);
break;
default:
if ((ret = pkt_media_speed(pd, &media_write_speed)))
media_write_speed = 16;
write_speed = min(write_speed, media_write_speed * 177);
- DPRINTK(DRIVER_NAME": write speed %ux\n", write_speed / 176);
+ pkt_dbg(1, "write speed %ux\n", write_speed / 176);
break;
}
read_speed = write_speed;
if ((ret = pkt_set_speed(pd, write_speed, read_speed))) {
- DPRINTK(DRIVER_NAME": %s couldn't set write speed\n", pd->name);
+ pkt_dbg(1, "%s couldn't set write speed\n", pd->name);
return -EIO;
}
pd->write_speed = write_speed;
pd->read_speed = read_speed;
if ((ret = pkt_perform_opc(pd))) {
- DPRINTK(DRIVER_NAME": %s Optimum Power Calibration failed\n", pd->name);
+ pkt_dbg(1, "%s Optimum Power Calibration failed\n", pd->name);
}
return 0;
@@ -2259,7 +2258,7 @@ out:
static void pkt_release_dev(struct pktcdvd_device *pd, int flush)
{
if (flush && pkt_flush_cache(pd))
- DPRINTK(DRIVER_NAME": %s not flushing cache\n", pd->name);
+ pkt_dbg(1, "%s not flushing cache\n", pd->name);
pkt_lock_door(pd, 0);
@@ -2281,7 +2280,7 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
struct pktcdvd_device *pd = NULL;
int ret;
- VPRINTK(DRIVER_NAME": entering open\n");
+ pkt_dbg(2, "entering\n");
mutex_lock(&pktcdvd_mutex);
mutex_lock(&ctl_mutex);
@@ -2317,7 +2316,7 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
out_dec:
pd->refcnt--;
out:
- VPRINTK(DRIVER_NAME": failed open (%d)\n", ret);
+ pkt_dbg(2, "failed (%d)\n", ret);
mutex_unlock(&ctl_mutex);
mutex_unlock(&pktcdvd_mutex);
return ret;
@@ -2399,7 +2398,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
zone = get_zone(bio->bi_sector, pd);
- VPRINTK("pkt_make_request: start = %6llx stop = %6llx\n",
+ pkt_dbg(2, "start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2654,7 +2653,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
}
proc_create_data(pd->name, 0, pkt_proc, &pkt_proc_fops, pd);
- DPRINTK(DRIVER_NAME": writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
+ pkt_dbg(1, "writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
return 0;
out_mem:
@@ -2669,8 +2668,8 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
struct pktcdvd_device *pd = bdev->bd_disk->private_data;
int ret;
- VPRINTK("pkt_ioctl: cmd %x, dev %d:%d\n", cmd,
- MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
+ pkt_dbg(2, "cmd %x, dev %d:%d\n",
+ cmd, MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
mutex_lock(&pktcdvd_mutex);
switch (cmd) {
@@ -2694,7 +2693,7 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
break;
default:
- VPRINTK(DRIVER_NAME": Unknown ioctl for %s (%x)\n", pd->name, cmd);
+ pkt_dbg(2, "Unknown ioctl for %s (%x)\n", pd->name, cmd);
ret = -ENOTTY;
}
mutex_unlock(&pktcdvd_mutex);
@@ -2843,7 +2842,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
break;
}
if (idx == MAX_WRITERS) {
- DPRINTK(DRIVER_NAME": dev not setup\n");
+ pkt_dbg(1, "dev not setup\n");
ret = -ENXIO;
goto out;
}
@@ -2863,7 +2862,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
blkdev_put(pd->bdev, FMODE_READ | FMODE_NDELAY);
remove_proc_entry(pd->name, pkt_proc);
- DPRINTK(DRIVER_NAME": writer %s unmapped\n", pd->name);
+ pkt_dbg(1, "writer %s unmapped\n", pd->name);
del_gendisk(pd->disk);
blk_cleanup_queue(pd->disk->queue);
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V2 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
` (2 preceding siblings ...)
2013-06-01 4:11 ` [PATCH V2 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible Joe Perches
` (3 subsequent siblings)
7 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add pd->name to output for these debugging messages.
Remove normally compiled out pkt_dbg(2, ...) function entry
tracing equivalents as it's better done via the function tracer.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 90 +++++++++++++++++++++++--------------------------
1 file changed, 42 insertions(+), 48 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index b546d97..954a34b 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -71,12 +71,13 @@
#define DRIVER_NAME "pktcdvd"
-#define pkt_dbg(level, fmt, ...) \
-do { \
- if (level == 2 && PACKET_DEBUG >= 2) \
- pr_notice("%s: " fmt, __func__, ##__VA_ARGS__); \
- else if (level == 1 && PACKET_DEBUG >= 1) \
- pr_notice(fmt, ##__VA_ARGS__); \
+#define pkt_dbg(level, pd, fmt, ...) \
+do { \
+ if (level == 2 && PACKET_DEBUG >= 2) \
+ pr_notice("%s: %s():" fmt, \
+ pd->name, __func__, ##__VA_ARGS__); \
+ else if (level == 1 && PACKET_DEBUG >= 1) \
+ pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__); \
} while (0)
#define MAX_SPEED 0xffff
@@ -515,7 +516,7 @@ static void pkt_bio_finished(struct pktcdvd_device *pd)
{
BUG_ON(atomic_read(&pd->cdrw.pending_bios) <= 0);
if (atomic_dec_and_test(&pd->cdrw.pending_bios)) {
- pkt_dbg(2, "queue empty\n");
+ pkt_dbg(2, pd, "queue empty\n");
atomic_set(&pd->iosched.attention, 1);
wake_up(&pd->wqueue);
}
@@ -867,7 +868,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
need_write_seek = 0;
if (need_write_seek && reads_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- pkt_dbg(2, "write, waiting\n");
+ pkt_dbg(2, pd, "write, waiting\n");
break;
}
pkt_flush_cache(pd);
@@ -876,7 +877,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
} else {
if (!reads_queued && writes_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- pkt_dbg(2, "read, waiting\n");
+ pkt_dbg(2, pd, "read, waiting\n");
break;
}
pd->iosched.writing = 1;
@@ -983,7 +984,7 @@ static void pkt_end_io_read(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- pkt_dbg(2, "bio=%p sec0=%llx sec=%llx err=%d\n",
+ pkt_dbg(2, pd, "bio=%p sec0=%llx sec=%llx err=%d\n",
bio, (unsigned long long)pkt->sector,
(unsigned long long)bio->bi_sector, err);
@@ -1003,7 +1004,7 @@ static void pkt_end_io_packet_write(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- pkt_dbg(2, "id=%d, err=%d\n", pkt->id, err);
+ pkt_dbg(2, pd, "id=%d, err=%d\n", pkt->id, err);
pd->stats.pkt_ended++;
@@ -1045,7 +1046,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
spin_unlock(&pkt->lock);
if (pkt->cache_valid) {
- pkt_dbg(2, "zone %llx cached\n",
+ pkt_dbg(2, pd, "zone %llx cached\n",
(unsigned long long)pkt->sector);
goto out_account;
}
@@ -1068,7 +1069,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
p = (f * CD_FRAMESIZE) / PAGE_SIZE;
offset = (f * CD_FRAMESIZE) % PAGE_SIZE;
- pkt_dbg(2, "Adding frame %d, page:%p offs:%d\n",
+ pkt_dbg(2, pd, "Adding frame %d, page:%p offs:%d\n",
f, pkt->pages[p], offset);
if (!bio_add_page(bio, pkt->pages[p], CD_FRAMESIZE, offset))
BUG();
@@ -1080,7 +1081,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
}
out_account:
- pkt_dbg(2, "need %d frames for zone %llx\n",
+ pkt_dbg(2, pd, "need %d frames for zone %llx\n",
frames_read, (unsigned long long)pkt->sector);
pd->stats.pkt_started++;
pd->stats.secs_rg += frames_read * (CD_FRAMESIZE >> 9);
@@ -1181,7 +1182,7 @@ static inline void pkt_set_state(struct packet_data *pkt, enum packet_data_state
"IDLE", "WAITING", "READ_WAIT", "WRITE_WAIT", "RECOVERY", "FINISHED"
};
enum packet_data_state old_state = pkt->state;
- pkt_dbg(2, "pkt %2d : s=%6llx %s -> %s\n",
+ pkt_dbg(2, pd, "pkt %2d : s=%6llx %s -> %s\n",
pkt->id, (unsigned long long)pkt->sector,
state_name[old_state], state_name[state]);
#endif
@@ -1201,12 +1202,10 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
struct rb_node *n;
int wakeup;
- pkt_dbg(2, "\n");
-
atomic_set(&pd->scan_queue, 0);
if (list_empty(&pd->cdrw.pkt_free_list)) {
- pkt_dbg(2, "no pkt\n");
+ pkt_dbg(2, pd, "no pkt\n");
return 0;
}
@@ -1243,7 +1242,7 @@ try_next_bio:
}
spin_unlock(&pd->lock);
if (!bio) {
- pkt_dbg(2, "no bio\n");
+ pkt_dbg(2, pd, "no bio\n");
return 0;
}
@@ -1259,10 +1258,10 @@ try_next_bio:
* to this packet.
*/
spin_lock(&pd->lock);
- pkt_dbg(2, "looking for zone %llx\n", (unsigned long long)zone);
+ pkt_dbg(2, pd, "looking for zone %llx\n", (unsigned long long)zone);
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
- pkt_dbg(2, "found zone=%llx\n",
+ pkt_dbg(2, pd, "found zone=%llx\n",
(unsigned long long)get_zone(bio->bi_sector, pd));
if (get_zone(bio->bi_sector, pd) != zone)
break;
@@ -1315,7 +1314,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
if (!bio_add_page(pkt->w_bio, bvec[f].bv_page, CD_FRAMESIZE, bvec[f].bv_offset))
BUG();
}
- pkt_dbg(2, "vcnt=%d\n", pkt->w_bio->bi_vcnt);
+ pkt_dbg(2, pd, "vcnt=%d\n", pkt->w_bio->bi_vcnt);
/*
* Fill-in bvec with data from orig_bios.
@@ -1326,7 +1325,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
pkt_set_state(pkt, PACKET_WRITE_WAIT_STATE);
spin_unlock(&pkt->lock);
- pkt_dbg(2, "Writing %d frames for zone %llx\n",
+ pkt_dbg(2, pd, "Writing %d frames for zone %llx\n",
pkt->write_size, (unsigned long long)pkt->sector);
if (test_bit(PACKET_MERGE_SEGS, &pd->flags) || (pkt->write_size < pkt->frames)) {
@@ -1358,7 +1357,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
{
int uptodate;
- pkt_dbg(2, "pkt %d\n", pkt->id);
+ pkt_dbg(2, pd, "pkt %d\n", pkt->id);
for (;;) {
switch (pkt->state) {
@@ -1397,7 +1396,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
if (pkt_start_recovery(pkt)) {
pkt_start_write(pd, pkt);
} else {
- pkt_dbg(2, "No recovery possible\n");
+ pkt_dbg(2, pd, "No recovery possible\n");
pkt_set_state(pkt, PACKET_FINISHED_STATE);
}
break;
@@ -1418,8 +1417,6 @@ static void pkt_handle_packets(struct pktcdvd_device *pd)
{
struct packet_data *pkt, *next;
- pkt_dbg(2, "\n");
-
/*
* Run state machine for active packets
*/
@@ -1501,7 +1498,7 @@ static int kcdrwd(void *foobar)
if (PACKET_DEBUG > 1) {
int states[PACKET_NUM_STATES];
pkt_count_states(pd, states);
- pkt_dbg(2, "i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
+ pkt_dbg(2, pd, "i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
states[0], states[1], states[2],
states[3], states[4], states[5]);
}
@@ -1512,9 +1509,9 @@ static int kcdrwd(void *foobar)
min_sleep_time = pkt->sleep_time;
}
- pkt_dbg(2, "sleeping\n");
+ pkt_dbg(2, pd, "sleeping\n");
residue = schedule_timeout(min_sleep_time);
- pkt_dbg(2, "wake up\n");
+ pkt_dbg(2, pd, "wake up\n");
/* make swsusp happy with our thread */
try_to_freeze();
@@ -1811,7 +1808,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
case 0x12: /* DVD-RAM */
return 1;
default:
- pkt_dbg(2, "Wrong disc profile (%x)\n",
+ pkt_dbg(2, pd, "Wrong disc profile (%x)\n",
pd->mmc3_profile);
return 0;
}
@@ -2127,7 +2124,7 @@ static noinline_for_stack int pkt_perform_opc(struct pktcdvd_device *pd)
struct request_sense sense;
int ret;
- pkt_dbg(2, "Performing OPC\n");
+ pkt_dbg(2, pd, "Performing OPC\n");
init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
cgc.sense = &sense;
@@ -2145,12 +2142,12 @@ static int pkt_open_write(struct pktcdvd_device *pd)
unsigned int write_speed, media_write_speed, read_speed;
if ((ret = pkt_probe_settings(pd))) {
- pkt_dbg(2, "%s failed probe\n", pd->name);
+ pkt_dbg(2, pd, "failed probe\n");
return ret;
}
if ((ret = pkt_set_write_settings(pd))) {
- pkt_dbg(1, "%s failed saving write settings\n", pd->name);
+ pkt_dbg(1, pd, "failed saving write settings\n");
return -EIO;
}
@@ -2162,26 +2159,26 @@ static int pkt_open_write(struct pktcdvd_device *pd)
case 0x13: /* DVD-RW */
case 0x1a: /* DVD+RW */
case 0x12: /* DVD-RAM */
- pkt_dbg(1, "write speed %ukB/s\n", write_speed);
+ pkt_dbg(1, pd, "write speed %ukB/s\n", write_speed);
break;
default:
if ((ret = pkt_media_speed(pd, &media_write_speed)))
media_write_speed = 16;
write_speed = min(write_speed, media_write_speed * 177);
- pkt_dbg(1, "write speed %ux\n", write_speed / 176);
+ pkt_dbg(1, pd, "write speed %ux\n", write_speed / 176);
break;
}
read_speed = write_speed;
if ((ret = pkt_set_speed(pd, write_speed, read_speed))) {
- pkt_dbg(1, "%s couldn't set write speed\n", pd->name);
+ pkt_dbg(1, pd, "couldn't set write speed\n");
return -EIO;
}
pd->write_speed = write_speed;
pd->read_speed = read_speed;
if ((ret = pkt_perform_opc(pd))) {
- pkt_dbg(1, "%s Optimum Power Calibration failed\n", pd->name);
+ pkt_dbg(1, pd, "Optimum Power Calibration failed\n");
}
return 0;
@@ -2258,7 +2255,7 @@ out:
static void pkt_release_dev(struct pktcdvd_device *pd, int flush)
{
if (flush && pkt_flush_cache(pd))
- pkt_dbg(1, "%s not flushing cache\n", pd->name);
+ pkt_dbg(1, pd, "not flushing cache\n");
pkt_lock_door(pd, 0);
@@ -2280,8 +2277,6 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
struct pktcdvd_device *pd = NULL;
int ret;
- pkt_dbg(2, "entering\n");
-
mutex_lock(&pktcdvd_mutex);
mutex_lock(&ctl_mutex);
pd = pkt_find_dev_from_minor(MINOR(bdev->bd_dev));
@@ -2316,7 +2311,6 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
out_dec:
pd->refcnt--;
out:
- pkt_dbg(2, "failed (%d)\n", ret);
mutex_unlock(&ctl_mutex);
mutex_unlock(&pktcdvd_mutex);
return ret;
@@ -2398,7 +2392,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
zone = get_zone(bio->bi_sector, pd);
- pkt_dbg(2, "start = %6llx stop = %6llx\n",
+ pkt_dbg(2, pd, "start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2653,7 +2647,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
}
proc_create_data(pd->name, 0, pkt_proc, &pkt_proc_fops, pd);
- pkt_dbg(1, "writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
+ pkt_dbg(1, pd, "writer mapped to %s\n", bdevname(bdev, b));
return 0;
out_mem:
@@ -2668,7 +2662,7 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
struct pktcdvd_device *pd = bdev->bd_disk->private_data;
int ret;
- pkt_dbg(2, "cmd %x, dev %d:%d\n",
+ pkt_dbg(2, pd, "cmd %x, dev %d:%d\n",
cmd, MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
mutex_lock(&pktcdvd_mutex);
@@ -2693,7 +2687,7 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
break;
default:
- pkt_dbg(2, "Unknown ioctl for %s (%x)\n", pd->name, cmd);
+ pkt_dbg(2, pd, "Unknown ioctl (%x)\n", cmd);
ret = -ENOTTY;
}
mutex_unlock(&pktcdvd_mutex);
@@ -2842,7 +2836,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
break;
}
if (idx == MAX_WRITERS) {
- pkt_dbg(1, "dev not setup\n");
+ pkt_dbg(1, pd, "dev not setup\n");
ret = -ENXIO;
goto out;
}
@@ -2862,7 +2856,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
blkdev_put(pd->bdev, FMODE_READ | FMODE_NDELAY);
remove_proc_entry(pd->name, pkt_proc);
- pkt_dbg(1, "writer %s unmapped\n", pd->name);
+ pkt_dbg(1, pd, "writer unmapped\n");
del_gendisk(pd->disk);
blk_cleanup_queue(pd->disk->queue);
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V2 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
` (3 preceding siblings ...)
2013-06-01 4:11 ` [PATCH V2 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 6/8] pktcdvd: Convert pr_notice to pkt_notice Joe Perches
` (2 subsequent siblings)
7 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add a new pkt_err macro to prefix the name to the logging output.
Convert pr_err where there is a non-null struct pktcdvd_device.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 44 ++++++++++++++++++++++++--------------------
1 file changed, 24 insertions(+), 20 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 954a34b..07ff878 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -80,6 +80,9 @@ do { \
pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__); \
} while (0)
+#define pkt_err(pd, fmt, ...) \
+ pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
+
#define MAX_SPEED 0xffff
static DEFINE_MUTEX(pktcdvd_mutex);
@@ -939,7 +942,7 @@ static int pkt_set_segment_merging(struct pktcdvd_device *pd, struct request_que
set_bit(PACKET_MERGE_SEGS, &pd->flags);
return 0;
} else {
- pr_err("cdrom max_phys_segments too small\n");
+ pkt_err(pd, "cdrom max_phys_segments too small\n");
return -EIO;
}
}
@@ -1746,7 +1749,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
/*
* paranoia
*/
- pr_err("write mode wrong %d\n", wp->data_block_type);
+ pkt_err(pd, "write mode wrong %d\n", wp->data_block_type);
return 1;
}
wp->packet_size = cpu_to_be32(pd->settings.size >> 2);
@@ -1790,7 +1793,7 @@ static int pkt_writable_track(struct pktcdvd_device *pd, track_information *ti)
if (ti->rt == 1 && ti->blank == 0)
return 1;
- pr_err("bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
+ pkt_err(pd, "bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
return 0;
}
@@ -1823,7 +1826,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
}
if (di->disc_type != 0x20 && di->disc_type != 0) {
- pr_err("wrong disc type (%x)\n", di->disc_type);
+ pkt_err(pd, "wrong disc type (%x)\n", di->disc_type);
return 0;
}
@@ -1833,7 +1836,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
}
if (di->border_status == PACKET_SESSION_RESERVED) {
- pr_err("can't write to last track (reserved)\n");
+ pkt_err(pd, "can't write to last track (reserved)\n");
return 0;
}
@@ -1858,7 +1861,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
memset(&ti, 0, sizeof(track_information));
if ((ret = pkt_get_disc_info(pd, &di))) {
- pr_err("failed get_disc\n");
+ pkt_err(pd, "failed get_disc\n");
return ret;
}
@@ -1869,12 +1872,12 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
track = 1; /* (di.last_track_msb << 8) | di.last_track_lsb; */
if ((ret = pkt_get_track_info(pd, track, 1, &ti))) {
- pr_err("failed get_track\n");
+ pkt_err(pd, "failed get_track\n");
return ret;
}
if (!pkt_writable_track(pd, &ti)) {
- pr_err("can't write to this track\n");
+ pkt_err(pd, "can't write to this track\n");
return -EROFS;
}
@@ -1888,7 +1891,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
return -ENXIO;
}
if (pd->settings.size > PACKET_MAX_SECTORS) {
- pr_err("packet size is too big\n");
+ pkt_err(pd, "packet size is too big\n");
return -EROFS;
}
pd->settings.fp = ti.fp;
@@ -1930,7 +1933,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
pd->settings.block_mode = PACKET_BLOCK_MODE2;
break;
default:
- pr_err("unknown data mode\n");
+ pkt_err(pd, "unknown data mode\n");
return -EROFS;
}
return 0;
@@ -1964,7 +1967,7 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
cgc.buflen = cgc.cmd[8] = 2 + ((buf[0] << 8) | (buf[1] & 0xff));
ret = pkt_mode_select(pd, &cgc);
if (ret) {
- pr_err("write caching control failed\n");
+ pkt_err(pd, "write caching control failed\n");
pkt_dump_sense(&cgc);
} else if (!ret && set)
pr_notice("enabled write caching on %s\n", pd->name);
@@ -2203,7 +2206,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
goto out;
if ((ret = pkt_get_last_written(pd, &lba))) {
- pr_err("pkt_get_last_written failed\n");
+ pkt_err(pd, "pkt_get_last_written failed\n");
goto out_putdev;
}
@@ -2233,7 +2236,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
if (write) {
if (!pkt_grow_pktlist(pd, CONFIG_CDROM_PKTCDVD_BUFFERS)) {
- pr_err("not enough memory for buffers\n");
+ pkt_err(pd, "not enough memory for buffers\n");
ret = -ENOMEM;
goto out_putdev;
}
@@ -2356,8 +2359,8 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
pd = q->queuedata;
if (!pd) {
- pr_err("%s incorrect request queue\n",
- bdevname(bio->bi_bdev, b));
+ pkt_err(pd, "%s incorrect request queue\n",
+ bdevname(bio->bi_bdev, b));
goto end_io;
}
@@ -2385,7 +2388,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
}
if (!bio->bi_size || (bio->bi_size % CD_FRAMESIZE)) {
- pr_err("wrong bio size\n");
+ pkt_err(pd, "wrong bio size\n");
goto end_io;
}
@@ -2606,7 +2609,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
struct block_device *bdev;
if (pd->pkt_dev == dev) {
- pr_err("recursive setup not allowed\n");
+ pkt_err(pd, "recursive setup not allowed\n");
return -EBUSY;
}
for (i = 0; i < MAX_WRITERS; i++) {
@@ -2614,11 +2617,12 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
if (!pd2)
continue;
if (pd2->bdev->bd_dev == dev) {
- pr_err("%s already setup\n", bdevname(pd2->bdev, b));
+ pkt_err(pd, "%s already setup\n",
+ bdevname(pd2->bdev, b));
return -EBUSY;
}
if (pd2->pkt_dev == dev) {
- pr_err("can't chain pktcdvd devices\n");
+ pkt_err(pd, "can't chain pktcdvd devices\n");
return -EBUSY;
}
}
@@ -2641,7 +2645,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
atomic_set(&pd->cdrw.pending_bios, 0);
pd->cdrw.thread = kthread_run(kcdrwd, pd, "%s", pd->name);
if (IS_ERR(pd->cdrw.thread)) {
- pr_err("can't start kernel thread\n");
+ pkt_err(pd, "can't start kernel thread\n");
ret = -ENOMEM;
goto out_mem;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V2 6/8] pktcdvd: Convert pr_notice to pkt_notice
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
` (4 preceding siblings ...)
2013-06-01 4:11 ` [PATCH V2 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-02 12:12 ` Andy Shevchenko
2013-06-01 4:11 ` [PATCH V2 7/8] pktcdvd: Convert pr_info to pkt_info Joe Perches
2013-06-01 4:11 ` [PATCH V2 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense() Joe Perches
7 siblings, 1 reply; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add a new pkt_notice macro to prefix the name to the logging output.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 32 +++++++++++++++++---------------
1 file changed, 17 insertions(+), 15 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 07ff878..3815f01 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -71,17 +71,19 @@
#define DRIVER_NAME "pktcdvd"
+#define pkt_err(pd, fmt, ...) \
+ pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
+#define pkt_notice(pd, fmt, ...) \
+ pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__)
+
#define pkt_dbg(level, pd, fmt, ...) \
do { \
if (level == 2 && PACKET_DEBUG >= 2) \
- pr_notice("%s: %s():" fmt, \
- pd->name, __func__, ##__VA_ARGS__); \
+ pkt_notice(pd, "%s(): " fmt, __func__, ##__VA_ARGS__); \
else if (level == 1 && PACKET_DEBUG >= 1) \
- pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__); \
+ pkt_notice(pd, fmt, ##__VA_ARGS__); \
} while (0)
-#define pkt_err(pd, fmt, ...) \
- pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
#define MAX_SPEED 0xffff
@@ -1821,7 +1823,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
* but i'm not sure, should we leave this to user apps? probably.
*/
if (di->disc_type == 0xff) {
- pr_notice("unknown disc - no track?\n");
+ pkt_notice(pd, "unknown disc - no track?\n");
return 0;
}
@@ -1831,7 +1833,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
}
if (di->erasable == 0) {
- pr_notice("disc not erasable\n");
+ pkt_notice(pd, "disc not erasable\n");
return 0;
}
@@ -1887,7 +1889,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
*/
pd->settings.size = be32_to_cpu(ti.fixed_packet_size) << 2;
if (pd->settings.size == 0) {
- pr_notice("detected zero packet size!\n");
+ pkt_notice(pd, "detected zero packet size!\n");
return -ENXIO;
}
if (pd->settings.size > PACKET_MAX_SECTORS) {
@@ -1970,7 +1972,7 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
pkt_err(pd, "write caching control failed\n");
pkt_dump_sense(&cgc);
} else if (!ret && set)
- pr_notice("enabled write caching on %s\n", pd->name);
+ pkt_notice(pd, "enabled write caching\n");
return ret;
}
@@ -2085,11 +2087,11 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
}
if (!(buf[6] & 0x40)) {
- pr_notice("disc type is not CD-RW\n");
+ pkt_notice(pd, "disc type is not CD-RW\n");
return 1;
}
if (!(buf[6] & 0x4)) {
- pr_notice("A1 values on media are not valid, maybe not CDRW?\n");
+ pkt_notice(pd, "A1 values on media are not valid, maybe not CDRW?\n");
return 1;
}
@@ -2109,14 +2111,14 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
*speed = us_clv_to_speed[sp];
break;
default:
- pr_notice("unknown disc sub-type %d\n", st);
+ pkt_notice(pd, "unknown disc sub-type %d\n", st);
return 1;
}
if (*speed) {
pr_info("maximum media speed: %d\n", *speed);
return 0;
} else {
- pr_notice("unknown speed %d for sub-type %d\n", sp, st);
+ pkt_notice(pd, "unknown speed %d for sub-type %d\n", sp, st);
return 1;
}
}
@@ -2382,8 +2384,8 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
}
if (!test_bit(PACKET_WRITABLE, &pd->flags)) {
- pr_notice("WRITE for ro device %s (%llu)\n",
- pd->name, (unsigned long long)bio->bi_sector);
+ pkt_notice(pd, "WRITE for ro device (%llu)\n",
+ (unsigned long long)bio->bi_sector);
goto end_io;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V2 7/8] pktcdvd: Convert pr_info to pkt_info
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
` (5 preceding siblings ...)
2013-06-01 4:11 ` [PATCH V2 6/8] pktcdvd: Convert pr_notice to pkt_notice Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense() Joe Perches
7 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add a new pkt_info macro to prefix the name to the logging output.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 3815f01..995d688 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -75,6 +75,8 @@
pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
#define pkt_notice(pd, fmt, ...) \
pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__)
+#define pkt_info(pd, fmt, ...) \
+ pr_info("%s: " fmt, pd->name, ##__VA_ARGS__)
#define pkt_dbg(level, pd, fmt, ...) \
do { \
@@ -1564,10 +1566,10 @@ work_to_do:
static void pkt_print_settings(struct pktcdvd_device *pd)
{
- pr_info("%s packets, %u blocks, Mode-%c disc\n",
- pd->settings.fp ? "Fixed" : "Variable",
- pd->settings.size >> 2,
- pd->settings.block_mode == 8 ? '1' : '2');
+ pkt_info(pd, "%s packets, %u blocks, Mode-%c disc\n",
+ pd->settings.fp ? "Fixed" : "Variable",
+ pd->settings.size >> 2,
+ pd->settings.block_mode == 8 ? '1' : '2');
}
static int pkt_mode_sense(struct pktcdvd_device *pd, struct packet_command *cgc, int page_code, int page_control)
@@ -2115,7 +2117,7 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
return 1;
}
if (*speed) {
- pr_info("maximum media speed: %d\n", *speed);
+ pkt_info(pd, "maximum media speed: %d\n", *speed);
return 0;
} else {
pkt_notice(pd, "unknown speed %d for sub-type %d\n", sp, st);
@@ -2242,7 +2244,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
ret = -ENOMEM;
goto out_putdev;
}
- pr_info("%lukB available on disc\n", lba << 1);
+ pkt_info(pd, "%lukB available on disc\n", lba << 1);
}
return 0;
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V2 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense()
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
` (6 preceding siblings ...)
2013-06-01 4:11 ` [PATCH V2 7/8] pktcdvd: Convert pr_info to pkt_info Joe Perches
@ 2013-06-01 4:11 ` Joe Perches
7 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-01 4:11 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Allow the device name to be emitted with pkt_err when
logging the sense data.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 31 ++++++++++++++++---------------
1 file changed, 16 insertions(+), 15 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 995d688..5a6710f 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -756,17 +756,18 @@ static const char *sense_key_string(__u8 index)
* A generic sense dump / resolve mechanism should be implemented across
* all ATAPI + SCSI devices.
*/
-static void pkt_dump_sense(struct packet_command *cgc)
+static void pkt_dump_sense(struct pktcdvd_device *pd,
+ struct packet_command *cgc)
{
struct request_sense *sense = cgc->sense;
if (sense)
- pr_err("%*ph - sense %02x.%02x.%02x (%s)\n",
- CDROM_PACKET_SIZE, cgc->cmd,
- sense->sense_key, sense->asc, sense->ascq,
- sense_key_string(sense->sense_key));
+ pkt_err(pd, "%*ph - sense %02x.%02x.%02x (%s)\n",
+ CDROM_PACKET_SIZE, cgc->cmd,
+ sense->sense_key, sense->asc, sense->ascq,
+ sense_key_string(sense->sense_key));
else
- pr_err("%*ph - no sense\n", CDROM_PACKET_SIZE, cgc->cmd);
+ pkt_err(pd, "%*ph - no sense\n", CDROM_PACKET_SIZE, cgc->cmd);
}
/*
@@ -809,7 +810,7 @@ static noinline_for_stack int pkt_set_speed(struct pktcdvd_device *pd,
cgc.cmd[5] = write_speed & 0xff;
if ((ret = pkt_generic_packet(pd, &cgc)))
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1703,7 +1704,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
init_cdrom_command(&cgc, buffer, sizeof(*wp), CGC_DATA_READ);
cgc.sense = &sense;
if ((ret = pkt_mode_sense(pd, &cgc, GPMODE_WRITE_PARMS_PAGE, 0))) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1718,7 +1719,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
init_cdrom_command(&cgc, buffer, size, CGC_DATA_READ);
cgc.sense = &sense;
if ((ret = pkt_mode_sense(pd, &cgc, GPMODE_WRITE_PARMS_PAGE, 0))) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1760,7 +1761,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
cgc.buflen = cgc.cmd[8] = size;
if ((ret = pkt_mode_select(pd, &cgc))) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1972,7 +1973,7 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
ret = pkt_mode_select(pd, &cgc);
if (ret) {
pkt_err(pd, "write caching control failed\n");
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
} else if (!ret && set)
pkt_notice(pd, "enabled write caching\n");
return ret;
@@ -2010,7 +2011,7 @@ static noinline_for_stack int pkt_get_max_speed(struct pktcdvd_device *pd,
sizeof(struct mode_page_header);
ret = pkt_mode_sense(pd, &cgc, GPMODE_CAPABILITIES_PAGE, 0);
if (ret) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
}
@@ -2069,7 +2070,7 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
cgc.cmd[8] = 2;
ret = pkt_generic_packet(pd, &cgc);
if (ret) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
size = ((unsigned int) buf[0]<<8) + buf[1] + 2;
@@ -2084,7 +2085,7 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
cgc.cmd[8] = size;
ret = pkt_generic_packet(pd, &cgc);
if (ret) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -2139,7 +2140,7 @@ static noinline_for_stack int pkt_perform_opc(struct pktcdvd_device *pd)
cgc.cmd[0] = GPCMD_SEND_OPC;
cgc.cmd[1] = 1;
if ((ret = pkt_generic_packet(pd, &cgc)))
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* Re: [PATCH V2 6/8] pktcdvd: Convert pr_notice to pkt_notice
2013-06-01 4:11 ` [PATCH V2 6/8] pktcdvd: Convert pr_notice to pkt_notice Joe Perches
@ 2013-06-02 12:12 ` Andy Shevchenko
2013-06-02 12:22 ` Joe Perches
0 siblings, 1 reply; 38+ messages in thread
From: Andy Shevchenko @ 2013-06-02 12:12 UTC (permalink / raw)
To: Joe Perches; +Cc: Jiri Kosina, Dan Carpenter, linux-kernel
On Sat, Jun 1, 2013 at 7:11 AM, Joe Perches <joe@perches.com> wrote:
> Add a new pkt_notice macro to prefix the name to the logging output.
One nitpick below.
> --- a/drivers/block/pktcdvd.c
> +++ b/drivers/block/pktcdvd.c
> @@ -71,17 +71,19 @@
>
> #define DRIVER_NAME "pktcdvd"
>
> +#define pkt_err(pd, fmt, ...) \
> + pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
> +#define pkt_notice(pd, fmt, ...) \
> + pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__)
> +
> #define pkt_dbg(level, pd, fmt, ...) \
> do { \
> if (level == 2 && PACKET_DEBUG >= 2) \
> - pr_notice("%s: %s():" fmt, \
> - pd->name, __func__, ##__VA_ARGS__); \
> + pkt_notice(pd, "%s(): " fmt, __func__, ##__VA_ARGS__); \
> else if (level == 1 && PACKET_DEBUG >= 1) \
> - pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__); \
> + pkt_notice(pd, fmt, ##__VA_ARGS__); \
> } while (0)
>
> -#define pkt_err(pd, fmt, ...) \
> - pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
May be put this in the right place before?
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH V2 6/8] pktcdvd: Convert pr_notice to pkt_notice
2013-06-02 12:12 ` Andy Shevchenko
@ 2013-06-02 12:22 ` Joe Perches
0 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-02 12:22 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: Jiri Kosina, Dan Carpenter, linux-kernel
On Sun, 2013-06-02 at 15:12 +0300, Andy Shevchenko wrote:
> On Sat, Jun 1, 2013 at 7:11 AM, Joe Perches <joe@perches.com> wrote:
> > Add a new pkt_notice macro to prefix the name to the logging output.
>
> One nitpick below.
>
> > --- a/drivers/block/pktcdvd.c
[]
> > +#define pkt_err(pd, fmt, ...) \
> > + pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
> > +#define pkt_notice(pd, fmt, ...) \
> > + pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__)
> > +
[]
> > -#define pkt_err(pd, fmt, ...) \
> > - pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
>
> May be put this in the right place before?
It all ends up well. I think it's not worth the bother.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level>
2013-06-01 4:11 ` [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level> Joe Perches
@ 2013-06-03 9:57 ` Dan Carpenter
2013-06-03 10:42 ` Andy Shevchenko
2013-06-03 11:59 ` Joe Perches
0 siblings, 2 replies; 38+ messages in thread
From: Dan Carpenter @ 2013-06-03 9:57 UTC (permalink / raw)
To: Joe Perches; +Cc: Jiri Kosina, Andy Shevchenko, linux-kernel
On Fri, May 31, 2013 at 09:11:23PM -0700, Joe Perches wrote:
> +static const char *sense_key_string(__u8 index)
> +{
> + static const char *info[9] = {
> + "No sense", "Recovered error", "Not ready",
> + "Medium error", "Hardware error", "Illegal request",
> + "Unit attention", "Data protect", "Blank check"
> + };
> + if (index < 8)
Off by one:
if (index < 9)
> + return info[index];
> + return "INVALID";
regards,
dan carpenter
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level>
2013-06-03 9:57 ` Dan Carpenter
@ 2013-06-03 10:42 ` Andy Shevchenko
2013-06-03 11:59 ` Joe Perches
1 sibling, 0 replies; 38+ messages in thread
From: Andy Shevchenko @ 2013-06-03 10:42 UTC (permalink / raw)
To: Dan Carpenter; +Cc: Joe Perches, Jiri Kosina, linux-kernel
On Mon, Jun 3, 2013 at 12:57 PM, Dan Carpenter <dan.carpenter@oracle.com> wrote:
> On Fri, May 31, 2013 at 09:11:23PM -0700, Joe Perches wrote:
>> +static const char *sense_key_string(__u8 index)
>> +{
>> + static const char *info[9] = {
>> + "No sense", "Recovered error", "Not ready",
>> + "Medium error", "Hardware error", "Illegal request",
>> + "Unit attention", "Data protect", "Blank check"
>> + };
>> + if (index < 8)
>
> Off by one:
>
> if (index < 9)
Perhaps
if (index < ARRAY_SIZE(info)) ?
I actually didn't test this, if it returns number of strings.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level>
2013-06-03 9:57 ` Dan Carpenter
2013-06-03 10:42 ` Andy Shevchenko
@ 2013-06-03 11:59 ` Joe Perches
2013-06-03 12:50 ` Dan Carpenter
1 sibling, 1 reply; 38+ messages in thread
From: Joe Perches @ 2013-06-03 11:59 UTC (permalink / raw)
To: Dan Carpenter; +Cc: Jiri Kosina, Andy Shevchenko, linux-kernel
On Mon, 2013-06-03 at 12:57 +0300, Dan Carpenter wrote:
> On Fri, May 31, 2013 at 09:11:23PM -0700, Joe Perches wrote:
> > +static const char *sense_key_string(__u8 index)
> > +{
> > + static const char *info[9] = {
> > + "No sense", "Recovered error", "Not ready",
> > + "Medium error", "Hardware error", "Illegal request",
> > + "Unit attention", "Data protect", "Blank check"
> > + };
> > + if (index < 8)
>
> Off by one:
>
> if (index < 9)
Kinda, but that's the original code.
It should be ARRAY_SIZE and I think it should be
done in a separate patch.
Someone should say if "Blank check" is really one
of the sense key values possible or if it should
just be deleted.
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level>
2013-06-03 11:59 ` Joe Perches
@ 2013-06-03 12:50 ` Dan Carpenter
2013-06-03 12:58 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
0 siblings, 2 replies; 38+ messages in thread
From: Dan Carpenter @ 2013-06-03 12:50 UTC (permalink / raw)
To: Joe Perches; +Cc: Jiri Kosina, Andy Shevchenko, linux-kernel
On Mon, Jun 03, 2013 at 04:59:31AM -0700, Joe Perches wrote:
> On Mon, 2013-06-03 at 12:57 +0300, Dan Carpenter wrote:
> > On Fri, May 31, 2013 at 09:11:23PM -0700, Joe Perches wrote:
> > > +static const char *sense_key_string(__u8 index)
> > > +{
> > > + static const char *info[9] = {
> > > + "No sense", "Recovered error", "Not ready",
> > > + "Medium error", "Hardware error", "Illegal request",
> > > + "Unit attention", "Data protect", "Blank check"
> > > + };
> > > + if (index < 8)
> >
> > Off by one:
> >
> > if (index < 9)
>
> Kinda, but that's the original code.
>
> It should be ARRAY_SIZE and I think it should be
> done in a separate patch.
>
> Someone should say if "Blank check" is really one
> of the sense key values possible or if it should
> just be deleted.
Read it again. ;) In the original code, 8 was valid.
Andy is right though that it should be ARRAY_SIZE().
regards,
dan carpenter
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level>
2013-06-03 12:50 ` Dan Carpenter
@ 2013-06-03 12:58 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
1 sibling, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 12:58 UTC (permalink / raw)
To: Dan Carpenter; +Cc: Jiri Kosina, Andy Shevchenko, linux-kernel
On Mon, 2013-06-03 at 15:50 +0300, Dan Carpenter wrote:
> Read it again. ;) In the original code, 8 was valid.
Right, I stuffed it up. Thanks, I'll resubmit later.
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH V3 0/8] pktcdvd: More neatenings
2013-06-03 12:50 ` Dan Carpenter
2013-06-03 12:58 ` Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
` (8 more replies)
1 sibling, 9 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Thanks for the oversight reviews guys.
V3:
Fixed patch 2 thinko in sense_string via Dan Carpenter
Moved pr_err in patch 5 to avoid moving again in patch 6 via Andy Schevchenko
V2:
Removed the compile error the patch 1 and compile fix in 2
Added Andy's suggestion in patch 2.
Added conversions to print pd->name in logging macros.
Joe Perches (8):
pktcdvd: Convert ZONE macro to static function get_zone()
pktcdvd: Convert printk to pr_<level>
pktcdvd: Consolidate DPRINTK and VPRINTK macros
pktcdvd: Add struct pktcdvd_device * to pkt_dbg
pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible
pktcdvd: Convert pr_notice to pkt_notice
pktcdvd: Convert pr_info to pkt_info
pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense()
drivers/block/pktcdvd.c | 278 ++++++++++++++++++++++++------------------------
1 file changed, 140 insertions(+), 138 deletions(-)
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH V3 1/8] pktcdvd: Convert ZONE macro to static function get_zone()
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 2/8] pktcdvd: Convert printk to pr_<level> Joe Perches
` (7 subsequent siblings)
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Macros should be converted to functions where feasible to
verify arguments and the like.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 09142c4..9dcb601 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -83,9 +83,6 @@
#define MAX_SPEED 0xffff
-#define ZONE(sector, pd) (((sector) + (pd)->offset) & \
- ~(sector_t)((pd)->settings.size - 1))
-
static DEFINE_MUTEX(pktcdvd_mutex);
static struct pktcdvd_device *pkt_devs[MAX_WRITERS];
static struct proc_dir_entry *pkt_proc;
@@ -103,7 +100,10 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev);
static int pkt_remove_dev(dev_t pkt_dev);
static int pkt_seq_show(struct seq_file *m, void *p);
-
+static sector_t get_zone(sector_t sector, struct pktcdvd_device *pd)
+{
+ return (sector + pd->offset) & ~(sector_t)(pd->settings.size - 1);
+}
/*
* create and register a pktcdvd kernel object.
@@ -1226,7 +1226,7 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
node = first_node;
while (node) {
bio = node->bio;
- zone = ZONE(bio->bi_sector, pd);
+ zone = get_zone(bio->bi_sector, pd);
list_for_each_entry(p, &pd->cdrw.pkt_active_list, list) {
if (p->sector == zone) {
bio = NULL;
@@ -1266,8 +1266,8 @@ try_next_bio:
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
VPRINTK("pkt_handle_queue: found zone=%llx\n",
- (unsigned long long)ZONE(bio->bi_sector, pd));
- if (ZONE(bio->bi_sector, pd) != zone)
+ (unsigned long long)get_zone(bio->bi_sector, pd));
+ if (get_zone(bio->bi_sector, pd) != zone)
break;
pkt_rbtree_erase(pd, node);
spin_lock(&pkt->lock);
@@ -2397,7 +2397,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
- zone = ZONE(bio->bi_sector, pd);
+ zone = get_zone(bio->bi_sector, pd);
VPRINTK("pkt_make_request: start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2408,7 +2408,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
sector_t last_zone;
int first_sectors;
- last_zone = ZONE(bio_end_sector(bio) - 1, pd);
+ last_zone = get_zone(bio_end_sector(bio) - 1, pd);
if (last_zone != zone) {
BUG_ON(last_zone != zone + pd->settings.size);
first_sectors = last_zone - bio->bi_sector;
@@ -2503,7 +2503,7 @@ static int pkt_merge_bvec(struct request_queue *q, struct bvec_merge_data *bmd,
struct bio_vec *bvec)
{
struct pktcdvd_device *pd = q->queuedata;
- sector_t zone = ZONE(bmd->bi_sector, pd);
+ sector_t zone = get_zone(bmd->bi_sector, pd);
int used = ((bmd->bi_sector - zone) << 9) + bmd->bi_size;
int remaining = (pd->settings.size << 9) - used;
int remaining2;
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V3 2/8] pktcdvd: Convert printk to pr_<level>
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
2013-06-03 16:45 ` [PATCH V3 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
` (6 subsequent siblings)
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Use a more current logging style and add messages levels
to the logging messages.
Simplify pkt_dump_sense by using %*ph and adding a simple
function to emit the sense string.
Signed-off-by: Joe Perches <joe@perches.com>
Improved-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Improved-by: Dan Carpenter <dan.carpenter@oracle.com>
---
V3: Fixed sense_string array indexing thinko
drivers/block/pktcdvd.c | 122 ++++++++++++++++++++++++------------------------
1 file changed, 61 insertions(+), 61 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 9dcb601..84d4c33 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -44,6 +44,8 @@
*
*************************************************************************/
+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
+
#include <linux/pktcdvd.h>
#include <linux/module.h>
#include <linux/types.h>
@@ -424,7 +426,7 @@ static int pkt_sysfs_init(void)
if (ret) {
kfree(class_pktcdvd);
class_pktcdvd = NULL;
- printk(DRIVER_NAME": failed to create class pktcdvd\n");
+ pr_err("failed to create class pktcdvd\n");
return ret;
}
return 0;
@@ -734,36 +736,32 @@ out:
return ret;
}
+static const char *sense_key_string(__u8 index)
+{
+ static const char * const info[] = {
+ "No sense", "Recovered error", "Not ready",
+ "Medium error", "Hardware error", "Illegal request",
+ "Unit attention", "Data protect", "Blank check",
+ };
+
+ return index < ARRAY_SIZE(info) ? info[index] : "INVALID";
+}
+
/*
* A generic sense dump / resolve mechanism should be implemented across
* all ATAPI + SCSI devices.
*/
static void pkt_dump_sense(struct packet_command *cgc)
{
- static char *info[9] = { "No sense", "Recovered error", "Not ready",
- "Medium error", "Hardware error", "Illegal request",
- "Unit attention", "Data protect", "Blank check" };
- int i;
struct request_sense *sense = cgc->sense;
- printk(DRIVER_NAME":");
- for (i = 0; i < CDROM_PACKET_SIZE; i++)
- printk(" %02x", cgc->cmd[i]);
- printk(" - ");
-
- if (sense == NULL) {
- printk("no sense\n");
- return;
- }
-
- printk("sense %02x.%02x.%02x", sense->sense_key, sense->asc, sense->ascq);
-
- if (sense->sense_key > 8) {
- printk(" (INVALID)\n");
- return;
- }
-
- printk(" (%s)\n", info[sense->sense_key]);
+ if (sense)
+ pr_err("%*ph - sense %02x.%02x.%02x (%s)\n",
+ CDROM_PACKET_SIZE, cgc->cmd,
+ sense->sense_key, sense->asc, sense->ascq,
+ sense_key_string(sense->sense_key));
+ else
+ pr_err("%*ph - no sense\n", CDROM_PACKET_SIZE, cgc->cmd);
}
/*
@@ -943,7 +941,7 @@ static int pkt_set_segment_merging(struct pktcdvd_device *pd, struct request_que
set_bit(PACKET_MERGE_SEGS, &pd->flags);
return 0;
} else {
- printk(DRIVER_NAME": cdrom max_phys_segments too small\n");
+ pr_err("cdrom max_phys_segments too small\n");
return -EIO;
}
}
@@ -1565,9 +1563,10 @@ work_to_do:
static void pkt_print_settings(struct pktcdvd_device *pd)
{
- printk(DRIVER_NAME": %s packets, ", pd->settings.fp ? "Fixed" : "Variable");
- printk("%u blocks, ", pd->settings.size >> 2);
- printk("Mode-%c disc\n", pd->settings.block_mode == 8 ? '1' : '2');
+ pr_info("%s packets, %u blocks, Mode-%c disc\n",
+ pd->settings.fp ? "Fixed" : "Variable",
+ pd->settings.size >> 2,
+ pd->settings.block_mode == 8 ? '1' : '2');
}
static int pkt_mode_sense(struct pktcdvd_device *pd, struct packet_command *cgc, int page_code, int page_control)
@@ -1751,7 +1750,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
/*
* paranoia
*/
- printk(DRIVER_NAME": write mode wrong %d\n", wp->data_block_type);
+ pr_err("write mode wrong %d\n", wp->data_block_type);
return 1;
}
wp->packet_size = cpu_to_be32(pd->settings.size >> 2);
@@ -1795,7 +1794,7 @@ static int pkt_writable_track(struct pktcdvd_device *pd, track_information *ti)
if (ti->rt == 1 && ti->blank == 0)
return 1;
- printk(DRIVER_NAME": bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
+ pr_err("bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
return 0;
}
@@ -1822,22 +1821,22 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
* but i'm not sure, should we leave this to user apps? probably.
*/
if (di->disc_type == 0xff) {
- printk(DRIVER_NAME": Unknown disc. No track?\n");
+ pr_notice("unknown disc - no track?\n");
return 0;
}
if (di->disc_type != 0x20 && di->disc_type != 0) {
- printk(DRIVER_NAME": Wrong disc type (%x)\n", di->disc_type);
+ pr_err("wrong disc type (%x)\n", di->disc_type);
return 0;
}
if (di->erasable == 0) {
- printk(DRIVER_NAME": Disc not erasable\n");
+ pr_notice("disc not erasable\n");
return 0;
}
if (di->border_status == PACKET_SESSION_RESERVED) {
- printk(DRIVER_NAME": Can't write to last track (reserved)\n");
+ pr_err("can't write to last track (reserved)\n");
return 0;
}
@@ -1862,7 +1861,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
memset(&ti, 0, sizeof(track_information));
if ((ret = pkt_get_disc_info(pd, &di))) {
- printk("failed get_disc\n");
+ pr_err("failed get_disc\n");
return ret;
}
@@ -1873,12 +1872,12 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
track = 1; /* (di.last_track_msb << 8) | di.last_track_lsb; */
if ((ret = pkt_get_track_info(pd, track, 1, &ti))) {
- printk(DRIVER_NAME": failed get_track\n");
+ pr_err("failed get_track\n");
return ret;
}
if (!pkt_writable_track(pd, &ti)) {
- printk(DRIVER_NAME": can't write to this track\n");
+ pr_err("can't write to this track\n");
return -EROFS;
}
@@ -1888,11 +1887,11 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
*/
pd->settings.size = be32_to_cpu(ti.fixed_packet_size) << 2;
if (pd->settings.size == 0) {
- printk(DRIVER_NAME": detected zero packet size!\n");
+ pr_notice("detected zero packet size!\n");
return -ENXIO;
}
if (pd->settings.size > PACKET_MAX_SECTORS) {
- printk(DRIVER_NAME": packet size is too big\n");
+ pr_err("packet size is too big\n");
return -EROFS;
}
pd->settings.fp = ti.fp;
@@ -1934,7 +1933,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
pd->settings.block_mode = PACKET_BLOCK_MODE2;
break;
default:
- printk(DRIVER_NAME": unknown data mode\n");
+ pr_err("unknown data mode\n");
return -EROFS;
}
return 0;
@@ -1968,10 +1967,10 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
cgc.buflen = cgc.cmd[8] = 2 + ((buf[0] << 8) | (buf[1] & 0xff));
ret = pkt_mode_select(pd, &cgc);
if (ret) {
- printk(DRIVER_NAME": write caching control failed\n");
+ pr_err("write caching control failed\n");
pkt_dump_sense(&cgc);
} else if (!ret && set)
- printk(DRIVER_NAME": enabled write caching on %s\n", pd->name);
+ pr_notice("enabled write caching on %s\n", pd->name);
return ret;
}
@@ -2086,11 +2085,11 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
}
if (!(buf[6] & 0x40)) {
- printk(DRIVER_NAME": Disc type is not CD-RW\n");
+ pr_notice("disc type is not CD-RW\n");
return 1;
}
if (!(buf[6] & 0x4)) {
- printk(DRIVER_NAME": A1 values on media are not valid, maybe not CDRW?\n");
+ pr_notice("A1 values on media are not valid, maybe not CDRW?\n");
return 1;
}
@@ -2110,14 +2109,14 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
*speed = us_clv_to_speed[sp];
break;
default:
- printk(DRIVER_NAME": Unknown disc sub-type %d\n",st);
+ pr_notice("unknown disc sub-type %d\n", st);
return 1;
}
if (*speed) {
- printk(DRIVER_NAME": Max. media speed: %d\n",*speed);
+ pr_info("maximum media speed: %d\n", *speed);
return 0;
} else {
- printk(DRIVER_NAME": Unknown speed %d for sub-type %d\n",sp,st);
+ pr_notice("unknown speed %d for sub-type %d\n", sp, st);
return 1;
}
}
@@ -2207,7 +2206,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
goto out;
if ((ret = pkt_get_last_written(pd, &lba))) {
- printk(DRIVER_NAME": pkt_get_last_written failed\n");
+ pr_err("pkt_get_last_written failed\n");
goto out_putdev;
}
@@ -2237,11 +2236,11 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
if (write) {
if (!pkt_grow_pktlist(pd, CONFIG_CDROM_PKTCDVD_BUFFERS)) {
- printk(DRIVER_NAME": not enough memory for buffers\n");
+ pr_err("not enough memory for buffers\n");
ret = -ENOMEM;
goto out_putdev;
}
- printk(DRIVER_NAME": %lukB available on disc\n", lba << 1);
+ pr_info("%lukB available on disc\n", lba << 1);
}
return 0;
@@ -2363,7 +2362,8 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
pd = q->queuedata;
if (!pd) {
- printk(DRIVER_NAME": %s incorrect request queue\n", bdevname(bio->bi_bdev, b));
+ pr_err("%s incorrect request queue\n",
+ bdevname(bio->bi_bdev, b));
goto end_io;
}
@@ -2385,13 +2385,13 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
}
if (!test_bit(PACKET_WRITABLE, &pd->flags)) {
- printk(DRIVER_NAME": WRITE for ro device %s (%llu)\n",
- pd->name, (unsigned long long)bio->bi_sector);
+ pr_notice("WRITE for ro device %s (%llu)\n",
+ pd->name, (unsigned long long)bio->bi_sector);
goto end_io;
}
if (!bio->bi_size || (bio->bi_size % CD_FRAMESIZE)) {
- printk(DRIVER_NAME": wrong bio size\n");
+ pr_err("wrong bio size\n");
goto end_io;
}
@@ -2612,7 +2612,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
struct block_device *bdev;
if (pd->pkt_dev == dev) {
- printk(DRIVER_NAME": Recursive setup not allowed\n");
+ pr_err("recursive setup not allowed\n");
return -EBUSY;
}
for (i = 0; i < MAX_WRITERS; i++) {
@@ -2620,11 +2620,11 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
if (!pd2)
continue;
if (pd2->bdev->bd_dev == dev) {
- printk(DRIVER_NAME": %s already setup\n", bdevname(pd2->bdev, b));
+ pr_err("%s already setup\n", bdevname(pd2->bdev, b));
return -EBUSY;
}
if (pd2->pkt_dev == dev) {
- printk(DRIVER_NAME": Can't chain pktcdvd devices\n");
+ pr_err("can't chain pktcdvd devices\n");
return -EBUSY;
}
}
@@ -2647,7 +2647,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
atomic_set(&pd->cdrw.pending_bios, 0);
pd->cdrw.thread = kthread_run(kcdrwd, pd, "%s", pd->name);
if (IS_ERR(pd->cdrw.thread)) {
- printk(DRIVER_NAME": can't start kernel thread\n");
+ pr_err("can't start kernel thread\n");
ret = -ENOMEM;
goto out_mem;
}
@@ -2746,7 +2746,7 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev)
if (!pkt_devs[idx])
break;
if (idx == MAX_WRITERS) {
- printk(DRIVER_NAME": max %d writers supported\n", MAX_WRITERS);
+ pr_err("max %d writers supported\n", MAX_WRITERS);
ret = -EBUSY;
goto out_mutex;
}
@@ -2821,7 +2821,7 @@ out_mem:
kfree(pd);
out_mutex:
mutex_unlock(&ctl_mutex);
- printk(DRIVER_NAME": setup of pktcdvd device failed\n");
+ pr_err("setup of pktcdvd device failed\n");
return ret;
}
@@ -2972,7 +2972,7 @@ static int __init pkt_init(void)
ret = register_blkdev(pktdev_major, DRIVER_NAME);
if (ret < 0) {
- printk(DRIVER_NAME": Unable to register block device\n");
+ pr_err("unable to register block device\n");
goto out2;
}
if (!pktdev_major)
@@ -2986,7 +2986,7 @@ static int __init pkt_init(void)
ret = misc_register(&pkt_misc);
if (ret) {
- printk(DRIVER_NAME": Unable to register misc device\n");
+ pr_err("unable to register misc device\n");
goto out_misc;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V3 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
2013-06-03 16:45 ` [PATCH V3 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
2013-06-03 16:45 ` [PATCH V3 2/8] pktcdvd: Convert printk to pr_<level> Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg Joe Perches
` (5 subsequent siblings)
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Use the more common pkt_dbg(level, fmt, ...) form.
These messages are emitted at KERN_NOTICE.
Always emit function name with pkt_dbg(2, ...) uses and
remove the sometimes abbreviated embedded function name.
This form always verifies the format and arguments.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 107 ++++++++++++++++++++++++------------------------
1 file changed, 53 insertions(+), 54 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 84d4c33..dd2ddc9 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -71,17 +71,13 @@
#define DRIVER_NAME "pktcdvd"
-#if PACKET_DEBUG
-#define DPRINTK(fmt, args...) printk(KERN_NOTICE fmt, ##args)
-#else
-#define DPRINTK(fmt, args...)
-#endif
-
-#if PACKET_DEBUG > 1
-#define VPRINTK(fmt, args...) printk(KERN_NOTICE fmt, ##args)
-#else
-#define VPRINTK(fmt, args...)
-#endif
+#define pkt_dbg(level, fmt, ...) \
+do { \
+ if (level == 2 && PACKET_DEBUG >= 2) \
+ pr_notice("%s: " fmt, __func__, ##__VA_ARGS__); \
+ else if (level == 1 && PACKET_DEBUG >= 1) \
+ pr_notice(fmt, ##__VA_ARGS__); \
+} while (0)
#define MAX_SPEED 0xffff
@@ -519,7 +515,7 @@ static void pkt_bio_finished(struct pktcdvd_device *pd)
{
BUG_ON(atomic_read(&pd->cdrw.pending_bios) <= 0);
if (atomic_dec_and_test(&pd->cdrw.pending_bios)) {
- VPRINTK(DRIVER_NAME": queue empty\n");
+ pkt_dbg(2, "queue empty\n");
atomic_set(&pd->iosched.attention, 1);
wake_up(&pd->wqueue);
}
@@ -870,7 +866,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
need_write_seek = 0;
if (need_write_seek && reads_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- VPRINTK(DRIVER_NAME": write, waiting\n");
+ pkt_dbg(2, "write, waiting\n");
break;
}
pkt_flush_cache(pd);
@@ -879,7 +875,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
} else {
if (!reads_queued && writes_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- VPRINTK(DRIVER_NAME": read, waiting\n");
+ pkt_dbg(2, "read, waiting\n");
break;
}
pd->iosched.writing = 1;
@@ -986,8 +982,9 @@ static void pkt_end_io_read(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- VPRINTK("pkt_end_io_read: bio=%p sec0=%llx sec=%llx err=%d\n", bio,
- (unsigned long long)pkt->sector, (unsigned long long)bio->bi_sector, err);
+ pkt_dbg(2, "bio=%p sec0=%llx sec=%llx err=%d\n",
+ bio, (unsigned long long)pkt->sector,
+ (unsigned long long)bio->bi_sector, err);
if (err)
atomic_inc(&pkt->io_errors);
@@ -1005,7 +1002,7 @@ static void pkt_end_io_packet_write(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- VPRINTK("pkt_end_io_packet_write: id=%d, err=%d\n", pkt->id, err);
+ pkt_dbg(2, "id=%d, err=%d\n", pkt->id, err);
pd->stats.pkt_ended++;
@@ -1047,7 +1044,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
spin_unlock(&pkt->lock);
if (pkt->cache_valid) {
- VPRINTK("pkt_gather_data: zone %llx cached\n",
+ pkt_dbg(2, "zone %llx cached\n",
(unsigned long long)pkt->sector);
goto out_account;
}
@@ -1070,7 +1067,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
p = (f * CD_FRAMESIZE) / PAGE_SIZE;
offset = (f * CD_FRAMESIZE) % PAGE_SIZE;
- VPRINTK("pkt_gather_data: Adding frame %d, page:%p offs:%d\n",
+ pkt_dbg(2, "Adding frame %d, page:%p offs:%d\n",
f, pkt->pages[p], offset);
if (!bio_add_page(bio, pkt->pages[p], CD_FRAMESIZE, offset))
BUG();
@@ -1082,7 +1079,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
}
out_account:
- VPRINTK("pkt_gather_data: need %d frames for zone %llx\n",
+ pkt_dbg(2, "need %d frames for zone %llx\n",
frames_read, (unsigned long long)pkt->sector);
pd->stats.pkt_started++;
pd->stats.secs_rg += frames_read * (CD_FRAMESIZE >> 9);
@@ -1183,7 +1180,8 @@ static inline void pkt_set_state(struct packet_data *pkt, enum packet_data_state
"IDLE", "WAITING", "READ_WAIT", "WRITE_WAIT", "RECOVERY", "FINISHED"
};
enum packet_data_state old_state = pkt->state;
- VPRINTK("pkt %2d : s=%6llx %s -> %s\n", pkt->id, (unsigned long long)pkt->sector,
+ pkt_dbg(2, "pkt %2d : s=%6llx %s -> %s\n",
+ pkt->id, (unsigned long long)pkt->sector,
state_name[old_state], state_name[state]);
#endif
pkt->state = state;
@@ -1202,12 +1200,12 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
struct rb_node *n;
int wakeup;
- VPRINTK("handle_queue\n");
+ pkt_dbg(2, "\n");
atomic_set(&pd->scan_queue, 0);
if (list_empty(&pd->cdrw.pkt_free_list)) {
- VPRINTK("handle_queue: no pkt\n");
+ pkt_dbg(2, "no pkt\n");
return 0;
}
@@ -1244,7 +1242,7 @@ try_next_bio:
}
spin_unlock(&pd->lock);
if (!bio) {
- VPRINTK("handle_queue: no bio\n");
+ pkt_dbg(2, "no bio\n");
return 0;
}
@@ -1260,10 +1258,10 @@ try_next_bio:
* to this packet.
*/
spin_lock(&pd->lock);
- VPRINTK("pkt_handle_queue: looking for zone %llx\n", (unsigned long long)zone);
+ pkt_dbg(2, "looking for zone %llx\n", (unsigned long long)zone);
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
- VPRINTK("pkt_handle_queue: found zone=%llx\n",
+ pkt_dbg(2, "found zone=%llx\n",
(unsigned long long)get_zone(bio->bi_sector, pd));
if (get_zone(bio->bi_sector, pd) != zone)
break;
@@ -1316,7 +1314,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
if (!bio_add_page(pkt->w_bio, bvec[f].bv_page, CD_FRAMESIZE, bvec[f].bv_offset))
BUG();
}
- VPRINTK(DRIVER_NAME": vcnt=%d\n", pkt->w_bio->bi_vcnt);
+ pkt_dbg(2, "vcnt=%d\n", pkt->w_bio->bi_vcnt);
/*
* Fill-in bvec with data from orig_bios.
@@ -1327,7 +1325,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
pkt_set_state(pkt, PACKET_WRITE_WAIT_STATE);
spin_unlock(&pkt->lock);
- VPRINTK("pkt_start_write: Writing %d frames for zone %llx\n",
+ pkt_dbg(2, "Writing %d frames for zone %llx\n",
pkt->write_size, (unsigned long long)pkt->sector);
if (test_bit(PACKET_MERGE_SEGS, &pd->flags) || (pkt->write_size < pkt->frames)) {
@@ -1359,7 +1357,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
{
int uptodate;
- VPRINTK("run_state_machine: pkt %d\n", pkt->id);
+ pkt_dbg(2, "pkt %d\n", pkt->id);
for (;;) {
switch (pkt->state) {
@@ -1398,7 +1396,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
if (pkt_start_recovery(pkt)) {
pkt_start_write(pd, pkt);
} else {
- VPRINTK("No recovery possible\n");
+ pkt_dbg(2, "No recovery possible\n");
pkt_set_state(pkt, PACKET_FINISHED_STATE);
}
break;
@@ -1419,7 +1417,7 @@ static void pkt_handle_packets(struct pktcdvd_device *pd)
{
struct packet_data *pkt, *next;
- VPRINTK("pkt_handle_packets\n");
+ pkt_dbg(2, "\n");
/*
* Run state machine for active packets
@@ -1502,9 +1500,9 @@ static int kcdrwd(void *foobar)
if (PACKET_DEBUG > 1) {
int states[PACKET_NUM_STATES];
pkt_count_states(pd, states);
- VPRINTK("kcdrwd: i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
- states[0], states[1], states[2], states[3],
- states[4], states[5]);
+ pkt_dbg(2, "i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
+ states[0], states[1], states[2],
+ states[3], states[4], states[5]);
}
min_sleep_time = MAX_SCHEDULE_TIMEOUT;
@@ -1513,9 +1511,9 @@ static int kcdrwd(void *foobar)
min_sleep_time = pkt->sleep_time;
}
- VPRINTK("kcdrwd: sleeping\n");
+ pkt_dbg(2, "sleeping\n");
residue = schedule_timeout(min_sleep_time);
- VPRINTK("kcdrwd: wake up\n");
+ pkt_dbg(2, "wake up\n");
/* make swsusp happy with our thread */
try_to_freeze();
@@ -1812,7 +1810,8 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
case 0x12: /* DVD-RAM */
return 1;
default:
- VPRINTK(DRIVER_NAME": Wrong disc profile (%x)\n", pd->mmc3_profile);
+ pkt_dbg(2, "Wrong disc profile (%x)\n",
+ pd->mmc3_profile);
return 0;
}
@@ -2127,7 +2126,7 @@ static noinline_for_stack int pkt_perform_opc(struct pktcdvd_device *pd)
struct request_sense sense;
int ret;
- VPRINTK(DRIVER_NAME": Performing OPC\n");
+ pkt_dbg(2, "Performing OPC\n");
init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
cgc.sense = &sense;
@@ -2145,12 +2144,12 @@ static int pkt_open_write(struct pktcdvd_device *pd)
unsigned int write_speed, media_write_speed, read_speed;
if ((ret = pkt_probe_settings(pd))) {
- VPRINTK(DRIVER_NAME": %s failed probe\n", pd->name);
+ pkt_dbg(2, "%s failed probe\n", pd->name);
return ret;
}
if ((ret = pkt_set_write_settings(pd))) {
- DPRINTK(DRIVER_NAME": %s failed saving write settings\n", pd->name);
+ pkt_dbg(1, "%s failed saving write settings\n", pd->name);
return -EIO;
}
@@ -2162,26 +2161,26 @@ static int pkt_open_write(struct pktcdvd_device *pd)
case 0x13: /* DVD-RW */
case 0x1a: /* DVD+RW */
case 0x12: /* DVD-RAM */
- DPRINTK(DRIVER_NAME": write speed %ukB/s\n", write_speed);
+ pkt_dbg(1, "write speed %ukB/s\n", write_speed);
break;
default:
if ((ret = pkt_media_speed(pd, &media_write_speed)))
media_write_speed = 16;
write_speed = min(write_speed, media_write_speed * 177);
- DPRINTK(DRIVER_NAME": write speed %ux\n", write_speed / 176);
+ pkt_dbg(1, "write speed %ux\n", write_speed / 176);
break;
}
read_speed = write_speed;
if ((ret = pkt_set_speed(pd, write_speed, read_speed))) {
- DPRINTK(DRIVER_NAME": %s couldn't set write speed\n", pd->name);
+ pkt_dbg(1, "%s couldn't set write speed\n", pd->name);
return -EIO;
}
pd->write_speed = write_speed;
pd->read_speed = read_speed;
if ((ret = pkt_perform_opc(pd))) {
- DPRINTK(DRIVER_NAME": %s Optimum Power Calibration failed\n", pd->name);
+ pkt_dbg(1, "%s Optimum Power Calibration failed\n", pd->name);
}
return 0;
@@ -2258,7 +2257,7 @@ out:
static void pkt_release_dev(struct pktcdvd_device *pd, int flush)
{
if (flush && pkt_flush_cache(pd))
- DPRINTK(DRIVER_NAME": %s not flushing cache\n", pd->name);
+ pkt_dbg(1, "%s not flushing cache\n", pd->name);
pkt_lock_door(pd, 0);
@@ -2280,7 +2279,7 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
struct pktcdvd_device *pd = NULL;
int ret;
- VPRINTK(DRIVER_NAME": entering open\n");
+ pkt_dbg(2, "entering\n");
mutex_lock(&pktcdvd_mutex);
mutex_lock(&ctl_mutex);
@@ -2316,7 +2315,7 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
out_dec:
pd->refcnt--;
out:
- VPRINTK(DRIVER_NAME": failed open (%d)\n", ret);
+ pkt_dbg(2, "failed (%d)\n", ret);
mutex_unlock(&ctl_mutex);
mutex_unlock(&pktcdvd_mutex);
return ret;
@@ -2398,7 +2397,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
zone = get_zone(bio->bi_sector, pd);
- VPRINTK("pkt_make_request: start = %6llx stop = %6llx\n",
+ pkt_dbg(2, "start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2653,7 +2652,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
}
proc_create_data(pd->name, 0, pkt_proc, &pkt_proc_fops, pd);
- DPRINTK(DRIVER_NAME": writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
+ pkt_dbg(1, "writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
return 0;
out_mem:
@@ -2668,8 +2667,8 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
struct pktcdvd_device *pd = bdev->bd_disk->private_data;
int ret;
- VPRINTK("pkt_ioctl: cmd %x, dev %d:%d\n", cmd,
- MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
+ pkt_dbg(2, "cmd %x, dev %d:%d\n",
+ cmd, MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
mutex_lock(&pktcdvd_mutex);
switch (cmd) {
@@ -2693,7 +2692,7 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
break;
default:
- VPRINTK(DRIVER_NAME": Unknown ioctl for %s (%x)\n", pd->name, cmd);
+ pkt_dbg(2, "Unknown ioctl for %s (%x)\n", pd->name, cmd);
ret = -ENOTTY;
}
mutex_unlock(&pktcdvd_mutex);
@@ -2842,7 +2841,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
break;
}
if (idx == MAX_WRITERS) {
- DPRINTK(DRIVER_NAME": dev not setup\n");
+ pkt_dbg(1, "dev not setup\n");
ret = -ENXIO;
goto out;
}
@@ -2862,7 +2861,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
blkdev_put(pd->bdev, FMODE_READ | FMODE_NDELAY);
remove_proc_entry(pd->name, pkt_proc);
- DPRINTK(DRIVER_NAME": writer %s unmapped\n", pd->name);
+ pkt_dbg(1, "writer %s unmapped\n", pd->name);
del_gendisk(pd->disk);
blk_cleanup_queue(pd->disk->queue);
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V3 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
` (2 preceding siblings ...)
2013-06-03 16:45 ` [PATCH V3 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible Joe Perches
` (4 subsequent siblings)
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add pd->name to output for these debugging messages.
Remove normally compiled out pkt_dbg(2, ...) function entry
tracing equivalents as it's better done via the function tracer.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 90 +++++++++++++++++++++++--------------------------
1 file changed, 42 insertions(+), 48 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index dd2ddc9..13c1e02 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -71,12 +71,13 @@
#define DRIVER_NAME "pktcdvd"
-#define pkt_dbg(level, fmt, ...) \
-do { \
- if (level == 2 && PACKET_DEBUG >= 2) \
- pr_notice("%s: " fmt, __func__, ##__VA_ARGS__); \
- else if (level == 1 && PACKET_DEBUG >= 1) \
- pr_notice(fmt, ##__VA_ARGS__); \
+#define pkt_dbg(level, pd, fmt, ...) \
+do { \
+ if (level == 2 && PACKET_DEBUG >= 2) \
+ pr_notice("%s: %s():" fmt, \
+ pd->name, __func__, ##__VA_ARGS__); \
+ else if (level == 1 && PACKET_DEBUG >= 1) \
+ pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__); \
} while (0)
#define MAX_SPEED 0xffff
@@ -515,7 +516,7 @@ static void pkt_bio_finished(struct pktcdvd_device *pd)
{
BUG_ON(atomic_read(&pd->cdrw.pending_bios) <= 0);
if (atomic_dec_and_test(&pd->cdrw.pending_bios)) {
- pkt_dbg(2, "queue empty\n");
+ pkt_dbg(2, pd, "queue empty\n");
atomic_set(&pd->iosched.attention, 1);
wake_up(&pd->wqueue);
}
@@ -866,7 +867,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
need_write_seek = 0;
if (need_write_seek && reads_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- pkt_dbg(2, "write, waiting\n");
+ pkt_dbg(2, pd, "write, waiting\n");
break;
}
pkt_flush_cache(pd);
@@ -875,7 +876,7 @@ static void pkt_iosched_process_queue(struct pktcdvd_device *pd)
} else {
if (!reads_queued && writes_queued) {
if (atomic_read(&pd->cdrw.pending_bios) > 0) {
- pkt_dbg(2, "read, waiting\n");
+ pkt_dbg(2, pd, "read, waiting\n");
break;
}
pd->iosched.writing = 1;
@@ -982,7 +983,7 @@ static void pkt_end_io_read(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- pkt_dbg(2, "bio=%p sec0=%llx sec=%llx err=%d\n",
+ pkt_dbg(2, pd, "bio=%p sec0=%llx sec=%llx err=%d\n",
bio, (unsigned long long)pkt->sector,
(unsigned long long)bio->bi_sector, err);
@@ -1002,7 +1003,7 @@ static void pkt_end_io_packet_write(struct bio *bio, int err,
struct pktcdvd_device *pd = pkt->pd;
BUG_ON(!pd);
- pkt_dbg(2, "id=%d, err=%d\n", pkt->id, err);
+ pkt_dbg(2, pd, "id=%d, err=%d\n", pkt->id, err);
pd->stats.pkt_ended++;
@@ -1044,7 +1045,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
spin_unlock(&pkt->lock);
if (pkt->cache_valid) {
- pkt_dbg(2, "zone %llx cached\n",
+ pkt_dbg(2, pd, "zone %llx cached\n",
(unsigned long long)pkt->sector);
goto out_account;
}
@@ -1067,7 +1068,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
p = (f * CD_FRAMESIZE) / PAGE_SIZE;
offset = (f * CD_FRAMESIZE) % PAGE_SIZE;
- pkt_dbg(2, "Adding frame %d, page:%p offs:%d\n",
+ pkt_dbg(2, pd, "Adding frame %d, page:%p offs:%d\n",
f, pkt->pages[p], offset);
if (!bio_add_page(bio, pkt->pages[p], CD_FRAMESIZE, offset))
BUG();
@@ -1079,7 +1080,7 @@ static void pkt_gather_data(struct pktcdvd_device *pd, struct packet_data *pkt)
}
out_account:
- pkt_dbg(2, "need %d frames for zone %llx\n",
+ pkt_dbg(2, pd, "need %d frames for zone %llx\n",
frames_read, (unsigned long long)pkt->sector);
pd->stats.pkt_started++;
pd->stats.secs_rg += frames_read * (CD_FRAMESIZE >> 9);
@@ -1180,7 +1181,7 @@ static inline void pkt_set_state(struct packet_data *pkt, enum packet_data_state
"IDLE", "WAITING", "READ_WAIT", "WRITE_WAIT", "RECOVERY", "FINISHED"
};
enum packet_data_state old_state = pkt->state;
- pkt_dbg(2, "pkt %2d : s=%6llx %s -> %s\n",
+ pkt_dbg(2, pd, "pkt %2d : s=%6llx %s -> %s\n",
pkt->id, (unsigned long long)pkt->sector,
state_name[old_state], state_name[state]);
#endif
@@ -1200,12 +1201,10 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
struct rb_node *n;
int wakeup;
- pkt_dbg(2, "\n");
-
atomic_set(&pd->scan_queue, 0);
if (list_empty(&pd->cdrw.pkt_free_list)) {
- pkt_dbg(2, "no pkt\n");
+ pkt_dbg(2, pd, "no pkt\n");
return 0;
}
@@ -1242,7 +1241,7 @@ try_next_bio:
}
spin_unlock(&pd->lock);
if (!bio) {
- pkt_dbg(2, "no bio\n");
+ pkt_dbg(2, pd, "no bio\n");
return 0;
}
@@ -1258,10 +1257,10 @@ try_next_bio:
* to this packet.
*/
spin_lock(&pd->lock);
- pkt_dbg(2, "looking for zone %llx\n", (unsigned long long)zone);
+ pkt_dbg(2, pd, "looking for zone %llx\n", (unsigned long long)zone);
while ((node = pkt_rbtree_find(pd, zone)) != NULL) {
bio = node->bio;
- pkt_dbg(2, "found zone=%llx\n",
+ pkt_dbg(2, pd, "found zone=%llx\n",
(unsigned long long)get_zone(bio->bi_sector, pd));
if (get_zone(bio->bi_sector, pd) != zone)
break;
@@ -1314,7 +1313,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
if (!bio_add_page(pkt->w_bio, bvec[f].bv_page, CD_FRAMESIZE, bvec[f].bv_offset))
BUG();
}
- pkt_dbg(2, "vcnt=%d\n", pkt->w_bio->bi_vcnt);
+ pkt_dbg(2, pd, "vcnt=%d\n", pkt->w_bio->bi_vcnt);
/*
* Fill-in bvec with data from orig_bios.
@@ -1325,7 +1324,7 @@ static void pkt_start_write(struct pktcdvd_device *pd, struct packet_data *pkt)
pkt_set_state(pkt, PACKET_WRITE_WAIT_STATE);
spin_unlock(&pkt->lock);
- pkt_dbg(2, "Writing %d frames for zone %llx\n",
+ pkt_dbg(2, pd, "Writing %d frames for zone %llx\n",
pkt->write_size, (unsigned long long)pkt->sector);
if (test_bit(PACKET_MERGE_SEGS, &pd->flags) || (pkt->write_size < pkt->frames)) {
@@ -1357,7 +1356,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
{
int uptodate;
- pkt_dbg(2, "pkt %d\n", pkt->id);
+ pkt_dbg(2, pd, "pkt %d\n", pkt->id);
for (;;) {
switch (pkt->state) {
@@ -1396,7 +1395,7 @@ static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data
if (pkt_start_recovery(pkt)) {
pkt_start_write(pd, pkt);
} else {
- pkt_dbg(2, "No recovery possible\n");
+ pkt_dbg(2, pd, "No recovery possible\n");
pkt_set_state(pkt, PACKET_FINISHED_STATE);
}
break;
@@ -1417,8 +1416,6 @@ static void pkt_handle_packets(struct pktcdvd_device *pd)
{
struct packet_data *pkt, *next;
- pkt_dbg(2, "\n");
-
/*
* Run state machine for active packets
*/
@@ -1500,7 +1497,7 @@ static int kcdrwd(void *foobar)
if (PACKET_DEBUG > 1) {
int states[PACKET_NUM_STATES];
pkt_count_states(pd, states);
- pkt_dbg(2, "i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
+ pkt_dbg(2, pd, "i:%d ow:%d rw:%d ww:%d rec:%d fin:%d\n",
states[0], states[1], states[2],
states[3], states[4], states[5]);
}
@@ -1511,9 +1508,9 @@ static int kcdrwd(void *foobar)
min_sleep_time = pkt->sleep_time;
}
- pkt_dbg(2, "sleeping\n");
+ pkt_dbg(2, pd, "sleeping\n");
residue = schedule_timeout(min_sleep_time);
- pkt_dbg(2, "wake up\n");
+ pkt_dbg(2, pd, "wake up\n");
/* make swsusp happy with our thread */
try_to_freeze();
@@ -1810,7 +1807,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
case 0x12: /* DVD-RAM */
return 1;
default:
- pkt_dbg(2, "Wrong disc profile (%x)\n",
+ pkt_dbg(2, pd, "Wrong disc profile (%x)\n",
pd->mmc3_profile);
return 0;
}
@@ -2126,7 +2123,7 @@ static noinline_for_stack int pkt_perform_opc(struct pktcdvd_device *pd)
struct request_sense sense;
int ret;
- pkt_dbg(2, "Performing OPC\n");
+ pkt_dbg(2, pd, "Performing OPC\n");
init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE);
cgc.sense = &sense;
@@ -2144,12 +2141,12 @@ static int pkt_open_write(struct pktcdvd_device *pd)
unsigned int write_speed, media_write_speed, read_speed;
if ((ret = pkt_probe_settings(pd))) {
- pkt_dbg(2, "%s failed probe\n", pd->name);
+ pkt_dbg(2, pd, "failed probe\n");
return ret;
}
if ((ret = pkt_set_write_settings(pd))) {
- pkt_dbg(1, "%s failed saving write settings\n", pd->name);
+ pkt_dbg(1, pd, "failed saving write settings\n");
return -EIO;
}
@@ -2161,26 +2158,26 @@ static int pkt_open_write(struct pktcdvd_device *pd)
case 0x13: /* DVD-RW */
case 0x1a: /* DVD+RW */
case 0x12: /* DVD-RAM */
- pkt_dbg(1, "write speed %ukB/s\n", write_speed);
+ pkt_dbg(1, pd, "write speed %ukB/s\n", write_speed);
break;
default:
if ((ret = pkt_media_speed(pd, &media_write_speed)))
media_write_speed = 16;
write_speed = min(write_speed, media_write_speed * 177);
- pkt_dbg(1, "write speed %ux\n", write_speed / 176);
+ pkt_dbg(1, pd, "write speed %ux\n", write_speed / 176);
break;
}
read_speed = write_speed;
if ((ret = pkt_set_speed(pd, write_speed, read_speed))) {
- pkt_dbg(1, "%s couldn't set write speed\n", pd->name);
+ pkt_dbg(1, pd, "couldn't set write speed\n");
return -EIO;
}
pd->write_speed = write_speed;
pd->read_speed = read_speed;
if ((ret = pkt_perform_opc(pd))) {
- pkt_dbg(1, "%s Optimum Power Calibration failed\n", pd->name);
+ pkt_dbg(1, pd, "Optimum Power Calibration failed\n");
}
return 0;
@@ -2257,7 +2254,7 @@ out:
static void pkt_release_dev(struct pktcdvd_device *pd, int flush)
{
if (flush && pkt_flush_cache(pd))
- pkt_dbg(1, "%s not flushing cache\n", pd->name);
+ pkt_dbg(1, pd, "not flushing cache\n");
pkt_lock_door(pd, 0);
@@ -2279,8 +2276,6 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
struct pktcdvd_device *pd = NULL;
int ret;
- pkt_dbg(2, "entering\n");
-
mutex_lock(&pktcdvd_mutex);
mutex_lock(&ctl_mutex);
pd = pkt_find_dev_from_minor(MINOR(bdev->bd_dev));
@@ -2315,7 +2310,6 @@ static int pkt_open(struct block_device *bdev, fmode_t mode)
out_dec:
pd->refcnt--;
out:
- pkt_dbg(2, "failed (%d)\n", ret);
mutex_unlock(&ctl_mutex);
mutex_unlock(&pktcdvd_mutex);
return ret;
@@ -2397,7 +2391,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
blk_queue_bounce(q, &bio);
zone = get_zone(bio->bi_sector, pd);
- pkt_dbg(2, "start = %6llx stop = %6llx\n",
+ pkt_dbg(2, pd, "start = %6llx stop = %6llx\n",
(unsigned long long)bio->bi_sector,
(unsigned long long)bio_end_sector(bio));
@@ -2652,7 +2646,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
}
proc_create_data(pd->name, 0, pkt_proc, &pkt_proc_fops, pd);
- pkt_dbg(1, "writer %s mapped to %s\n", pd->name, bdevname(bdev, b));
+ pkt_dbg(1, pd, "writer mapped to %s\n", bdevname(bdev, b));
return 0;
out_mem:
@@ -2667,7 +2661,7 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
struct pktcdvd_device *pd = bdev->bd_disk->private_data;
int ret;
- pkt_dbg(2, "cmd %x, dev %d:%d\n",
+ pkt_dbg(2, pd, "cmd %x, dev %d:%d\n",
cmd, MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
mutex_lock(&pktcdvd_mutex);
@@ -2692,7 +2686,7 @@ static int pkt_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd,
break;
default:
- pkt_dbg(2, "Unknown ioctl for %s (%x)\n", pd->name, cmd);
+ pkt_dbg(2, pd, "Unknown ioctl (%x)\n", cmd);
ret = -ENOTTY;
}
mutex_unlock(&pktcdvd_mutex);
@@ -2841,7 +2835,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
break;
}
if (idx == MAX_WRITERS) {
- pkt_dbg(1, "dev not setup\n");
+ pkt_dbg(1, pd, "dev not setup\n");
ret = -ENXIO;
goto out;
}
@@ -2861,7 +2855,7 @@ static int pkt_remove_dev(dev_t pkt_dev)
blkdev_put(pd->bdev, FMODE_READ | FMODE_NDELAY);
remove_proc_entry(pd->name, pkt_proc);
- pkt_dbg(1, "writer %s unmapped\n", pd->name);
+ pkt_dbg(1, pd, "writer unmapped\n");
del_gendisk(pd->disk);
blk_cleanup_queue(pd->disk->queue);
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V3 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
` (3 preceding siblings ...)
2013-06-03 16:45 ` [PATCH V3 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 6/8] pktcdvd: Convert pr_notice to pkt_notice Joe Perches
` (3 subsequent siblings)
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add a new pkt_err macro to prefix the name to the logging output.
Convert pr_err where there is a non-null struct pktcdvd_device.
Signed-off-by: Joe Perches <joe@perches.com>
Improved-by: Andy Shevchenko <andy.shevchenko@gmail.com>
---
V3: Moved pkt_err location to proper place
drivers/block/pktcdvd.c | 44 ++++++++++++++++++++++++--------------------
1 file changed, 24 insertions(+), 20 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 13c1e02..e71e23d 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -71,6 +71,9 @@
#define DRIVER_NAME "pktcdvd"
+#define pkt_err(pd, fmt, ...) \
+ pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
+
#define pkt_dbg(level, pd, fmt, ...) \
do { \
if (level == 2 && PACKET_DEBUG >= 2) \
@@ -938,7 +941,7 @@ static int pkt_set_segment_merging(struct pktcdvd_device *pd, struct request_que
set_bit(PACKET_MERGE_SEGS, &pd->flags);
return 0;
} else {
- pr_err("cdrom max_phys_segments too small\n");
+ pkt_err(pd, "cdrom max_phys_segments too small\n");
return -EIO;
}
}
@@ -1745,7 +1748,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
/*
* paranoia
*/
- pr_err("write mode wrong %d\n", wp->data_block_type);
+ pkt_err(pd, "write mode wrong %d\n", wp->data_block_type);
return 1;
}
wp->packet_size = cpu_to_be32(pd->settings.size >> 2);
@@ -1789,7 +1792,7 @@ static int pkt_writable_track(struct pktcdvd_device *pd, track_information *ti)
if (ti->rt == 1 && ti->blank == 0)
return 1;
- pr_err("bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
+ pkt_err(pd, "bad state %d-%d-%d\n", ti->rt, ti->blank, ti->packet);
return 0;
}
@@ -1822,7 +1825,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
}
if (di->disc_type != 0x20 && di->disc_type != 0) {
- pr_err("wrong disc type (%x)\n", di->disc_type);
+ pkt_err(pd, "wrong disc type (%x)\n", di->disc_type);
return 0;
}
@@ -1832,7 +1835,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
}
if (di->border_status == PACKET_SESSION_RESERVED) {
- pr_err("can't write to last track (reserved)\n");
+ pkt_err(pd, "can't write to last track (reserved)\n");
return 0;
}
@@ -1857,7 +1860,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
memset(&ti, 0, sizeof(track_information));
if ((ret = pkt_get_disc_info(pd, &di))) {
- pr_err("failed get_disc\n");
+ pkt_err(pd, "failed get_disc\n");
return ret;
}
@@ -1868,12 +1871,12 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
track = 1; /* (di.last_track_msb << 8) | di.last_track_lsb; */
if ((ret = pkt_get_track_info(pd, track, 1, &ti))) {
- pr_err("failed get_track\n");
+ pkt_err(pd, "failed get_track\n");
return ret;
}
if (!pkt_writable_track(pd, &ti)) {
- pr_err("can't write to this track\n");
+ pkt_err(pd, "can't write to this track\n");
return -EROFS;
}
@@ -1887,7 +1890,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
return -ENXIO;
}
if (pd->settings.size > PACKET_MAX_SECTORS) {
- pr_err("packet size is too big\n");
+ pkt_err(pd, "packet size is too big\n");
return -EROFS;
}
pd->settings.fp = ti.fp;
@@ -1929,7 +1932,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
pd->settings.block_mode = PACKET_BLOCK_MODE2;
break;
default:
- pr_err("unknown data mode\n");
+ pkt_err(pd, "unknown data mode\n");
return -EROFS;
}
return 0;
@@ -1963,7 +1966,7 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
cgc.buflen = cgc.cmd[8] = 2 + ((buf[0] << 8) | (buf[1] & 0xff));
ret = pkt_mode_select(pd, &cgc);
if (ret) {
- pr_err("write caching control failed\n");
+ pkt_err(pd, "write caching control failed\n");
pkt_dump_sense(&cgc);
} else if (!ret && set)
pr_notice("enabled write caching on %s\n", pd->name);
@@ -2202,7 +2205,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
goto out;
if ((ret = pkt_get_last_written(pd, &lba))) {
- pr_err("pkt_get_last_written failed\n");
+ pkt_err(pd, "pkt_get_last_written failed\n");
goto out_putdev;
}
@@ -2232,7 +2235,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
if (write) {
if (!pkt_grow_pktlist(pd, CONFIG_CDROM_PKTCDVD_BUFFERS)) {
- pr_err("not enough memory for buffers\n");
+ pkt_err(pd, "not enough memory for buffers\n");
ret = -ENOMEM;
goto out_putdev;
}
@@ -2355,8 +2358,8 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
pd = q->queuedata;
if (!pd) {
- pr_err("%s incorrect request queue\n",
- bdevname(bio->bi_bdev, b));
+ pkt_err(pd, "%s incorrect request queue\n",
+ bdevname(bio->bi_bdev, b));
goto end_io;
}
@@ -2384,7 +2387,7 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
}
if (!bio->bi_size || (bio->bi_size % CD_FRAMESIZE)) {
- pr_err("wrong bio size\n");
+ pkt_err(pd, "wrong bio size\n");
goto end_io;
}
@@ -2605,7 +2608,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
struct block_device *bdev;
if (pd->pkt_dev == dev) {
- pr_err("recursive setup not allowed\n");
+ pkt_err(pd, "recursive setup not allowed\n");
return -EBUSY;
}
for (i = 0; i < MAX_WRITERS; i++) {
@@ -2613,11 +2616,12 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
if (!pd2)
continue;
if (pd2->bdev->bd_dev == dev) {
- pr_err("%s already setup\n", bdevname(pd2->bdev, b));
+ pkt_err(pd, "%s already setup\n",
+ bdevname(pd2->bdev, b));
return -EBUSY;
}
if (pd2->pkt_dev == dev) {
- pr_err("can't chain pktcdvd devices\n");
+ pkt_err(pd, "can't chain pktcdvd devices\n");
return -EBUSY;
}
}
@@ -2640,7 +2644,7 @@ static int pkt_new_dev(struct pktcdvd_device *pd, dev_t dev)
atomic_set(&pd->cdrw.pending_bios, 0);
pd->cdrw.thread = kthread_run(kcdrwd, pd, "%s", pd->name);
if (IS_ERR(pd->cdrw.thread)) {
- pr_err("can't start kernel thread\n");
+ pkt_err(pd, "can't start kernel thread\n");
ret = -ENOMEM;
goto out_mem;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V3 6/8] pktcdvd: Convert pr_notice to pkt_notice
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
` (4 preceding siblings ...)
2013-06-03 16:45 ` [PATCH V3 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 7/8] pktcdvd: Convert pr_info to pkt_info Joe Perches
` (2 subsequent siblings)
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add a new pkt_notice macro to prefix the name to the logging output.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index e71e23d..faae94c 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -73,6 +73,8 @@
#define pkt_err(pd, fmt, ...) \
pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
+#define pkt_notice(pd, fmt, ...) \
+ pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__)
#define pkt_dbg(level, pd, fmt, ...) \
do { \
@@ -1820,7 +1822,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
* but i'm not sure, should we leave this to user apps? probably.
*/
if (di->disc_type == 0xff) {
- pr_notice("unknown disc - no track?\n");
+ pkt_notice(pd, "unknown disc - no track?\n");
return 0;
}
@@ -1830,7 +1832,7 @@ static int pkt_writable_disc(struct pktcdvd_device *pd, disc_information *di)
}
if (di->erasable == 0) {
- pr_notice("disc not erasable\n");
+ pkt_notice(pd, "disc not erasable\n");
return 0;
}
@@ -1886,7 +1888,7 @@ static noinline_for_stack int pkt_probe_settings(struct pktcdvd_device *pd)
*/
pd->settings.size = be32_to_cpu(ti.fixed_packet_size) << 2;
if (pd->settings.size == 0) {
- pr_notice("detected zero packet size!\n");
+ pkt_notice(pd, "detected zero packet size!\n");
return -ENXIO;
}
if (pd->settings.size > PACKET_MAX_SECTORS) {
@@ -1969,7 +1971,7 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
pkt_err(pd, "write caching control failed\n");
pkt_dump_sense(&cgc);
} else if (!ret && set)
- pr_notice("enabled write caching on %s\n", pd->name);
+ pkt_notice(pd, "enabled write caching\n");
return ret;
}
@@ -2084,11 +2086,11 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
}
if (!(buf[6] & 0x40)) {
- pr_notice("disc type is not CD-RW\n");
+ pkt_notice(pd, "disc type is not CD-RW\n");
return 1;
}
if (!(buf[6] & 0x4)) {
- pr_notice("A1 values on media are not valid, maybe not CDRW?\n");
+ pkt_notice(pd, "A1 values on media are not valid, maybe not CDRW?\n");
return 1;
}
@@ -2108,14 +2110,14 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
*speed = us_clv_to_speed[sp];
break;
default:
- pr_notice("unknown disc sub-type %d\n", st);
+ pkt_notice(pd, "unknown disc sub-type %d\n", st);
return 1;
}
if (*speed) {
pr_info("maximum media speed: %d\n", *speed);
return 0;
} else {
- pr_notice("unknown speed %d for sub-type %d\n", sp, st);
+ pkt_notice(pd, "unknown speed %d for sub-type %d\n", sp, st);
return 1;
}
}
@@ -2381,8 +2383,8 @@ static void pkt_make_request(struct request_queue *q, struct bio *bio)
}
if (!test_bit(PACKET_WRITABLE, &pd->flags)) {
- pr_notice("WRITE for ro device %s (%llu)\n",
- pd->name, (unsigned long long)bio->bi_sector);
+ pkt_notice(pd, "WRITE for ro device (%llu)\n",
+ (unsigned long long)bio->bi_sector);
goto end_io;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V3 7/8] pktcdvd: Convert pr_info to pkt_info
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
` (5 preceding siblings ...)
2013-06-03 16:45 ` [PATCH V3 6/8] pktcdvd: Convert pr_notice to pkt_notice Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense() Joe Perches
2013-07-23 0:53 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Add a new pkt_info macro to prefix the name to the logging output.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index faae94c..f81648c 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -75,6 +75,8 @@
pr_err("%s: " fmt, pd->name, ##__VA_ARGS__)
#define pkt_notice(pd, fmt, ...) \
pr_notice("%s: " fmt, pd->name, ##__VA_ARGS__)
+#define pkt_info(pd, fmt, ...) \
+ pr_info("%s: " fmt, pd->name, ##__VA_ARGS__)
#define pkt_dbg(level, pd, fmt, ...) \
do { \
@@ -1563,10 +1565,10 @@ work_to_do:
static void pkt_print_settings(struct pktcdvd_device *pd)
{
- pr_info("%s packets, %u blocks, Mode-%c disc\n",
- pd->settings.fp ? "Fixed" : "Variable",
- pd->settings.size >> 2,
- pd->settings.block_mode == 8 ? '1' : '2');
+ pkt_info(pd, "%s packets, %u blocks, Mode-%c disc\n",
+ pd->settings.fp ? "Fixed" : "Variable",
+ pd->settings.size >> 2,
+ pd->settings.block_mode == 8 ? '1' : '2');
}
static int pkt_mode_sense(struct pktcdvd_device *pd, struct packet_command *cgc, int page_code, int page_control)
@@ -2114,7 +2116,7 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
return 1;
}
if (*speed) {
- pr_info("maximum media speed: %d\n", *speed);
+ pkt_info(pd, "maximum media speed: %d\n", *speed);
return 0;
} else {
pkt_notice(pd, "unknown speed %d for sub-type %d\n", sp, st);
@@ -2241,7 +2243,7 @@ static int pkt_open_dev(struct pktcdvd_device *pd, fmode_t write)
ret = -ENOMEM;
goto out_putdev;
}
- pr_info("%lukB available on disc\n", lba << 1);
+ pkt_info(pd, "%lukB available on disc\n", lba << 1);
}
return 0;
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH V3 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense()
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
` (6 preceding siblings ...)
2013-06-03 16:45 ` [PATCH V3 7/8] pktcdvd: Convert pr_info to pkt_info Joe Perches
@ 2013-06-03 16:45 ` Joe Perches
2013-07-23 0:53 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
8 siblings, 0 replies; 38+ messages in thread
From: Joe Perches @ 2013-06-03 16:45 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
Allow the device name to be emitted with pkt_err when
logging the sense data.
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/block/pktcdvd.c | 31 ++++++++++++++++---------------
1 file changed, 16 insertions(+), 15 deletions(-)
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index f81648c..fabe270 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -755,17 +755,18 @@ static const char *sense_key_string(__u8 index)
* A generic sense dump / resolve mechanism should be implemented across
* all ATAPI + SCSI devices.
*/
-static void pkt_dump_sense(struct packet_command *cgc)
+static void pkt_dump_sense(struct pktcdvd_device *pd,
+ struct packet_command *cgc)
{
struct request_sense *sense = cgc->sense;
if (sense)
- pr_err("%*ph - sense %02x.%02x.%02x (%s)\n",
- CDROM_PACKET_SIZE, cgc->cmd,
- sense->sense_key, sense->asc, sense->ascq,
- sense_key_string(sense->sense_key));
+ pkt_err(pd, "%*ph - sense %02x.%02x.%02x (%s)\n",
+ CDROM_PACKET_SIZE, cgc->cmd,
+ sense->sense_key, sense->asc, sense->ascq,
+ sense_key_string(sense->sense_key));
else
- pr_err("%*ph - no sense\n", CDROM_PACKET_SIZE, cgc->cmd);
+ pkt_err(pd, "%*ph - no sense\n", CDROM_PACKET_SIZE, cgc->cmd);
}
/*
@@ -808,7 +809,7 @@ static noinline_for_stack int pkt_set_speed(struct pktcdvd_device *pd,
cgc.cmd[5] = write_speed & 0xff;
if ((ret = pkt_generic_packet(pd, &cgc)))
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1702,7 +1703,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
init_cdrom_command(&cgc, buffer, sizeof(*wp), CGC_DATA_READ);
cgc.sense = &sense;
if ((ret = pkt_mode_sense(pd, &cgc, GPMODE_WRITE_PARMS_PAGE, 0))) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1717,7 +1718,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
init_cdrom_command(&cgc, buffer, size, CGC_DATA_READ);
cgc.sense = &sense;
if ((ret = pkt_mode_sense(pd, &cgc, GPMODE_WRITE_PARMS_PAGE, 0))) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1759,7 +1760,7 @@ static noinline_for_stack int pkt_set_write_settings(struct pktcdvd_device *pd)
cgc.buflen = cgc.cmd[8] = size;
if ((ret = pkt_mode_select(pd, &cgc))) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -1971,7 +1972,7 @@ static noinline_for_stack int pkt_write_caching(struct pktcdvd_device *pd,
ret = pkt_mode_select(pd, &cgc);
if (ret) {
pkt_err(pd, "write caching control failed\n");
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
} else if (!ret && set)
pkt_notice(pd, "enabled write caching\n");
return ret;
@@ -2009,7 +2010,7 @@ static noinline_for_stack int pkt_get_max_speed(struct pktcdvd_device *pd,
sizeof(struct mode_page_header);
ret = pkt_mode_sense(pd, &cgc, GPMODE_CAPABILITIES_PAGE, 0);
if (ret) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
}
@@ -2068,7 +2069,7 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
cgc.cmd[8] = 2;
ret = pkt_generic_packet(pd, &cgc);
if (ret) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
size = ((unsigned int) buf[0]<<8) + buf[1] + 2;
@@ -2083,7 +2084,7 @@ static noinline_for_stack int pkt_media_speed(struct pktcdvd_device *pd,
cgc.cmd[8] = size;
ret = pkt_generic_packet(pd, &cgc);
if (ret) {
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
@@ -2138,7 +2139,7 @@ static noinline_for_stack int pkt_perform_opc(struct pktcdvd_device *pd)
cgc.cmd[0] = GPCMD_SEND_OPC;
cgc.cmd[1] = 1;
if ((ret = pkt_generic_packet(pd, &cgc)))
- pkt_dump_sense(&cgc);
+ pkt_dump_sense(pd, &cgc);
return ret;
}
--
1.8.1.2.459.gbcd45b4.dirty
^ permalink raw reply related [flat|nested] 38+ messages in thread
* Re: [PATCH V3 0/8] pktcdvd: More neatenings
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
` (7 preceding siblings ...)
2013-06-03 16:45 ` [PATCH V3 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense() Joe Perches
@ 2013-07-23 0:53 ` Joe Perches
2013-07-30 9:18 ` Jiri Kosina
8 siblings, 1 reply; 38+ messages in thread
From: Joe Perches @ 2013-07-23 0:53 UTC (permalink / raw)
To: Jiri Kosina; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
On Mon, 2013-06-03 at 09:45 -0700, Joe Perches wrote:
> Thanks for the oversight reviews guys.
>
> V3:
> Fixed patch 2 thinko in sense_string via Dan Carpenter
> Moved pr_err in patch 5 to avoid moving again in patch 6 via Andy Schevchenko
>
> V2:
> Removed the compile error the patch 1 and compile fix in 2
> Added Andy's suggestion in patch 2.
> Added conversions to print pd->name in logging macros.
>
> Joe Perches (8):
> pktcdvd: Convert ZONE macro to static function get_zone()
> pktcdvd: Convert printk to pr_<level>
> pktcdvd: Consolidate DPRINTK and VPRINTK macros
> pktcdvd: Add struct pktcdvd_device * to pkt_dbg
> pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible
> pktcdvd: Convert pr_notice to pkt_notice
> pktcdvd: Convert pr_info to pkt_info
> pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense()
>
> drivers/block/pktcdvd.c | 278 ++++++++++++++++++++++++------------------------
> 1 file changed, 140 insertions(+), 138 deletions(-)
Ping?
Jiri, are you doing to do anything with this?
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH V3 0/8] pktcdvd: More neatenings
2013-07-23 0:53 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
@ 2013-07-30 9:18 ` Jiri Kosina
0 siblings, 0 replies; 38+ messages in thread
From: Jiri Kosina @ 2013-07-30 9:18 UTC (permalink / raw)
To: Joe Perches; +Cc: Dan Carpenter, Andy Shevchenko, linux-kernel
On Mon, 22 Jul 2013, Joe Perches wrote:
> > V3:
> > Fixed patch 2 thinko in sense_string via Dan Carpenter
> > Moved pr_err in patch 5 to avoid moving again in patch 6 via Andy Schevchenko
> >
> > V2:
> > Removed the compile error the patch 1 and compile fix in 2
> > Added Andy's suggestion in patch 2.
> > Added conversions to print pd->name in logging macros.
> >
> > Joe Perches (8):
> > pktcdvd: Convert ZONE macro to static function get_zone()
> > pktcdvd: Convert printk to pr_<level>
> > pktcdvd: Consolidate DPRINTK and VPRINTK macros
> > pktcdvd: Add struct pktcdvd_device * to pkt_dbg
> > pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible
> > pktcdvd: Convert pr_notice to pkt_notice
> > pktcdvd: Convert pr_info to pkt_info
> > pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense()
> >
> > drivers/block/pktcdvd.c | 278 ++++++++++++++++++++++++------------------------
> > 1 file changed, 140 insertions(+), 138 deletions(-)
>
> Ping?
>
> Jiri, are you doing to do anything with this?
This is now in my linux-block.git, I just haven't sent pull request to
Jens yet. The patchset is scheduled for 3.12.
Thanks,
--
Jiri Kosina
SUSE Labs
^ permalink raw reply [flat|nested] 38+ messages in thread
end of thread, other threads:[~2013-07-30 9:18 UTC | newest]
Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-16 8:11 [patch] pktcdvd: silence static checker warning Dan Carpenter
2013-05-16 8:11 ` Dan Carpenter
2013-05-29 13:37 ` Jiri Kosina
2013-05-29 13:37 ` Jiri Kosina
2013-05-30 20:57 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
2013-05-30 20:57 ` [PATCH 1/3] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
2013-05-30 20:57 ` [PATCH 2/3] pktcdvd: Convert printk to pr_<level> Joe Perches
2013-05-31 19:44 ` Andy Shevchenko
2013-05-31 21:56 ` Joe Perches
2013-05-30 20:57 ` [PATCH 3/3] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
2013-05-31 5:37 ` [PATCH 0/3] pktcdvd: A few more neatenings Joe Perches
2013-06-01 4:11 ` [PATCH V2 0/8] pktcdvd: More neatenings Joe Perches
2013-06-01 4:11 ` [PATCH V2 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
2013-06-01 4:11 ` [PATCH V2 2/8] pktcdvd: Convert printk to pr_<level> Joe Perches
2013-06-03 9:57 ` Dan Carpenter
2013-06-03 10:42 ` Andy Shevchenko
2013-06-03 11:59 ` Joe Perches
2013-06-03 12:50 ` Dan Carpenter
2013-06-03 12:58 ` Joe Perches
2013-06-03 16:45 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
2013-06-03 16:45 ` [PATCH V3 1/8] pktcdvd: Convert ZONE macro to static function get_zone() Joe Perches
2013-06-03 16:45 ` [PATCH V3 2/8] pktcdvd: Convert printk to pr_<level> Joe Perches
2013-06-03 16:45 ` [PATCH V3 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
2013-06-03 16:45 ` [PATCH V3 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg Joe Perches
2013-06-03 16:45 ` [PATCH V3 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible Joe Perches
2013-06-03 16:45 ` [PATCH V3 6/8] pktcdvd: Convert pr_notice to pkt_notice Joe Perches
2013-06-03 16:45 ` [PATCH V3 7/8] pktcdvd: Convert pr_info to pkt_info Joe Perches
2013-06-03 16:45 ` [PATCH V3 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense() Joe Perches
2013-07-23 0:53 ` [PATCH V3 0/8] pktcdvd: More neatenings Joe Perches
2013-07-30 9:18 ` Jiri Kosina
2013-06-01 4:11 ` [PATCH V2 3/8] pktcdvd: Consolidate DPRINTK and VPRINTK macros Joe Perches
2013-06-01 4:11 ` [PATCH V2 4/8] pktcdvd: Add struct pktcdvd_device * to pkt_dbg Joe Perches
2013-06-01 4:11 ` [PATCH V2 5/8] pktcdvd: Add struct pktcdvd_device.name to pr_err logging where possible Joe Perches
2013-06-01 4:11 ` [PATCH V2 6/8] pktcdvd: Convert pr_notice to pkt_notice Joe Perches
2013-06-02 12:12 ` Andy Shevchenko
2013-06-02 12:22 ` Joe Perches
2013-06-01 4:11 ` [PATCH V2 7/8] pktcdvd: Convert pr_info to pkt_info Joe Perches
2013-06-01 4:11 ` [PATCH V2 8/8] pktcdvd: Add struct pktcdvd_device * to pkt_dump_sense() Joe Perches
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.