[SCSI] lpfc 8.3.42: Fixed failure to allocate SCSI buffer on PPC64 platform for SLI4 devices

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>

authored by James Smart and committed by James Bottomley 092cb034 acbd8616

+6 -3
+6 -3
drivers/scsi/lpfc/lpfc_scsi.c
··· 1000 1000 } 1001 1001 memset(psb->data, 0, phba->cfg_sg_dma_buf_size); 1002 1002 1003 - /* Page alignment is CRITICAL, double check to be sure */ 1004 - if (((unsigned long)(psb->data) & 1005 - (unsigned long)(SLI4_PAGE_SIZE - 1)) != 0) { 1003 + /* 1004 + * 4K Page alignment is CRITICAL to BlockGuard, double check 1005 + * to be sure. 1006 + */ 1007 + if (phba->cfg_enable_bg && (((unsigned long)(psb->data) & 1008 + (unsigned long)(SLI4_PAGE_SIZE - 1)) != 0)) { 1006 1009 pci_pool_free(phba->lpfc_scsi_dma_buf_pool, 1007 1010 psb->data, psb->dma_handle); 1008 1011 kfree(psb);