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 tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi

Pull SCSI fix from James Bottomley:
"This is a bug fix for the pm80xx driver. It turns out that when the
new hardware support was added in 3.10 the IO command size was kept at
the old hard coded value. This means that the driver attaches to some
new cards and then simply hangs the system"

* tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
[SCSI] pm80xx: fix Adaptec 71605H hang

+4 -4
+2 -2
drivers/scsi/pm8001/pm8001_hwi.c
··· 221 pm8001_ha->main_cfg_tbl.pm8001_tbl.fatal_err_interrupt = 0x01; 222 for (i = 0; i < PM8001_MAX_INB_NUM; i++) { 223 pm8001_ha->inbnd_q_tbl[i].element_pri_size_cnt = 224 - PM8001_MPI_QUEUE | (64 << 16) | (0x00<<30); 225 pm8001_ha->inbnd_q_tbl[i].upper_base_addr = 226 pm8001_ha->memoryMap.region[IB + i].phys_addr_hi; 227 pm8001_ha->inbnd_q_tbl[i].lower_base_addr = ··· 247 } 248 for (i = 0; i < PM8001_MAX_OUTB_NUM; i++) { 249 pm8001_ha->outbnd_q_tbl[i].element_size_cnt = 250 - PM8001_MPI_QUEUE | (64 << 16) | (0x01<<30); 251 pm8001_ha->outbnd_q_tbl[i].upper_base_addr = 252 pm8001_ha->memoryMap.region[OB + i].phys_addr_hi; 253 pm8001_ha->outbnd_q_tbl[i].lower_base_addr =
··· 221 pm8001_ha->main_cfg_tbl.pm8001_tbl.fatal_err_interrupt = 0x01; 222 for (i = 0; i < PM8001_MAX_INB_NUM; i++) { 223 pm8001_ha->inbnd_q_tbl[i].element_pri_size_cnt = 224 + PM8001_MPI_QUEUE | (pm8001_ha->iomb_size << 16) | (0x00<<30); 225 pm8001_ha->inbnd_q_tbl[i].upper_base_addr = 226 pm8001_ha->memoryMap.region[IB + i].phys_addr_hi; 227 pm8001_ha->inbnd_q_tbl[i].lower_base_addr = ··· 247 } 248 for (i = 0; i < PM8001_MAX_OUTB_NUM; i++) { 249 pm8001_ha->outbnd_q_tbl[i].element_size_cnt = 250 + PM8001_MPI_QUEUE | (pm8001_ha->iomb_size << 16) | (0x01<<30); 251 pm8001_ha->outbnd_q_tbl[i].upper_base_addr = 252 pm8001_ha->memoryMap.region[OB + i].phys_addr_hi; 253 pm8001_ha->outbnd_q_tbl[i].lower_base_addr =
+2 -2
drivers/scsi/pm8001/pm80xx_hwi.c
··· 275 276 for (i = 0; i < PM8001_MAX_SPCV_INB_NUM; i++) { 277 pm8001_ha->inbnd_q_tbl[i].element_pri_size_cnt = 278 - PM8001_MPI_QUEUE | (64 << 16) | (0x00<<30); 279 pm8001_ha->inbnd_q_tbl[i].upper_base_addr = 280 pm8001_ha->memoryMap.region[IB + i].phys_addr_hi; 281 pm8001_ha->inbnd_q_tbl[i].lower_base_addr = ··· 301 } 302 for (i = 0; i < PM8001_MAX_SPCV_OUTB_NUM; i++) { 303 pm8001_ha->outbnd_q_tbl[i].element_size_cnt = 304 - PM8001_MPI_QUEUE | (64 << 16) | (0x01<<30); 305 pm8001_ha->outbnd_q_tbl[i].upper_base_addr = 306 pm8001_ha->memoryMap.region[OB + i].phys_addr_hi; 307 pm8001_ha->outbnd_q_tbl[i].lower_base_addr =
··· 275 276 for (i = 0; i < PM8001_MAX_SPCV_INB_NUM; i++) { 277 pm8001_ha->inbnd_q_tbl[i].element_pri_size_cnt = 278 + PM8001_MPI_QUEUE | (pm8001_ha->iomb_size << 16) | (0x00<<30); 279 pm8001_ha->inbnd_q_tbl[i].upper_base_addr = 280 pm8001_ha->memoryMap.region[IB + i].phys_addr_hi; 281 pm8001_ha->inbnd_q_tbl[i].lower_base_addr = ··· 301 } 302 for (i = 0; i < PM8001_MAX_SPCV_OUTB_NUM; i++) { 303 pm8001_ha->outbnd_q_tbl[i].element_size_cnt = 304 + PM8001_MPI_QUEUE | (pm8001_ha->iomb_size << 16) | (0x01<<30); 305 pm8001_ha->outbnd_q_tbl[i].upper_base_addr = 306 pm8001_ha->memoryMap.region[OB + i].phys_addr_hi; 307 pm8001_ha->outbnd_q_tbl[i].lower_base_addr =