lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <0F5B06BAB751E047AB5C87D1F77A77886995B7E023@GVW0547EXC.americas.hpqcorp.net>
Date:	Mon, 4 Jan 2010 16:12:30 +0000
From:	"Miller, Mike (OS Dev)" <Mike.Miller@...com>
To:	Joe Perches <joe@...ches.com>,
	"Stephen M. Cameron" <scameron@...rdog.cce.hp.com>
CC:	ISS StorageDev <iss_storagedev@...com>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH 2/2] drivers/block/cciss: Create and use cciss_debug
 functions, use pr_info



> -----Original Message-----
> From: Joe Perches [mailto:joe@...ches.com]
> Sent: Saturday, December 19, 2009 9:37 PM
> To: Stephen M. Cameron; Miller, Mike (OS Dev)
> Cc: ISS StorageDev; linux-kernel@...r.kernel.org
> Subject: [PATCH 2/2] drivers/block/cciss: Create and use
> cciss_debug functions, use pr_info
>
> Centralize #ifdef CCISS code blocks by using
> cciss_debug[_foo] functions
>
> cciss_debug for printk
> cciss_debug_cfg_table for print_cfg_table cciss_debug_bytes
> for print_bytes cciss_debug_cmd for print_cmd
>
> Convert remaining printk without KERN_ levels to pr_info(
>
> Signed-off-by: Joe Perches <joe@...ches.com>

Acked-by: Mike Miller <mike.miller@...com>

> ---
>  drivers/block/cciss.c      |  143 ++++++++++++++------------------
>  drivers/block/cciss_scsi.c |  195
> +++++++++++++++++++-------------------------
>  2 files changed, 146 insertions(+), 192 deletions(-)
>
> diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
> index 14f0e06..1b9cfa7 100644
> --- a/drivers/block/cciss.c
> +++ b/drivers/block/cciss.c
> @@ -61,6 +61,18 @@
>  #define DRIVER_NAME "HP CISS Driver (v 3.6.20)"
>  #define DRIVER_VERSION CCISS_DRIVER_VERSION(3, 6, 20)
>
> +#ifdef CCISS_DEBUG
> +#define cciss_debug(fmt, ...)                                \
> +     printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) #else
> +#define cciss_debug(fmt, ...)
>       \
> +({                                                           \
> +     if (0)                                                  \
> +             printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__);  \
> +     0;                                                      \
> +})
> +#endif
> +
>  /* Embedded module documentation macros - see modules.h */
> MODULE_AUTHOR("Hewlett-Packard Company");
> MODULE_DESCRIPTION("Driver for HP Smart Array Controllers");
> @@ -829,9 +841,7 @@ static CommandList_struct
> *cmd_alloc(ctlr_info_t *h, int get_from_pool)
>               } while (test_and_set_bit
>                        (i & (BITS_PER_LONG - 1),
>                         h->cmd_pool_bits + (i /
> BITS_PER_LONG)) != 0); -#ifdef CCISS_DEBUG
> -             printk(KERN_DEBUG "cciss: using command buffer
> %d\n", i);
> -#endif
> +             cciss_debug("using command buffer %d\n", i);
>               c = h->cmd_pool + i;
>               memset(c, 0, sizeof(CommandList_struct));
>               cmd_dma_handle = h->cmd_pool_dhandle
> @@ -897,9 +907,7 @@ static int cciss_open(struct block_device
> *bdev, fmode_t mode)
>       ctlr_info_t *host = get_host(bdev->bd_disk);
>       drive_info_struct *drv = get_drv(bdev->bd_disk);
>
> -#ifdef CCISS_DEBUG
> -     printk(KERN_DEBUG "cciss_open %s\n", bdev->bd_disk->disk_name);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("%s %s\n", __func__, bdev->bd_disk->disk_name);
>
>       if (drv->busy_configuring)
>               return -EBUSY;
> @@ -938,9 +946,7 @@ static int cciss_release(struct gendisk
> *disk, fmode_t mode)
>       ctlr_info_t *host = get_host(disk);
>       drive_info_struct *drv = get_drv(disk);
>
> -#ifdef CCISS_DEBUG
> -     printk(KERN_DEBUG "cciss_release %s\n", disk->disk_name);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("%s %s\n", __func__, disk->disk_name);
>
>       drv->usage_count--;
>       host->usage_count--;
> @@ -1107,9 +1113,7 @@ static int cciss_ioctl(struct
> block_device *bdev, fmode_t mode,
>       int ctlr = host->ctlr;
>       void __user *argp = (void __user *)arg;
>
> -#ifdef CCISS_DEBUG
> -     printk(KERN_DEBUG "cciss_ioctl: Called with cmd=%x
> %lx\n", cmd, arg);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("%s: Called with cmd=%x %lx\n", __func__, cmd, arg);
>
>       switch (cmd) {
>       case CCISS_GETPCIINFO:
> @@ -1154,9 +1158,9 @@ static int cciss_ioctl(struct
> block_device *bdev, fmode_t mode,
>                       if (copy_from_user
>                           (&intinfo, argp,
> sizeof(cciss_coalint_struct)))
>                               return -EFAULT;
> -                     if ((intinfo.delay == 0) &&
> (intinfo.count == 0))
> -                     {
> -//                      printk("cciss_ioctl: delay and count
> cannot be 0\n");
> +                     if ((intinfo.delay == 0) &&
> (intinfo.count == 0)) {
> +                             cciss_debug("%s: delay and
> count cannot be 0\n",
> +                                         __func__);
>                               return -EINVAL;
>                       }
>                       spin_lock_irqsave(CCISS_LOCK(ctlr),
> flags); @@ -1686,9 +1690,7 @@ static void
> cciss_softirq_done(struct request *rq)
>               ++sg_index;
>       }
>
> -#ifdef CCISS_DEBUG
> -     printk("Done with %p\n", rq);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("Done with %p\n", rq);
>
>       /* set the residual count for pc requests */
>       if (blk_pc_request(rq))
> @@ -3098,10 +3100,8 @@ static void do_cciss_request(struct
> request_queue *q)
>       c->Request.CDB[0] =
>           (rq_data_dir(creq) == READ) ? h->cciss_read :
> h->cciss_write;
>       start_blk = blk_rq_pos(creq);
> -#ifdef CCISS_DEBUG
> -     printk(KERN_DEBUG "cciss: sector =%d nr_sectors=%d\n",
> -            (int)blk_rq_pos(creq), (int)blk_rq_sectors(creq));
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("sector =%d nr_sectors=%u\n",
> +                 (int)blk_rq_pos(creq), blk_rq_sectors(creq));
>
>       sg_init_table(tmp_sg, h->maxsgentries);
>       seg = blk_rq_map_sg(q, creq, tmp_sg);
> @@ -3166,11 +3166,8 @@ static void do_cciss_request(struct
> request_queue *q)
>       if (seg > h->maxSG)
>               h->maxSG = seg;
>
> -#ifdef CCISS_DEBUG
> -     printk(KERN_DEBUG "cciss: Submitting %ld sectors in %d
> segments "
> -                     "chained[%d]\n",
> -                     blk_rq_sectors(creq), seg, chained);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("Submitting %u sectors in %d segments
> chained[%d]\n",
> +                 blk_rq_sectors(creq), seg, chained);
>
>       c->Header.SGList = c->Header.SGTotal = seg + chained;
>       if (seg > h->max_cmd_sgentries)
> @@ -3484,39 +3481,40 @@ static int
> check_for_unit_attention(ctlr_info_t *h, CommandList_struct *c)
>   *   the io functions.
>   *   This is for debug only.
>   */
> -#ifdef CCISS_DEBUG
> -static void print_cfg_table(CfgTable_struct *tb)
> +static void cciss_debug_cfg_table(CfgTable_struct *tb)
>  {
> +#ifdef CCISS_DEBUG
>       int i;
>       char temp_name[17];
>
> -     printk("Controller Configuration information\n");
> -     printk("------------------------------------\n");
> +     cciss_debug("Controller Configuration information\n");
> +     cciss_debug("------------------------------------\n");
>       for (i = 0; i < 4; i++)
>               temp_name[i] = readb(&(tb->Signature[i]));
>       temp_name[4] = '\0';
> -     printk("   Signature = %s\n", temp_name);
> -     printk("   Spec Number = %d\n", readl(&(tb->SpecValence)));
> -     printk("   Transport methods supported = 0x%x\n",
> -            readl(&(tb->TransportSupport)));
> -     printk("   Transport methods active = 0x%x\n",
> -            readl(&(tb->TransportActive)));
> -     printk("   Requested transport Method = 0x%x\n",
> -            readl(&(tb->HostWrite.TransportRequest)));
> -     printk("   Coalesce Interrupt Delay = 0x%x\n",
> -            readl(&(tb->HostWrite.CoalIntDelay)));
> -     printk("   Coalesce Interrupt Count = 0x%x\n",
> -            readl(&(tb->HostWrite.CoalIntCount)));
> -     printk("   Max outstanding commands = 0x%d\n",
> -            readl(&(tb->CmdsOutMax)));
> -     printk("   Bus Types = 0x%x\n", readl(&(tb->BusTypes)));
> +     cciss_debug("   Signature = %s\n", temp_name);
> +     cciss_debug("   Spec Number = %d\n", readl(&(tb->SpecValence)));
> +     cciss_debug("   Transport methods supported = 0x%x\n",
> +                 readl(&(tb->TransportSupport)));
> +     cciss_debug("   Transport methods active = 0x%x\n",
> +                 readl(&(tb->TransportActive)));
> +     cciss_debug("   Requested transport Method = 0x%x\n",
> +                 readl(&(tb->HostWrite.TransportRequest)));
> +     cciss_debug("   Coalesce Interrupt Delay = 0x%x\n",
> +                 readl(&(tb->HostWrite.CoalIntDelay)));
> +     cciss_debug("   Coalesce Interrupt Count = 0x%x\n",
> +                 readl(&(tb->HostWrite.CoalIntCount)));
> +     cciss_debug("   Max outstanding commands = 0x%d\n",
> +                 readl(&(tb->CmdsOutMax)));
> +     cciss_debug("   Bus Types = 0x%x\n", readl(&(tb->BusTypes)));
>       for (i = 0; i < 16; i++)
>               temp_name[i] = readb(&(tb->ServerName[i]));
>       temp_name[16] = '\0';
> -     printk("   Server Name = %s\n", temp_name);
> -     printk("   Heartbeat Counter = 0x%x\n\n\n",
> readl(&(tb->HeartBeat)));
> -}
> +     cciss_debug("   Server Name = %s\n", temp_name);
> +     cciss_debug("   Heartbeat Counter = 0x%x\n\n\n",
> +                 readl(&(tb->HeartBeat)));
>  #endif                               /* CCISS_DEBUG */
> +}
>
>  static int find_PCI_BAR_index(struct pci_dev *pdev, unsigned
> long pci_bar_addr)  { @@ -3652,11 +3650,9 @@ static int
> __devinit cciss_pci_init(ctlr_info_t *c, struct pci_dev *pdev)
>               return err;
>       }
>
> -#ifdef CCISS_DEBUG
> -     printk("command = %x\n", command);
> -     printk("irq = %x\n", pdev->irq);
> -     printk("board_id = %x\n", board_id);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("command = %x\n", command);
> +     cciss_debug("irq = %x\n", pdev->irq);
> +     cciss_debug("board_id = %x\n", board_id);
>
>  /* If the kernel supports MSI/MSI-X we will try to enable
> that functionality,
>   * else we use the IO-APIC interrupt assigned to us by system ROM.
> @@ -3678,9 +3674,8 @@ static int __devinit
> cciss_pci_init(ctlr_info_t *c, struct pci_dev *pdev)
>                                                * already removed
>                                                */
>
> -#ifdef CCISS_DEBUG
> -     printk("address 0 = %lx\n", c->paddr);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("address 0 = %lx\n", c->paddr);
> +
>       c->vaddr = remap_pci_mem(c->paddr, 0x250);
>
>       /* Wait for the board to become ready.  (PCI hotplug
> needs this.) @@ -3701,14 +3696,10 @@ static int __devinit
> cciss_pci_init(ctlr_info_t *c, struct pci_dev *pdev)
>       /* get the address index number */
>       cfg_base_addr = readl(c->vaddr + SA5_CTCFG_OFFSET);
>       cfg_base_addr &= (__u32) 0x0000ffff;
> -#ifdef CCISS_DEBUG
> -     printk("cfg base address = %x\n", cfg_base_addr);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("cfg base address = %x\n", cfg_base_addr);
>       cfg_base_addr_index = find_PCI_BAR_index(pdev,
> cfg_base_addr); -#ifdef CCISS_DEBUG
> -     printk("cfg base address index = %llx\n",
> -             (unsigned long long)cfg_base_addr_index);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("cfg base address index = %llx\n",
> +                 (unsigned long long)cfg_base_addr_index);
>       if (cfg_base_addr_index == -1) {
>               pr_warning("Cannot find cfg_base_addr_index\n");
>               err = -ENODEV;
> @@ -3716,17 +3707,13 @@ static int __devinit
> cciss_pci_init(ctlr_info_t *c, struct pci_dev *pdev)
>       }
>
>       cfg_offset = readl(c->vaddr + SA5_CTMEM_OFFSET);
> -#ifdef CCISS_DEBUG
> -     printk("cfg offset = %llx\n", (unsigned long long)cfg_offset);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("cfg offset = %llx\n", (unsigned long
> long)cfg_offset);
>       c->cfgtable = remap_pci_mem(pci_resource_start(pdev,
>
> cfg_base_addr_index) +
>                                   cfg_offset,
> sizeof(CfgTable_struct));
>       c->board_id = board_id;
>
> -#ifdef CCISS_DEBUG
> -     print_cfg_table(c->cfgtable);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug_cfg_table(c->cfgtable);
>
>       /* Some controllers support Zero Memory Raid (ZMR).
>        * When configured in ZMR mode the number of supported
> @@ -3761,7 +3748,7 @@ static int __devinit
> cciss_pci_init(ctlr_info_t *c, struct pci_dev *pdev)
>           (readb(&c->cfgtable->Signature[1]) != 'I') ||
>           (readb(&c->cfgtable->Signature[2]) != 'S') ||
>           (readb(&c->cfgtable->Signature[3]) != 'S')) {
> -             printk("Does not appear to be a valid CISS
> config table\n");
> +             pr_info("Does not appear to be a valid CISS
> config table\n");
>               err = -ENODEV;
>               goto err_out_free_res;
>       }
> @@ -3791,9 +3778,7 @@ static int __devinit
> cciss_pci_init(ctlr_info_t *c, struct pci_dev *pdev)
>               pci_write_config_dword(pdev,
> PCI_COMMAND_PARITY, dma_refetch);
>       }
>
> -#ifdef CCISS_DEBUG
> -     printk("Trying to put board into Simple mode\n");
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("Trying to put board into Simple mode\n");
>       c->max_commands = readl(&(c->cfgtable->CmdsOutMax));
>       /* Update the field, and then ring the doorbell */
>       writel(CFGTBL_Trans_Simple,
> &(c->cfgtable->HostWrite.TransportRequest));
> @@ -3810,13 +3795,9 @@ static int __devinit
> cciss_pci_init(ctlr_info_t *c, struct pci_dev *pdev)
>               schedule_timeout(msecs_to_jiffies(1));
>       }
>
> -#ifdef CCISS_DEBUG
> -     printk(KERN_DEBUG "I counter got to %d %x\n", i,
> -            readl(c->vaddr + SA5_DOORBELL));
> -#endif                               /* CCISS_DEBUG */
> -#ifdef CCISS_DEBUG
> -     print_cfg_table(c->cfgtable);
> -#endif                               /* CCISS_DEBUG */
> +     cciss_debug("I counter got to %d %x\n",
> +                 i, readl(c->vaddr + SA5_DOORBELL));
> +     cciss_debug_cfg_table(c->cfgtable);
>
>       if (!(readl(&(c->cfgtable->TransportActive)) &
> CFGTBL_Trans_Simple)) {
>               pr_warning("unable to get board into simple
> mode\n"); diff --git a/drivers/block/cciss_scsi.c
> b/drivers/block/cciss_scsi.c index bd7d0c5..54543f1 100644
> --- a/drivers/block/cciss_scsi.c
> +++ b/drivers/block/cciss_scsi.c
> @@ -185,7 +185,7 @@ scsi_cmd_free(ctlr_info_t *h,
> CommandList_struct *cmd)
>       sa = (struct cciss_scsi_adapter_data_t *) h->scsi_ctlr;
>       stk = &sa->cmd_stack;
>       if (stk->top >= CMD_STACK_SIZE) {
> -             printk("cciss: scsi_cmd_free called too many times.\n");
> +             pr_info("scsi_cmd_free called too many times.\n");
>               BUG();
>       }
>       stk->top++;
> @@ -209,7 +209,7 @@ scsi_cmd_stack_setup(int ctlr, struct
> cciss_scsi_adapter_data_t *sa)
>               pci_alloc_consistent(hba[ctlr]->pdev, size,
> &stk->cmd_pool_handle);
>
>       if (stk->pool == NULL) {
> -             printk("stk->pool is null\n");
> +             pr_info("stk->pool is null\n");
>               return -1;
>       }
>
> @@ -232,10 +232,10 @@ scsi_cmd_stack_free(int ctlr)
>       sa = (struct cciss_scsi_adapter_data_t *) hba[ctlr]->scsi_ctlr;
>       stk = &sa->cmd_stack;
>       if (stk->top != CMD_STACK_SIZE-1) {
> -             printk( "cciss: %d scsi commands are still
> outstanding.\n",
> +             pr_info("%d scsi commands are still outstanding.\n",
>                       CMD_STACK_SIZE - stk->top);
>               // BUG();
> -             printk("WE HAVE A BUG HERE!!! stk=0x%p\n", stk);
> +             pr_alert("WE HAVE A BUG HERE!!! stk=0x%p\n", stk);
>       }
>       size = sizeof(struct cciss_scsi_cmd_stack_elem_t) *
> CMD_STACK_SIZE;
>
> @@ -243,91 +243,64 @@ scsi_cmd_stack_free(int ctlr)
>       stk->pool = NULL;
>  }
>
> -#if 0
> -static int xmargin=8;
> -static int amargin=60;
> -
>  static void
> -print_bytes (unsigned char *c, int len, int hex, int ascii)
> +cciss_debug_bytes(const void *p, size_t len, bool ascii)
>  {
> -
> -     int i;
> -     unsigned char *x;
> -
> -     if (hex)
> -     {
> -             x = c;
> -             for (i=0;i<len;i++)
> -             {
> -                     if ((i % xmargin) == 0 && i>0) printk("\n");
> -                     if ((i % xmargin) == 0) printk("0x%04x:", i);
> -                     printk(" %02x", *x);
> -                     x++;
> -             }
> -             printk("\n");
> -     }
> -     if (ascii)
> -     {
> -             x = c;
> -             for (i=0;i<len;i++)
> -             {
> -                     if ((i % amargin) == 0 && i>0) printk("\n");
> -                     if ((i % amargin) == 0) printk("0x%04x:", i);
> -                     if (*x > 26 && *x < 128) printk("%c", *x);
> -                     else printk(".");
> -                     x++;
> -             }
> -             printk("\n");
> -     }
> +#ifdef CCISS_DEBUG
> +     print_hex_dump(KERN_DEBUG, KBUILD_MODNAME ": ",
> DUMP_PREFIX_OFFSET,
> +                    16, 1, p, len, ascii);
> +#endif
>  }
>
>  static void
> -print_cmd(CommandList_struct *cp)
> +cciss_debug_cmd(CommandList_struct *cp)
>  {
> -     printk("queue:%d\n", cp->Header.ReplyQueue);
> -     printk("sglist:%d\n", cp->Header.SGList);
> -     printk("sgtot:%d\n", cp->Header.SGTotal);
> -     printk("Tag:0x%08x/0x%08x\n", cp->Header.Tag.upper,
> -                     cp->Header.Tag.lower);
> -     printk("LUN:0x%02x%02x%02x%02x%02x%02x%02x%02x\n",
> -             cp->Header.LUN.LunAddrBytes[0],
> -             cp->Header.LUN.LunAddrBytes[1],
> -             cp->Header.LUN.LunAddrBytes[2],
> -             cp->Header.LUN.LunAddrBytes[3],
> -             cp->Header.LUN.LunAddrBytes[4],
> -             cp->Header.LUN.LunAddrBytes[5],
> -             cp->Header.LUN.LunAddrBytes[6],
> -             cp->Header.LUN.LunAddrBytes[7]);
> -     printk("CDBLen:%d\n", cp->Request.CDBLen);
> -     printk("Type:%d\n",cp->Request.Type.Type);
> -     printk("Attr:%d\n",cp->Request.Type.Attribute);
> -     printk(" Dir:%d\n",cp->Request.Type.Direction);
> -     printk("Timeout:%d\n",cp->Request.Timeout);
> -     printk( "CDB: %02x %02x %02x %02x %02x %02x %02x %02x"
> -             " %02x %02x %02x %02x %02x %02x %02x %02x\n",
> -             cp->Request.CDB[0], cp->Request.CDB[1],
> -             cp->Request.CDB[2], cp->Request.CDB[3],
> -             cp->Request.CDB[4], cp->Request.CDB[5],
> -             cp->Request.CDB[6], cp->Request.CDB[7],
> -             cp->Request.CDB[8], cp->Request.CDB[9],
> -             cp->Request.CDB[10], cp->Request.CDB[11],
> -             cp->Request.CDB[12], cp->Request.CDB[13],
> -             cp->Request.CDB[14], cp->Request.CDB[15]),
> -     printk("edesc.Addr: 0x%08x/0%08x, Len  = %d\n",
> -             cp->ErrDesc.Addr.upper, cp->ErrDesc.Addr.lower,
> -                     cp->ErrDesc.Len);
> -     printk("sgs..........Errorinfo:\n");
> -     printk("scsistatus:%d\n", cp->err_info->ScsiStatus);
> -     printk("senselen:%d\n", cp->err_info->SenseLen);
> -     printk("cmd status:%d\n", cp->err_info->CommandStatus);
> -     printk("resid cnt:%d\n", cp->err_info->ResidualCnt);
> -     printk("offense size:%d\n",
> cp->err_info->MoreErrInfo.Invalid_Cmd.offense_size);
> -     printk("offense byte:%d\n",
> cp->err_info->MoreErrInfo.Invalid_Cmd.offense_num);
> -     printk("offense value:%d\n",
> cp->err_info->MoreErrInfo.Invalid_Cmd.offense_value);
> -
> -}
> -
> +#ifdef CCISS_DEBUG
> +     cciss_debug("queue:%d\n", cp->Header.ReplyQueue);
> +     cciss_debug("sglist:%d\n", cp->Header.SGList);
> +     cciss_debug("sgtot:%d\n", cp->Header.SGTotal);
> +     cciss_debug("Tag:0x%08x/0x%08x\n",
> +                 cp->Header.Tag.upper, cp->Header.Tag.lower);
> +     cciss_debug("LUN:0x%02x%02x%02x%02x%02x%02x%02x%02x\n",
> +                 cp->Header.LUN.LunAddrBytes[0],
> +                 cp->Header.LUN.LunAddrBytes[1],
> +                 cp->Header.LUN.LunAddrBytes[2],
> +                 cp->Header.LUN.LunAddrBytes[3],
> +                 cp->Header.LUN.LunAddrBytes[4],
> +                 cp->Header.LUN.LunAddrBytes[5],
> +                 cp->Header.LUN.LunAddrBytes[6],
> +                 cp->Header.LUN.LunAddrBytes[7]);
> +     cciss_debug("CDBLen:%d\n", cp->Request.CDBLen);
> +     cciss_debug("Type:%d\n",cp->Request.Type.Type);
> +     cciss_debug("Attr:%d\n",cp->Request.Type.Attribute);
> +     cciss_debug(" Dir:%d\n",cp->Request.Type.Direction);
> +     cciss_debug("Timeout:%d\n",cp->Request.Timeout);
> +     cciss_debug("CDB: %02x %02x %02x %02x %02x %02x %02x %02x"
> +                 " %02x %02x %02x %02x %02x %02x %02x %02x\n",
> +                 cp->Request.CDB[0], cp->Request.CDB[1],
> +                 cp->Request.CDB[2], cp->Request.CDB[3],
> +                 cp->Request.CDB[4], cp->Request.CDB[5],
> +                 cp->Request.CDB[6], cp->Request.CDB[7],
> +                 cp->Request.CDB[8], cp->Request.CDB[9],
> +                 cp->Request.CDB[10], cp->Request.CDB[11],
> +                 cp->Request.CDB[12], cp->Request.CDB[13],
> +                 cp->Request.CDB[14], cp->Request.CDB[15]);
> +     cciss_debug("edesc.Addr: 0x%08x/0%08x, Len  = %d\n",
> +                 cp->ErrDesc.Addr.upper, cp->ErrDesc.Addr.lower,
> +                 cp->ErrDesc.Len);
> +     cciss_debug("sgs..........Errorinfo:\n");
> +     cciss_debug("scsistatus:%d\n", cp->err_info->ScsiStatus);
> +     cciss_debug("senselen:%d\n", cp->err_info->SenseLen);
> +     cciss_debug("cmd status:%d\n", cp->err_info->CommandStatus);
> +     cciss_debug("resid cnt:%d\n", cp->err_info->ResidualCnt);
> +     cciss_debug("offense size:%d\n",
> +                 cp->err_info->MoreErrInfo.Invalid_Cmd.offense_size);
> +     cciss_debug("offense byte:%d\n",
> +                 cp->err_info->MoreErrInfo.Invalid_Cmd.offense_num);
> +     cciss_debug("offense value:%d\n",
> +
> cp->err_info->MoreErrInfo.Invalid_Cmd.offense_value);
>  #endif
> +}
>
>  static int
>  find_bus_target_lun(int ctlr, int *bus, int *target, int
> *lun) @@ -368,8 +341,8 @@ cciss_scsi_add_entry(int ctlr, int hostno,
>       unsigned char addr1[8], addr2[8];
>
>       if (n >= CCISS_MAX_SCSI_DEVS_PER_HBA) {
> -             printk("cciss%d: Too many devices, "
> -                     "some will be inaccessible.\n", ctlr);
> +             pr_info("%d: Too many devices, some will be
> inaccessible.\n",
> +                     ctlr);
>               return -1;
>       }
>
> @@ -425,7 +398,7 @@ cciss_scsi_add_entry(int ctlr, int hostno,
>          know our hostno and we don't want to print anything first
>          time anyway (the scsi layer's inquiries will show
> that info) */
>       if (hostno != -1)
> -             printk("cciss%d: %s device c%db%dt%dl%d added.\n",
> +             pr_info("%d: %s device c%db%dt%dl%d added.\n",
>                       ctlr, scsi_device_type(sd->devtype), hostno,
>                       sd->bus, sd->target, sd->lun);
>       return 0;
> @@ -448,9 +421,9 @@ cciss_scsi_remove_entry(int ctlr, int
> hostno, int entry,
>       for (i=entry;i<ccissscsi[ctlr].ndevices-1;i++)
>               ccissscsi[ctlr].dev[i] = ccissscsi[ctlr].dev[i+1];
>       ccissscsi[ctlr].ndevices--;
> -     printk("cciss%d: %s device c%db%dt%dl%d removed.\n",
> +     pr_info("%d: %s device c%db%dt%dl%d removed.\n",
>               ctlr, scsi_device_type(sd.devtype), hostno,
> -                     sd.bus, sd.target, sd.lun);
> +             sd.bus, sd.target, sd.lun);
>  }
>
>
> @@ -555,15 +528,15 @@ adjust_cciss_scsi_table(int ctlr, int hostno,
>
>               if (found == 0) { /* device no longer present. */
>                       changes++;
> -                     /* printk("cciss%d: %s device
> c%db%dt%dl%d removed.\n",
> -                             ctlr,
> scsi_device_type(csd->devtype), hostno,
> -                                     csd->bus, csd->target,
> csd->lun); */
> +                     /* pr_info("%d: %s device c%db%dt%dl%d
> removed.\n",
> +                                ctlr,
> scsi_device_type(csd->devtype), hostno,
> +                                csd->bus, csd->target, csd->lun); */
>                       cciss_scsi_remove_entry(ctlr, hostno, i,
>                               removed, &nremoved);
>                       /* remove ^^^, hence i not incremented */
>               } else if (found == 1) { /* device is different
> in some way */
>                       changes++;
> -                     printk("cciss%d: device c%db%dt%dl%d
> has changed.\n",
> +                     pr_info("%d: device c%db%dt%dl%d has
> changed.\n",
>                               ctlr, hostno, csd->bus,
> csd->target, csd->lun);
>                       cciss_scsi_remove_entry(ctlr, hostno, i,
>                               removed, &nremoved);
> @@ -728,7 +701,7 @@ complete_scsi_command( CommandList_struct
> *cp, int timeout, __u32 tag)
>       /* cmd->result |= (GOOD < 1); */                /*
> status byte */
>
>       cmd->result |= (ei->ScsiStatus);
> -     /* printk("Scsistatus is 0x%02x\n", ei->ScsiStatus);  */
> +     /* pr_info("Scsistatus is 0x%02x\n", ei->ScsiStatus);  */
>
>       /* copy the sense data whether we need to or not. */
>
> @@ -773,8 +746,8 @@ complete_scsi_command( CommandList_struct
> *cp, int timeout, __u32 tag)
>                                          cp);
>                       break;
>                       case CMD_INVALID: {
> -                             /* print_bytes(cp, sizeof(*cp), 1, 0);
> -                             print_cmd(cp); */
> +                             cciss_debug_bytes(cp,
> sizeof(*cp), false);
> +                             cciss_debug_cmd(cp);
>       /* We get CMD_INVALID if you address a non-existent
> tape drive instead
>       of a selection timeout (no response).  You will see
> this if you yank
>       out a tape drive, then try to access it. This is kind
> of a shame @@ -817,8 +790,8 @@ complete_scsi_command(
> CommandList_struct *cp, int timeout, __u32 tag)
>                                          cp, ei->CommandStatus);
>               }
>       }
> -     // printk("c:%p:c%db%dt%dl%d ", cmd, ctlr->ctlr, cmd->channel,
> -     //      cmd->target, cmd->lun);
> +     /* pr_info("c:%p:c%db%dt%dl%d ",
> +             cmd, ctlr->ctlr, cmd->channel, cmd->target,
> cmd->lun); */
>       cmd->scsi_done(cmd);
>       scsi_cmd_free(ctlr, cp);
>  }
> @@ -904,7 +877,7 @@ cciss_scsi_do_simple_cmd(ctlr_info_t *c,
>       cp->Header.Tag.lower = cp->busaddr;  // Use k. address
> of cmd as tag
>       // Fill in the request block...
>
> -     /* printk("Using scsi3addr
> 0x%02x%0x2%0x2%0x2%0x2%0x2%0x2%0x2\n",
> +     /* pr_info("Using scsi3addr
> 0x%02x%0x2%0x2%0x2%0x2%0x2%0x2%0x2\n",
>               scsi3addr[0], scsi3addr[1], scsi3addr[2], scsi3addr[3],
>               scsi3addr[4], scsi3addr[5], scsi3addr[6],
> scsi3addr[7]); */
>
> @@ -952,7 +925,7 @@ cciss_scsi_interpret_error(CommandList_struct *cp)
>                               pr_warning("SCSI status is
> abnormally zero.  (probably indicates selection timeout
> reported incorrectly due to a known firmware bug, circa July,
> 2001.)\n");
>               break;
>               case CMD_DATA_UNDERRUN: /* let mid layer handle it. */
> -                     printk("UNDERRUN\n");
> +                     pr_info("UNDERRUN\n");
>               break;
>               case CMD_DATA_OVERRUN:
>                       pr_warning("cp %p has completed with
> data overrun reported\n", @@ -963,8 +936,8 @@
> cciss_scsi_interpret_error(CommandList_struct *cp)
>                       /* to non-existent targets as invalid
> commands. */
>                       pr_warning("cp %p is reported invalid
> (probably means target device no longer present)\n",
>                                  cp);
> -                     /* print_bytes((unsigned char *) cp,
> sizeof(*cp), 1, 0);
> -                     print_cmd(cp);  */
> +                     cciss_debug_bytes(cp, sizeof(*cp), false);
> +                     cciss_debug_cmd(cp);
>                       }
>               break;
>               case CMD_PROTOCOL_ERR:
> @@ -1012,7 +985,7 @@ cciss_scsi_do_inquiry(ctlr_info_t *c,
> unsigned char *scsi3addr,
>       spin_unlock_irqrestore(CCISS_LOCK(c->ctlr), flags);
>
>       if (cp == NULL) {                       /* trouble... */
> -             printk("cmd_alloc returned NULL!\n");
> +             pr_info("cmd_alloc returned NULL!\n");
>               return -1;
>       }
>
> @@ -1074,7 +1047,7 @@ cciss_scsi_do_report_phys_luns(ctlr_info_t *c,
>       cp = scsi_cmd_alloc(c);
>       spin_unlock_irqrestore(CCISS_LOCK(c->ctlr), flags);
>       if (cp == NULL) {                       /* trouble... */
> -             printk("cmd_alloc returned NULL!\n");
> +             pr_info("cmd_alloc returned NULL!\n");
>               return -1;
>       }
>
> @@ -1392,10 +1365,11 @@ cciss_scsi_queue_command (struct
> scsi_cmnd *cmd, void (* done)(struct scsi_cmnd
>               return 0;
>       }
>
> -     /* printk("cciss_queue_command, p=%p, cmd=0x%02x,
> c%db%dt%dl%d\n",
> -             cmd, cmd->cmnd[0], ctlr, cmd->channel,
> cmd->target, cmd->lun);*/
> -     // printk("q:%p:c%db%dt%dl%d ", cmd, ctlr, cmd->channel,
> -     //      cmd->target, cmd->lun);
> +     /* pr_info("%s: p=%p, cmd=0x%02x, c%db%dt%dl%d\n",
> +             __func__, cmd, cmd->cmnd[0],
> +             ctlr, cmd->channel, cmd->target, cmd->lun);*/
> +     /* pr_info("q:%p:c%db%dt%dl%d ",
> +             cmd, ctlr, cmd->channel, cmd->target, cmd->lun); */
>
>       /* Ok, we have a reasonable scsi nexus, so send the cmd
> down, and
>             see what the device thinks of it. */ @@ -1404,7
> +1378,7 @@ cciss_scsi_queue_command (struct scsi_cmnd *cmd,
> void (* done)(struct scsi_cmnd
>       cp = scsi_cmd_alloc(*c);
>       spin_unlock_irqrestore(CCISS_LOCK(ctlr), flags);
>       if (cp == NULL) {                       /* trouble... */
> -             printk("scsi_cmd_alloc returned NULL!\n");
> +             pr_info("scsi_cmd_alloc returned NULL!\n");
>               /* FIXME: next 3 lines are -> BAD! <- */
>               cmd->result = DID_NO_CONNECT << 16;
>               done(cmd);
> @@ -1454,8 +1428,7 @@ cciss_scsi_queue_command (struct
> scsi_cmnd *cmd, void (* done)(struct scsi_cmnd
>               break;
>
>         default:
> -             printk("cciss: unknown data direction: %d\n",
> -                     cmd->sc_data_direction);
> +             pr_info("unknown data direction: %d\n",
> cmd->sc_data_direction);
>               BUG();
>               break;
>       }
> @@ -1515,7 +1488,7 @@ cciss_engage_scsi(int ctlr)
>       stk = &sa->cmd_stack;
>
>       if (sa->registered) {
> -             printk("cciss%d: SCSI subsystem already
> engaged.\n", ctlr);
> +             pr_info("%d: SCSI subsystem already engaged.\n", ctlr);
>               spin_unlock_irqrestore(CCISS_LOCK(ctlr), flags);
>               return -ENXIO;
>       }
> @@ -1599,7 +1572,7 @@ retry_tur:
>       }
>
>       if (rc)
> -             printk("cciss%d: giving up on device.\n", h->ctlr);
> +             pr_info("%d: giving up on device.\n", h->ctlr);
>       else
>               pr_warning("%d: device is ready.\n", h->ctlr);
>
> --
> 1.6.6.rc0.57.gad7a
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ