Bug 907280

Summary: SATA drives unavailable on Marvell 88SE9172 controller while IOMMU support is enabled
Product: [Fedora] Fedora Reporter: Máni Másson <mani>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED INSUFFICIENT_DATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 18CC: gansalmon, itamar, jonathan, kernel-maint, madhu.chinakonda, mani, pmb
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-24 18:56:02 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
lspci -vnvn output while IOMMU is enabled
none
dmesg output while IOMMU is enabled
none
dmidecode output
none
dmesg output while IOMMU is disabled (SATA controller working)
none
With IOMMU enabled, fails
none
With IOMMU disabled, works none

Description Máni Másson 2013-02-04 02:46:20 UTC
Created attachment 692583 [details]
lspci -vnvn output while IOMMU is enabled

Description of problem:
When booting 3.7.4-204.fc18.x86_64 (or older) kernel with intel_iommu=on and IOMMU support enabled in bios, drives attached to Marvell 88SE9172 SATA controller(s) are unavailable (no /dev entries). A seemingly abandoned bug report on ubuntu launchpad (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1005226) contains information on the exact same problem.
My motherboard is Gigabyte GA-X79-UD3 (BIOS version F11), which has three integrated 88SE9172 SATA controllers, the GA-990FX-UD5 in the ubuntu bugreport contains two. 

Version-Release number of selected component (if applicable):
Fedora 18 updated as of 130203
kernel: 3.7.4-204.fc18.x86_64
Gigabyte GA-X79-UD3 BIOS F11 (most recent)


How reproducible:
always (provided IOMMU is enabled and kernel flag intel_iommu=on is set)


Steps to Reproduce:
1. Enable IOMMU support in BIOS
2. Install Fedora 18 with default settings
3. Boot kernel 3.7.4-204.fc18.x86_64 with kernel flag intel_iommu=on (off by default)
  
Actual results:
SATA drives attached to controller(s) unavailable (no /dev entries)

Expected results:
SATA drives usable

Additional info:
Output from lspci -vnvn is attached (with iommu enabled), I don't know how to attach more relevant files (dmidecode/dmesg output?)

Relevant dmesg output for each SATA drive connected to 88SE9172 controller:
[    1.955028] ata7: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[    1.955394] ata7.00: failed to IDENTIFY (INIT_DEV_PARAMS failed, err_mask=0x80)

88SE9172 pci details:
05:00.0 SATA controller [0106]: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller [1b4b:9172] (rev 11) (prog-if 01 [AHCI 1.0])
06:00.0 SATA controller [0106]: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller [1b4b:9172] (rev 11) (prog-if 01 [AHCI 1.0])
07:00.0 SATA controller [0106]: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller [1b4b:9172] (rev 11) (prog-if 01 [AHCI 1.0])

Comment 1 Máni Másson 2013-02-04 02:48:31 UTC
Created attachment 692584 [details]
dmesg output while IOMMU is enabled

Comment 2 Máni Másson 2013-02-04 02:49:17 UTC
Created attachment 692585 [details]
dmidecode output

Comment 3 Máni Másson 2013-02-04 02:50:27 UTC
Created attachment 692586 [details]
dmesg output while IOMMU is disabled (SATA controller working)

Comment 4 Josh Boyer 2013-07-03 17:26:07 UTC
The intel IOMMU is fairly troublesome.  Are you still seeing this with the 3.9 kernel?

Comment 5 Marius Bjørnstad 2013-07-08 21:12:59 UTC
Same problem with the Highpoint Rocket 640L PCIe card: 
02:00.0 SATA controller: Marvell Technology Group Ltd. Device 9230 (rev 10) (prog-if 01 [AHCI 1.0])
This is on a RHEL clone, but I just want to add the PCI-ID in case the fix involves some kind of device-specific quirks: 1b4b:9230

Comment 6 Josh Boyer 2013-07-24 18:56:02 UTC
This bug is being closed with INSUFFICIENT_DATA as there has not been a response in 2 weeks. If you are still experiencing this issue, please reopen and attach the relevant data from the latest kernel you are running and any data that might have been requested previously.

Comment 7 Marius Bjørnstad 2013-11-03 10:38:16 UTC
The bug still appears on Fedora 20 Alpha. 

I'll include the kernel logs with and without IOMMU for the "Rocket" below. Note that this is *not* Fedora alpha, this is kernel 2.6.32-358.23.2.el6.x86_64 . The problem still appears on Fedora, but I can't get a proper output when booting from CD (the CD drive is on the Rocket card)

Comment 8 Marius Bjørnstad 2013-11-03 10:43:34 UTC
Created attachment 818731 [details]
With IOMMU enabled, fails

Comment 9 Marius Bjørnstad 2013-11-03 10:44:27 UTC
Created attachment 818733 [details]
With IOMMU disabled, works

Comment 10 Marius Bjørnstad 2013-11-03 10:46:41 UTC
According to this forum thread, http://forum.proxmox.com/threads/11810-PCI-Passthrough-Marvell-SATA-controllers-stopping-me?s=b58445242eca906b4f44e409796a4ddd , there is someone working on it (as of March 2013, anyway): https://lkml.org/lkml/2013/3/7/582. Hopefully this will be included in the RHEL kernels as well when ready.