Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
[SCSI] cxgb3i: fix connection error when vlan is enabled
[SCSI] FC transport: Locking fix for common-code FC pass-through patch
[SCSI] zalon: fix oops on attach failure
[SCSI] fnic: use DMA_BIT_MASK(nn) instead of deprecated DMA_nnBIT_MASK
[SCSI] fnic: remove redundant BUG_ONs and fix checks on unsigned
[SCSI] ibmvscsi: Fix module load hang

+20 -13
+4
drivers/scsi/cxgb3i/cxgb3i_iscsi.c
··· 13 13 14 14 #include <linux/inet.h> 15 15 #include <linux/crypto.h> 16 + #include <linux/if_vlan.h> 16 17 #include <net/dst.h> 17 18 #include <net/tcp.h> 18 19 #include <scsi/scsi_cmnd.h> ··· 184 183 { 185 184 struct cxgb3i_adapter *snic; 186 185 int i; 186 + 187 + if (ndev->priv_flags & IFF_802_1Q_VLAN) 188 + ndev = vlan_dev_real_dev(ndev); 187 189 188 190 read_lock(&cxgb3i_snic_rwlock); 189 191 list_for_each_entry(snic, &cxgb3i_snic_list, list_head) {
+4 -4
drivers/scsi/fnic/fnic_main.c
··· 473 473 * limitation for the device. Try 40-bit first, and 474 474 * fail to 32-bit. 475 475 */ 476 - err = pci_set_dma_mask(pdev, DMA_40BIT_MASK); 476 + err = pci_set_dma_mask(pdev, DMA_BIT_MASK(40)); 477 477 if (err) { 478 - err = pci_set_dma_mask(pdev, DMA_32BIT_MASK); 478 + err = pci_set_dma_mask(pdev, DMA_BIT_MASK(32)); 479 479 if (err) { 480 480 shost_printk(KERN_ERR, fnic->lport->host, 481 481 "No usable DMA configuration " 482 482 "aborting\n"); 483 483 goto err_out_release_regions; 484 484 } 485 - err = pci_set_consistent_dma_mask(pdev, DMA_32BIT_MASK); 485 + err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32)); 486 486 if (err) { 487 487 shost_printk(KERN_ERR, fnic->lport->host, 488 488 "Unable to obtain 32-bit DMA " ··· 490 490 goto err_out_release_regions; 491 491 } 492 492 } else { 493 - err = pci_set_consistent_dma_mask(pdev, DMA_40BIT_MASK); 493 + err = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(40)); 494 494 if (err) { 495 495 shost_printk(KERN_ERR, fnic->lport->host, 496 496 "Unable to obtain 40-bit DMA "
+2 -5
drivers/scsi/fnic/fnic_scsi.c
··· 245 245 struct vnic_wq_copy *wq, 246 246 struct fnic_io_req *io_req, 247 247 struct scsi_cmnd *sc, 248 - u32 sg_count) 248 + int sg_count) 249 249 { 250 250 struct scatterlist *sg; 251 251 struct fc_rport *rport = starget_to_rport(scsi_target(sc->device)); ··· 260 260 char msg[2]; 261 261 262 262 if (sg_count) { 263 - BUG_ON(sg_count < 0); 264 - BUG_ON(sg_count > FNIC_MAX_SG_DESC_CNT); 265 - 266 263 /* For each SGE, create a device desc entry */ 267 264 desc = io_req->sgl_list; 268 265 for_each_sg(scsi_sglist(sc), sg, sg_count, i) { ··· 341 344 struct fnic *fnic; 342 345 struct vnic_wq_copy *wq; 343 346 int ret; 344 - u32 sg_count; 347 + int sg_count; 345 348 unsigned long flags; 346 349 unsigned long ptr; 347 350
+6 -1
drivers/scsi/ibmvscsi/ibmvscsi.c
··· 1095 1095 MAX_INDIRECT_BUFS); 1096 1096 hostdata->host->sg_tablesize = MAX_INDIRECT_BUFS; 1097 1097 } 1098 + 1099 + if (hostdata->madapter_info.os_type == 3) { 1100 + enable_fast_fail(hostdata); 1101 + return; 1102 + } 1098 1103 } 1099 1104 1100 - enable_fast_fail(hostdata); 1105 + send_srp_login(hostdata); 1101 1106 } 1102 1107 1103 1108 /**
+3 -2
drivers/scsi/scsi_transport_fc.c
··· 3670 3670 fc_bsg_goose_queue(struct fc_rport *rport) 3671 3671 { 3672 3672 int flagset; 3673 + unsigned long flags; 3673 3674 3674 3675 if (!rport->rqst_q) 3675 3676 return; 3676 3677 3677 3678 get_device(&rport->dev); 3678 3679 3679 - spin_lock(rport->rqst_q->queue_lock); 3680 + spin_lock_irqsave(rport->rqst_q->queue_lock, flags); 3680 3681 flagset = test_bit(QUEUE_FLAG_REENTER, &rport->rqst_q->queue_flags) && 3681 3682 !test_bit(QUEUE_FLAG_REENTER, &rport->rqst_q->queue_flags); 3682 3683 if (flagset) ··· 3685 3684 __blk_run_queue(rport->rqst_q); 3686 3685 if (flagset) 3687 3686 queue_flag_clear(QUEUE_FLAG_REENTER, rport->rqst_q); 3688 - spin_unlock(rport->rqst_q->queue_lock); 3687 + spin_unlock_irqrestore(rport->rqst_q->queue_lock, flags); 3689 3688 3690 3689 put_device(&rport->dev); 3691 3690 }
+1 -1
drivers/scsi/zalon.c
··· 134 134 135 135 host = ncr_attach(&zalon7xx_template, unit, &device); 136 136 if (!host) 137 - goto fail; 137 + return -ENODEV; 138 138 139 139 if (request_irq(dev->irq, ncr53c8xx_intr, IRQF_SHARED, "zalon", host)) { 140 140 dev_printk(KERN_ERR, &dev->dev, "irq problem with %d, detaching\n ",