Loading drivers/block/cciss.c +13 −10 Original line number Diff line number Diff line Loading @@ -4108,6 +4108,18 @@ static inline bool CISS_signature_present(ctlr_info_t *h) return true; } /* Need to enable prefetch in the SCSI core for 6400 in x86 */ static inline void cciss_enable_scsi_prefetch(ctlr_info_t *h) { #ifdef CONFIG_X86 u32 prefetch; prefetch = readl(&(h->cfgtable->SCSI_Prefetch)); prefetch |= 0x100; writel(prefetch, &(h->cfgtable->SCSI_Prefetch)); #endif } static int __devinit cciss_pci_init(ctlr_info_t *c) { int prod_index, err; Loading Loading @@ -4169,16 +4181,7 @@ static int __devinit cciss_pci_init(ctlr_info_t *c) err = -ENODEV; goto err_out_free_res; } #ifdef CONFIG_X86 { /* Need to enable prefetch in the SCSI core for 6400 in x86 */ __u32 prefetch; prefetch = readl(&(c->cfgtable->SCSI_Prefetch)); prefetch |= 0x100; writel(prefetch, &(c->cfgtable->SCSI_Prefetch)); } #endif cciss_enable_scsi_prefetch(c); /* Disabling DMA prefetch and refetch for the P600. * An ASIC bug may result in accesses to invalid memory addresses. * We've disabled prefetch for some time now. Testing with XEN Loading Loading
drivers/block/cciss.c +13 −10 Original line number Diff line number Diff line Loading @@ -4108,6 +4108,18 @@ static inline bool CISS_signature_present(ctlr_info_t *h) return true; } /* Need to enable prefetch in the SCSI core for 6400 in x86 */ static inline void cciss_enable_scsi_prefetch(ctlr_info_t *h) { #ifdef CONFIG_X86 u32 prefetch; prefetch = readl(&(h->cfgtable->SCSI_Prefetch)); prefetch |= 0x100; writel(prefetch, &(h->cfgtable->SCSI_Prefetch)); #endif } static int __devinit cciss_pci_init(ctlr_info_t *c) { int prod_index, err; Loading Loading @@ -4169,16 +4181,7 @@ static int __devinit cciss_pci_init(ctlr_info_t *c) err = -ENODEV; goto err_out_free_res; } #ifdef CONFIG_X86 { /* Need to enable prefetch in the SCSI core for 6400 in x86 */ __u32 prefetch; prefetch = readl(&(c->cfgtable->SCSI_Prefetch)); prefetch |= 0x100; writel(prefetch, &(c->cfgtable->SCSI_Prefetch)); } #endif cciss_enable_scsi_prefetch(c); /* Disabling DMA prefetch and refetch for the P600. * An ASIC bug may result in accesses to invalid memory addresses. * We've disabled prefetch for some time now. Testing with XEN Loading