From: Tomas Henzl <thenzl@redhat.com> Date: Sun, 29 Aug 2010 15:49:19 -0400 Subject: [block] cciss: remove withirq parameter where possible Message-id: <1283097002-3341-21-git-send-email-thenzl@redhat.com> Patchwork-id: 27873 O-Subject: [RHEL6 PATCH 20/63] cciss: remove the "withirq" parameter where possible Bugzilla: 568830 RH-Acked-by: Neil Horman <nhorman@redhat.com> remove the "withirq" parameter where possible diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index f0ca7c9..3b90741 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c @@ -165,13 +165,12 @@ static int cciss_getgeo(struct block_device *bdev, struct hd_geometry *geo); static int cciss_revalidate(struct gendisk *disk); static int rebuild_lun_table(ctlr_info_t *h, int first_time); static int deregister_disk(ctlr_info_t *h, int drv_index, int clear_all); -static void cciss_read_capacity(int ctlr, int logvol, int withirq, - sector_t *total_size, unsigned int *block_size); -static void cciss_read_capacity_16(int ctlr, int logvol, int withirq, - sector_t *total_size, unsigned int *block_size); -static void cciss_geometry_inquiry(int ctlr, int logvol, int withirq, - sector_t total_size, unsigned int block_size, - InquiryData_struct *inq_buff, +static void cciss_read_capacity(int ctlr, int logvol, sector_t *total_size, + unsigned int *block_size); +static void cciss_read_capacity_16(int ctlr, int logvol, sector_t *total_size, + unsigned int *block_size); +static void cciss_geometry_inquiry(int ctlr, int logvol, sector_t total_size, + unsigned int block_size, InquiryData_struct *inq_buff, drive_info_struct *drv); static void __devinit cciss_interrupt_mode(ctlr_info_t *, struct pci_dev *, __u32); @@ -187,8 +186,8 @@ static int process_sendcmd_error(ctlr_info_t *h, CommandList_struct *c); static void fail_all_cmds(unsigned long ctlr); static void cciss_shutdown(struct pci_dev *); static int scan_thread(void *data); -static void cciss_get_uid(int ctlr, int logvol, int withirq, - unsigned char *uid, int buflen); +static void cciss_get_uid(int ctlr, int logvol, unsigned char *uid, + int buflen); static int check_for_unit_attention(ctlr_info_t *h, CommandList_struct *c); #ifdef CONFIG_PROC_FS @@ -999,7 +998,7 @@ static void cciss_sysfs_stat_inquiry(int ctlr, int logvol, printk(KERN_WARNING "cciss: inquiry for VPD page 0 failed\n"); } - cciss_get_uid(ctlr, logvol, 1, drv->uid, sizeof(drv->uid)); + cciss_get_uid(ctlr, logvol, drv->uid, sizeof(drv->uid)); err: drv->vendor[8] = '\0'; @@ -1670,8 +1669,8 @@ static void cciss_softirq_done(struct request *rq) * via the inquiry page 0. Model, vendor, and rev are set to empty strings if * they cannot be read. */ -static void cciss_get_device_descr(int ctlr, int logvol, int withirq, - char *vendor, char *model, char *rev) +static void cciss_get_device_descr(int ctlr, int logvol, char *vendor, + char *model, char *rev) { int rc; InquiryData_struct *inq_buf; @@ -1686,11 +1685,7 @@ static void cciss_get_device_descr(int ctlr, int logvol, int withirq, return; log_unit_to_scsi3addr(hba[ctlr], scsi3addr, logvol); - if (withirq) - rc = sendcmd_withirq(CISS_INQUIRY, ctlr, - inq_buf, sizeof(*inq_buf), 0, scsi3addr, TYPE_CMD); - else - rc = sendcmd(CISS_INQUIRY, ctlr, inq_buf, + rc = sendcmd_withirq(CISS_INQUIRY, ctlr, inq_buf, sizeof(*inq_buf), 0, scsi3addr, TYPE_CMD); if (rc == IO_OK) { memcpy(vendor, &inq_buf->data_byte[8], VENDOR_LEN); @@ -1710,8 +1705,8 @@ static void cciss_get_device_descr(int ctlr, int logvol, int withirq, * id cannot be had, for whatever reason, 16 bytes of 0xff * are returned instead. */ -static void cciss_get_uid(int ctlr, int logvol, int withirq, - unsigned char *uid, int buflen) +static void cciss_get_uid(int ctlr, int logvol, + unsigned char *uid, int buflen) { #define PAGE_83_INQ_BYTES 64 int rc; @@ -1726,12 +1721,8 @@ static void cciss_get_uid(int ctlr, int logvol, int withirq, return; memset(uid, 0, buflen); log_unit_to_scsi3addr(hba[ctlr], scsi3addr, logvol); - if (withirq) - rc = sendcmd_withirq(CISS_INQUIRY, ctlr, buf, - PAGE_83_INQ_BYTES, 0x83, scsi3addr, TYPE_CMD); - else - rc = sendcmd(CISS_INQUIRY, ctlr, buf, - PAGE_83_INQ_BYTES, 0x83, scsi3addr, TYPE_CMD); + rc = sendcmd_withirq(CISS_INQUIRY, ctlr, buf, + PAGE_83_INQ_BYTES, 0x83, scsi3addr, TYPE_CMD); if (rc == IO_OK) memcpy(uid, &buf[8], buflen); kfree(buf); @@ -1804,18 +1795,18 @@ static void cciss_update_drive_info(int ctlr, int drv_index, int first_time) /* testing to see if 16-byte CDBs are already being used */ if (h->cciss_read == CCISS_READ_16) { - cciss_read_capacity_16(h->ctlr, drv_index, 1, + cciss_read_capacity_16(h->ctlr, drv_index, &total_size, &block_size); } else { - cciss_read_capacity(ctlr, drv_index, 1, + cciss_read_capacity(ctlr, drv_index, &total_size, &block_size); /* if read_capacity returns all F's this volume is >2TB */ /* in size so we switch to 16-byte CDB's for all */ /* read/write ops */ if (total_size == 0xFFFFFFFFULL) { - cciss_read_capacity_16(ctlr, drv_index, 1, + cciss_read_capacity_16(ctlr, drv_index, &total_size, &block_size); h->cciss_read = CCISS_READ_16; h->cciss_write = CCISS_WRITE_16; @@ -1825,15 +1816,14 @@ static void cciss_update_drive_info(int ctlr, int drv_index, int first_time) } } - cciss_geometry_inquiry(ctlr, drv_index, 1, total_size, block_size, + cciss_geometry_inquiry(ctlr, drv_index, total_size, block_size, inq_buff, drvinfo); drvinfo->block_size = block_size; drvinfo->nr_blocks = total_size + 1; - cciss_get_device_descr(ctlr, drv_index, 1, drvinfo->vendor, + cciss_get_device_descr(ctlr, drv_index, drvinfo->vendor, drvinfo->model, drvinfo->rev); - cciss_get_uid(ctlr, drv_index, 1, drvinfo->uid, - sizeof(drvinfo->uid)); + cciss_get_uid(ctlr, drv_index, drvinfo->uid, sizeof(drvinfo->uid)); /* Is it the same disk we already know, and nothing's changed? */ if (h->drv[drv_index].raid_level != -1 && @@ -2552,8 +2542,7 @@ static int sendcmd_withirq(__u8 cmd, int ctlr, void *buff, size_t size, return return_status; } -static void cciss_geometry_inquiry(int ctlr, int logvol, - int withirq, sector_t total_size, +static void cciss_geometry_inquiry(int ctlr, int logvol, sector_t total_size, unsigned int block_size, InquiryData_struct *inq_buff, drive_info_struct *drv) @@ -2564,12 +2553,8 @@ static void cciss_geometry_inquiry(int ctlr, int logvol, memset(inq_buff, 0, sizeof(InquiryData_struct)); log_unit_to_scsi3addr(hba[ctlr], scsi3addr, logvol); - if (withirq) - return_code = sendcmd_withirq(CISS_INQUIRY, ctlr, - inq_buff, sizeof(*inq_buff), 0xC1, scsi3addr, TYPE_CMD); - else - return_code = sendcmd(CISS_INQUIRY, ctlr, inq_buff, - sizeof(*inq_buff), 0xC1, scsi3addr, TYPE_CMD); + return_code = sendcmd_withirq(CISS_INQUIRY, ctlr, + inq_buff, sizeof(*inq_buff), 0xC1, scsi3addr, TYPE_CMD); if (return_code == IO_OK) { if (inq_buff->data_byte[8] == 0xFF) { printk(KERN_WARNING @@ -2602,7 +2587,7 @@ static void cciss_geometry_inquiry(int ctlr, int logvol, } static void -cciss_read_capacity(int ctlr, int logvol, int withirq, sector_t *total_size, +cciss_read_capacity(int ctlr, int logvol, sector_t *total_size, unsigned int *block_size) { ReadCapdata_struct *buf; @@ -2616,14 +2601,9 @@ cciss_read_capacity(int ctlr, int logvol, int withirq, sector_t *total_size, } memset(buf, 0, sizeof(ReadCapdata_struct)); log_unit_to_scsi3addr(hba[ctlr], scsi3addr, logvol); - if (withirq) - return_code = sendcmd_withirq(CCISS_READ_CAPACITY, - ctlr, buf, sizeof(ReadCapdata_struct), - 0, scsi3addr, TYPE_CMD); - else - return_code = sendcmd(CCISS_READ_CAPACITY, - ctlr, buf, sizeof(ReadCapdata_struct), - 0, scsi3addr, TYPE_CMD); + return_code = sendcmd_withirq(CCISS_READ_CAPACITY, + ctlr, buf, sizeof(ReadCapdata_struct), + 0, scsi3addr, TYPE_CMD); if (return_code == IO_OK) { *total_size = be32_to_cpu(*(__u32 *) buf->total_size); *block_size = be32_to_cpu(*(__u32 *) buf->block_size); @@ -2637,7 +2617,8 @@ cciss_read_capacity(int ctlr, int logvol, int withirq, sector_t *total_size, } static void -cciss_read_capacity_16(int ctlr, int logvol, int withirq, sector_t *total_size, unsigned int *block_size) +cciss_read_capacity_16(int ctlr, int logvol, sector_t *total_size, + unsigned int *block_size) { ReadCapdata_struct_16 *buf; int return_code; @@ -2650,14 +2631,9 @@ cciss_read_capacity_16(int ctlr, int logvol, int withirq, sector_t *total_size, } memset(buf, 0, sizeof(ReadCapdata_struct_16)); log_unit_to_scsi3addr(hba[ctlr], scsi3addr, logvol); - if (withirq) - return_code = sendcmd_withirq(CCISS_READ_CAPACITY_16, - ctlr, buf, sizeof(ReadCapdata_struct_16), - 0, scsi3addr, TYPE_CMD); - else - return_code = sendcmd(CCISS_READ_CAPACITY_16, - ctlr, buf, sizeof(ReadCapdata_struct_16), - 0, scsi3addr, TYPE_CMD); + return_code = sendcmd_withirq(CCISS_READ_CAPACITY_16, + ctlr, buf, sizeof(ReadCapdata_struct_16), + 0, scsi3addr, TYPE_CMD); if (return_code == IO_OK) { *total_size = be64_to_cpu(*(__u64 *) buf->total_size); *block_size = be32_to_cpu(*(__u32 *) buf->block_size); @@ -2699,13 +2675,13 @@ static int cciss_revalidate(struct gendisk *disk) return 1; } if (h->cciss_read == CCISS_READ_10) { - cciss_read_capacity(h->ctlr, logvol, 1, + cciss_read_capacity(h->ctlr, logvol, &total_size, &block_size); } else { - cciss_read_capacity_16(h->ctlr, logvol, 1, + cciss_read_capacity_16(h->ctlr, logvol, &total_size, &block_size); } - cciss_geometry_inquiry(h->ctlr, logvol, 1, total_size, block_size, + cciss_geometry_inquiry(h->ctlr, logvol, total_size, block_size, inq_buff, drv); blk_queue_hardsect_size(drv->queue, drv->block_size); set_capacity(disk, drv->nr_blocks);