diff options
author | Arkadiusz Miśkiewicz | 2017-02-10 22:34:20 (GMT) |
---|---|---|
committer | Arkadiusz Miśkiewicz | 2017-02-10 22:34:20 (GMT) |
commit | a221fc0a61fb1e25f3d2fc092063da1a41e1bed8 (patch) | |
tree | ea6991816464ab07871f4a2342353a69b9e45574 /kernel-small_fixes.patch | |
parent | 80e83e0b62613eeadcf347dfa5c406e0b3eb2094 (diff) | |
download | kernel-a221fc0a61fb1e25f3d2fc092063da1a41e1bed8.zip kernel-a221fc0a61fb1e25f3d2fc092063da1a41e1bed8.tar.gz |
- up to 4.4.9; add aacraid: fix for AAC: Host adapter dead -1auto/th/kernel-rt-4.9.9-1auto/th/kernel-nopae-4.9.9-1auto/th/kernel-4.9.9-1
Diffstat (limited to 'kernel-small_fixes.patch')
-rw-r--r-- | kernel-small_fixes.patch | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/kernel-small_fixes.patch b/kernel-small_fixes.patch index d4b6034..64d193f 100644 --- a/kernel-small_fixes.patch +++ b/kernel-small_fixes.patch @@ -26,3 +26,47 @@ exit fi done +From 8af8e1c22f9994bb1849c01d66c24fe23f9bc9a0 Mon Sep 17 00:00:00 2001 +From: Dave Carroll <david.carroll@microsemi.com> +Date: Thu, 9 Feb 2017 11:04:47 -0700 +Subject: scsi: aacraid: Fix INTx/MSI-x issue with older controllers + +commit 78cbccd3bd68 ("aacraid: Fix for KDUMP driver hang") + +caused a problem on older controllers which do not support MSI-x (namely +ASR3405,ASR3805). This patch conditionalizes the previous patch to +controllers which support MSI-x + +Cc: <stable@vger.kernel.org> # v4.7+ +Fixes: 78cbccd3bd68 ("aacraid: Fix for KDUMP driver hang") +Reported-by: Arkadiusz Miskiewicz <a.miskiewicz@gmail.com> +Signed-off-by: Dave Carroll <david.carroll@microsemi.com> +Reviewed-by: Raghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com> +Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> +--- + drivers/scsi/aacraid/comminit.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/drivers/scsi/aacraid/comminit.c b/drivers/scsi/aacraid/comminit.c +index 4f56b10..5b48bed 100644 +--- a/drivers/scsi/aacraid/comminit.c ++++ b/drivers/scsi/aacraid/comminit.c +@@ -50,9 +50,13 @@ struct aac_common aac_config = { + + static inline int aac_is_msix_mode(struct aac_dev *dev) + { +- u32 status; ++ u32 status = 0; + +- status = src_readl(dev, MUnit.OMR); ++ if (dev->pdev->device == PMC_DEVICE_S6 || ++ dev->pdev->device == PMC_DEVICE_S7 || ++ dev->pdev->device == PMC_DEVICE_S8) { ++ status = src_readl(dev, MUnit.OMR); ++ } + return (status & AAC_INT_MODE_MSIX); + } + +-- +cgit v0.12 + |