You are not logged in.

#1 2014-08-02 23:08:51

Swiggles
Member
Registered: 2014-08-02
Posts: 266

Intel IOMMU not working for Marvell SSD Controller

Hello everyone,
I already searched for my issue and I can't find any solution.

My problem is that as soon as I enable "intel_iommu=on" the system won't boot, because I'm getting DMAR errors:

dmar: DRHD: handling fault status reg 2
dmar: DMAR:[DMA Write] Request device [02:00.1] fault addr fffe0000
DMAR:[fault reason 02] Present bit in context entry is clear

(typed from a screenshot, because there are no other logs)

This repeats 7 times with alternating "...reg 2" and "...reg 3". After that I'm dropped to the recovery shell, because it can't find the root device (/dev/sdd2).

Relevant HW overview:
Intel i7-4970
ASRock Z97 Extreme 6
Plextor M6e 256GB (PX-G256M6E) (/dev/sdd)

lspci -nnv:

00:00.0 Host bridge [0600]: Intel Corporation 4th Gen Core Processor DRAM Controller [8086:0c00] (rev 06)
	Subsystem: ASRock Incorporation Device [1849:0c00]
	Flags: bus master, fast devsel, latency 0
	Capabilities: [e0] Vendor Specific Information: Len=0c <?>
	Kernel driver in use: hsw_uncore

00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller [8086:0c01] (rev 06) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
	I/O behind bridge: 0000e000-0000efff
	Memory behind bridge: ee000000-ef0fffff
	Prefetchable memory behind bridge: 00000000e0000000-00000000e9ffffff
	Capabilities: [88] Subsystem: ASRock Incorporation Device [1849:0c01]
	Capabilities: [80] Power Management version 3
	Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [a0] Express Root Port (Slot+), MSI 00
	Capabilities: [100] Virtual Channel
	Capabilities: [140] Root Complex Link
	Capabilities: [d94] #19
	Kernel driver in use: pcieport
	Kernel modules: shpchp

00:01.2 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x4 Controller [8086:0c09] (rev 06) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
	I/O behind bridge: 0000d000-0000dfff
	Memory behind bridge: efc00000-efcfffff
	Capabilities: [88] Subsystem: ASRock Incorporation Device [1849:0c09]
	Capabilities: [80] Power Management version 3
	Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [a0] Express Root Port (Slot+), MSI 00
	Capabilities: [100] Virtual Channel
	Capabilities: [140] Root Complex Link
	Capabilities: [d94] #19
	Kernel driver in use: pcieport
	Kernel modules: shpchp

00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller [8086:0412] (rev 06) (prog-if 00 [VGA controller])
	Subsystem: ASRock Incorporation Device [1849:0412]
	Flags: bus master, fast devsel, latency 0, IRQ 67
	Memory at ef400000 (64-bit, non-prefetchable) [size=4M]
	Memory at d0000000 (64-bit, prefetchable) [size=256M]
	I/O ports at f000 [size=64]
	Expansion ROM at <unassigned> [disabled]
	Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [d0] Power Management version 2
	Capabilities: [a4] PCI Advanced Features
	Kernel driver in use: i915
	Kernel modules: i915

00:03.0 Audio device [0403]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller [8086:0c0c] (rev 06)
	Subsystem: ASRock Incorporation Device [1849:0c0c]
	Flags: bus master, fast devsel, latency 0, IRQ 68
	Memory at efd34000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 2
	Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

00:14.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB xHCI Controller [8086:8cb1] (prog-if 30 [XHCI])
	Subsystem: ASRock Incorporation Device [1849:8cb1]
	Flags: bus master, medium devsel, latency 0, IRQ 49
	Memory at efd20000 (64-bit, non-prefetchable) [size=64K]
	Capabilities: [70] Power Management version 2
	Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit+
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_hcd

00:16.0 Communication controller [0780]: Intel Corporation 9 Series Chipset Family ME Interface #1 [8086:8cba]
	Subsystem: ASRock Incorporation Device [1849:8cba]
	Flags: bus master, fast devsel, latency 0, IRQ 62
	Memory at efd3e000 (64-bit, non-prefetchable) [size=16]
	Capabilities: [50] Power Management version 3
	Capabilities: [8c] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Kernel driver in use: mei_me
	Kernel modules: mei_me

00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection (2) I218-V [8086:15a1]
	Subsystem: ASRock Incorporation Device [1849:15a1]
	Flags: bus master, fast devsel, latency 0, IRQ 65
	Memory at efd00000 (32-bit, non-prefetchable) [size=128K]
	Memory at efd3c000 (32-bit, non-prefetchable) [size=4K]
	I/O ports at f080 [disabled] [size=32]
	Capabilities: [c8] Power Management version 2
	Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [e0] PCI Advanced Features
	Kernel driver in use: e1000e
	Kernel modules: e1000e

00:1a.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB EHCI Controller #2 [8086:8cad] (prog-if 20 [EHCI])
	Subsystem: ASRock Incorporation Device [1849:8cad]
	Flags: bus master, medium devsel, latency 0, IRQ 16
	Memory at efd3b000 (32-bit, non-prefetchable) [size=1K]
	Capabilities: [50] Power Management version 2
	Capabilities: [58] Debug port: BAR=1 offset=00a0
	Capabilities: [98] PCI Advanced Features
	Kernel driver in use: ehci-pci
	Kernel modules: ehci_pci

00:1b.0 Audio device [0403]: Intel Corporation 9 Series Chipset Family HD Audio Controller [8086:8ca0]
	Subsystem: ASRock Incorporation Device [1849:1151]
	Flags: bus master, fast devsel, latency 0, IRQ 64
	Memory at efd30000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 2
	Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
	Capabilities: [100] Virtual Channel
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

00:1c.0 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 1 [8086:8c90] (rev d0) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
	Capabilities: [40] Express Root Port (Slot-), MSI 00
	Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
	Capabilities: [90] Subsystem: ASRock Incorporation Device [1849:8c90]
	Capabilities: [a0] Power Management version 3
	Kernel driver in use: pcieport
	Kernel modules: shpchp

00:1c.2 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 3 [8086:8c94] (rev d0) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
	I/O behind bridge: 0000c000-0000cfff
	Memory behind bridge: efb00000-efbfffff
	Prefetchable memory behind bridge: 00000000ea100000-00000000ea1fffff
	Capabilities: [40] Express Root Port (Slot+), MSI 00
	Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
	Capabilities: [90] Subsystem: ASRock Incorporation Device [1849:8c94]
	Capabilities: [a0] Power Management version 3
	Kernel driver in use: pcieport
	Kernel modules: shpchp

00:1c.3 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 4 [8086:8c96] (rev d0) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=05, subordinate=0a, sec-latency=0
	I/O behind bridge: 0000a000-0000bfff
	Memory behind bridge: ef800000-ef9fffff
	Capabilities: [40] Express Root Port (Slot+), MSI 00
	Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
	Capabilities: [90] Subsystem: ASRock Incorporation Device [1849:8c96]
	Capabilities: [a0] Power Management version 3
	Kernel driver in use: pcieport
	Kernel modules: shpchp

00:1c.6 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI Express Root Port 7 [8086:8c9c] (rev d0) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=0b, subordinate=0b, sec-latency=0
	Memory behind bridge: efa00000-efafffff
	Capabilities: [40] Express Root Port (Slot+), MSI 00
	Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
	Capabilities: [90] Subsystem: ASRock Incorporation Device [1849:8c9c]
	Capabilities: [a0] Power Management version 3
	Kernel driver in use: pcieport
	Kernel modules: shpchp

00:1d.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB EHCI Controller #1 [8086:8ca6] (prog-if 20 [EHCI])
	Subsystem: ASRock Incorporation Device [1849:8ca6]
	Flags: bus master, medium devsel, latency 0, IRQ 23
	Memory at efd3a000 (32-bit, non-prefetchable) [size=1K]
	Capabilities: [50] Power Management version 2
	Capabilities: [58] Debug port: BAR=1 offset=00a0
	Capabilities: [98] PCI Advanced Features
	Kernel driver in use: ehci-pci
	Kernel modules: ehci_pci

00:1f.0 ISA bridge [0601]: Intel Corporation 9 Series Chipset Family Z97 LPC Controller [8086:8cc4]
	Subsystem: ASRock Incorporation Device [1849:8cc4]
	Flags: bus master, medium devsel, latency 0
	Capabilities: [e0] Vendor Specific Information: Len=0c <?>

00:1f.2 SATA controller [0106]: Intel Corporation 9 Series Chipset Family SATA Controller [AHCI Mode] [8086:8c82] (prog-if 01 [AHCI 1.0])
	Subsystem: ASRock Incorporation Device [1849:8c82]
	Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 58
	I/O ports at f0d0 [size=8]
	I/O ports at f0c0 [size=4]
	I/O ports at f0b0 [size=8]
	I/O ports at f0a0 [size=4]
	I/O ports at f060 [size=32]
	Memory at efd39000 (32-bit, non-prefetchable) [size=2K]
	Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [70] Power Management version 3
	Capabilities: [a8] SATA HBA v1.0
	Kernel driver in use: ahci
	Kernel modules: ahci

00:1f.3 SMBus [0c05]: Intel Corporation 9 Series Chipset Family SMBus Controller [8086:8ca2]
	Subsystem: ASRock Incorporation Device [1849:8ca2]
	Flags: medium devsel, IRQ 5
	Memory at efd38000 (64-bit, non-prefetchable) [size=256]
	I/O ports at f040 [size=32]

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK104 [GeForce GTX 770] [10de:1184] (rev a1) (prog-if 00 [VGA controller])
	Subsystem: ASUSTeK Computer Inc. Device [1043:8465]
	Flags: bus master, fast devsel, latency 0, IRQ 16
	Memory at ee000000 (32-bit, non-prefetchable) [size=16M]
	Memory at e0000000 (64-bit, prefetchable) [size=128M]
	Memory at e8000000 (64-bit, prefetchable) [size=32M]
	I/O ports at e000 [size=128]
	Expansion ROM at ef000000 [disabled] [size=512K]
	Capabilities: [60] Power Management version 3
	Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [78] Express Endpoint, MSI 00
	Capabilities: [b4] Vendor Specific Information: Len=14 <?>
	Capabilities: [100] Virtual Channel
	Capabilities: [128] Power Budgeting <?>
	Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
	Capabilities: [900] #19
	Kernel modules: nouveau

01:00.1 Audio device [0403]: NVIDIA Corporation GK104 HDMI Audio Controller [10de:0e0a] (rev a1)
	Subsystem: ASUSTeK Computer Inc. Device [1043:8465]
	Flags: fast devsel, IRQ 17
	Memory at ef080000 (32-bit, non-prefetchable) [size=16K]
	Capabilities: [60] Power Management version 3
	Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [78] Express Endpoint, MSI 00
	Kernel modules: snd_hda_intel

02:00.0 SATA controller [0106]: Device [1c28:0122] (rev 14) (prog-if 01 [AHCI 1.0])
	Subsystem: Marvell Technology Group Ltd. Device [1b4b:9183]
	Flags: bus master, fast devsel, latency 0, IRQ 59
	I/O ports at d050 [size=8]
	I/O ports at d040 [size=4]
	I/O ports at d030 [size=8]
	I/O ports at d020 [size=4]
	I/O ports at d000 [size=32]
	Memory at efc20000 (32-bit, non-prefetchable) [size=512]
	Expansion ROM at efc00000 [disabled] [size=128K]
	Capabilities: [40] Power Management version 3
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [70] Express Legacy Endpoint, MSI 00
	Capabilities: [100] Advanced Error Reporting
	Kernel driver in use: ahci
	Kernel modules: ahci

04:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 11)
	Subsystem: ASRock Incorporation Motherboard (one of many) [1849:8168]
	Flags: bus master, fast devsel, latency 0, IRQ 63
	I/O ports at c000 [size=256]
	Memory at efb00000 (64-bit, non-prefetchable) [size=4K]
	Memory at ea100000 (64-bit, prefetchable) [size=16K]
	Capabilities: [40] Power Management version 3
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [70] Express Endpoint, MSI 01
	Capabilities: [b0] MSI-X: Enable- Count=4 Masked-
	Capabilities: [d0] Vital Product Data
	Capabilities: [100] Advanced Error Reporting
	Capabilities: [140] Virtual Channel
	Capabilities: [160] Device Serial Number 01-00-00-00-68-4c-e0-00
	Capabilities: [170] Latency Tolerance Reporting
	Kernel driver in use: r8169
	Kernel modules: r8169

05:00.0 PCI bridge [0604]: ASMedia Technology Inc. Device [1b21:1184] (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=05, secondary=06, subordinate=0a, sec-latency=0
	I/O behind bridge: 0000a000-0000bfff
	Memory behind bridge: ef800000-ef9fffff
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Upstream Port, MSI 00
	Capabilities: [c0] Subsystem: ASRock Incorporation Device [1849:1184]
	Capabilities: [100] Virtual Channel
	Capabilities: [200] Advanced Error Reporting
	Capabilities: [300] Vendor Specific Information: ID=0000 Rev=0 Len=c00 <?>
	Kernel driver in use: pcieport
	Kernel modules: shpchp

06:01.0 PCI bridge [0604]: ASMedia Technology Inc. Device [1b21:1184] (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=06, secondary=07, subordinate=07, sec-latency=0
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Downstream Port (Slot+), MSI 00
	Capabilities: [c0] Subsystem: ASRock Incorporation Device [1849:1184]
	Capabilities: [100] Virtual Channel
	Capabilities: [200] Advanced Error Reporting
	Kernel driver in use: pcieport
	Kernel modules: shpchp

06:03.0 PCI bridge [0604]: ASMedia Technology Inc. Device [1b21:1184] (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=06, secondary=08, subordinate=08, sec-latency=0
	I/O behind bridge: 0000b000-0000bfff
	Memory behind bridge: ef900000-ef9fffff
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Downstream Port (Slot+), MSI 00
	Capabilities: [c0] Subsystem: ASRock Incorporation Device [1849:1184]
	Capabilities: [100] Virtual Channel
	Capabilities: [200] Advanced Error Reporting
	Kernel driver in use: pcieport
	Kernel modules: shpchp

06:05.0 PCI bridge [0604]: ASMedia Technology Inc. Device [1b21:1184] (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=06, secondary=09, subordinate=09, sec-latency=0
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Downstream Port (Slot+), MSI 00
	Capabilities: [c0] Subsystem: ASRock Incorporation Device [1849:1184]
	Capabilities: [100] Virtual Channel
	Capabilities: [200] Advanced Error Reporting
	Kernel driver in use: pcieport
	Kernel modules: shpchp

06:07.0 PCI bridge [0604]: ASMedia Technology Inc. Device [1b21:1184] (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=06, secondary=0a, subordinate=0a, sec-latency=0
	I/O behind bridge: 0000a000-0000afff
	Memory behind bridge: ef800000-ef8fffff
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Downstream Port (Slot+), MSI 00
	Capabilities: [c0] Subsystem: ASRock Incorporation Device [1849:1184]
	Capabilities: [100] Virtual Channel
	Capabilities: [200] Advanced Error Reporting
	Kernel driver in use: pcieport
	Kernel modules: shpchp

08:00.0 SATA controller [0106]: ASMedia Technology Inc. ASM1062 Serial ATA Controller [1b21:0612] (rev 02) (prog-if 01 [AHCI 1.0])
	Subsystem: ASRock Incorporation Motherboard [1849:0612]
	Flags: bus master, fast devsel, latency 0, IRQ 60
	I/O ports at b050 [size=8]
	I/O ports at b040 [size=4]
	I/O ports at b030 [size=8]
	I/O ports at b020 [size=4]
	I/O ports at b000 [size=32]
	Memory at ef900000 (32-bit, non-prefetchable) [size=512]
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Legacy Endpoint, MSI 00
	Capabilities: [100] Virtual Channel
	Kernel driver in use: ahci
	Kernel modules: ahci

0a:00.0 SATA controller [0106]: ASMedia Technology Inc. ASM1062 Serial ATA Controller [1b21:0612] (rev 02) (prog-if 01 [AHCI 1.0])
	Subsystem: ASRock Incorporation Motherboard [1849:0612]
	Flags: bus master, fast devsel, latency 0, IRQ 61
	I/O ports at a050 [size=8]
	I/O ports at a040 [size=4]
	I/O ports at a030 [size=8]
	I/O ports at a020 [size=4]
	I/O ports at a000 [size=32]
	Memory at ef800000 (32-bit, non-prefetchable) [size=512]
	Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Legacy Endpoint, MSI 00
	Capabilities: [100] Virtual Channel
	Kernel driver in use: ahci
	Kernel modules: ahci

0b:00.0 USB controller [0c03]: ASMedia Technology Inc. Device [1b21:1142] (prog-if 30 [XHCI])
	Subsystem: ASRock Incorporation Device [1849:1142]
	Flags: bus master, fast devsel, latency 0, IRQ 18
	Memory at efa00000 (64-bit, non-prefetchable) [size=32K]
	Capabilities: [50] MSI: Enable- Count=1/8 Maskable- 64bit+
	Capabilities: [68] MSI-X: Enable+ Count=8 Masked-
	Capabilities: [78] Power Management version 3
	Capabilities: [80] Express Legacy Endpoint, MSI 00
	Capabilities: [100] Virtual Channel
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_hcd

CMDLINE:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream i915.enable_hd_vgaarb=1"

uname -a:

Linux appex 3.15.7-1-qemu #1 SMP PREEMPT Sat Aug 2 23:02:37 CEST 2014 x86_64 GNU/Linux

This is the mainline kernel with acs and vga arbiter patches.
Othere related and tested patches were dma-alias and exclude devices using rmrr.

I tried the same setup on another drive and it boots up, though the same errors are displayed. The SSD remains unusable until I reboot without IOMMU.

I don't want to passthrough the device to any guest. So possible solutions are skipping the device for DMAR (if that is even possible) or somehow fix the mapping.
Please help me, I don't know what else I can do to fix this.

Offline

#2 2014-08-03 11:07:10

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: Intel IOMMU not working for Marvell SSD Controller

i suggest you remove 'quiet'  from the grub commandline, you should get additional messages that way that may help to troubleshoot.

For clarity, why do you need to use intel_iommu=on as a boot parameter ?
Can you enable IOMMU through bios/uefi and does that make a difference ?


Edit

Linux appex 3.15.7-1-qemu #1 SMP PREEMPT Sat Aug 2 23:02:37 CEST 2014 x86_64 GNU/Linux

Are you booting into a qemu virtual machine ?
If so, what OS are you running on the host ?

Last edited by Lone_Wolf (2014-08-03 11:08:57)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2014-08-03 11:37:23

Swiggles
Member
Registered: 2014-08-02
Posts: 266

Re: Intel IOMMU not working for Marvell SSD Controller

The quiet cmdline doesn't change much. Anyway, here is a picture of all output: Click
I have VT-d enabled in uefi and I need to set intel_iommu=on to actually use it, else it can't create the IOMMU groups (/sys/kernel/iommu_groups/) I need for passthrough of devices. Of course the system boots if I disable VT-d in uefi, because the kernel will ignore the related commands.

The kernel is running on the host machine, it is named that way so I know for what I'm using it. All I'm doing is pressing the power button: Power on --> POST --> GRUB --> "Loading initramfs" --> Error (see screenshot)

Edit: As indicated in my first post I already tested installing everything on another drive and it can successfully use passthrough. The same errors appear, but it will continue booting, because root wasn't on that drive while testing. The Plextor SSD remains unusable as long as IOMMU is activated. Of course installing on another drive is no solution for my problem, because I want to use that SSD in my setup.

Edit2: Here are the hooks:

HOOKS="base udev autodetect modconf block lvm2 filesystems keyboard fsck"

Edit3: Some more information (booted without any additional cmdline options).

udevadm info -q all -a /dev/sdd

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:01.2/0000:02:00.0/ata7/host6/target6:0:0/6:0:0:0/block/sdd':
    KERNEL=="sdd"
    SUBSYSTEM=="block"
    DRIVER==""
    ATTR{ro}=="0"
    ATTR{size}=="500118192"
    ATTR{stat}=="   15580     3236   532703     3870     1371     1243    88897     7830        0     1720    11693"
    ATTR{range}=="16"
    ATTR{discard_alignment}=="0"
    ATTR{events}==""
    ATTR{ext_range}=="256"
    ATTR{events_poll_msecs}=="-1"
    ATTR{alignment_offset}=="0"
    ATTR{inflight}=="       0        0"
    ATTR{removable}=="0"
    ATTR{capability}=="50"
    ATTR{events_async}==""

  looking at parent device '/devices/pci0000:00/0000:00:01.2/0000:02:00.0/ata7/host6/target6:0:0/6:0:0:0':
    KERNELS=="6:0:0:0"
    SUBSYSTEMS=="scsi"
    DRIVERS=="sd"
    ATTRS{rev}=="1.03"
    ATTRS{type}=="0"
    ATTRS{scsi_level}=="6"
    ATTRS{model}=="PLEXTOR PX-G256M"
    ATTRS{state}=="running"
    ATTRS{queue_type}=="simple"
    ATTRS{iodone_cnt}=="0x42f9"
    ATTRS{iorequest_cnt}=="0x431d"
    ATTRS{queue_ramp_up_period}=="120000"
    ATTRS{device_busy}=="0"
    ATTRS{evt_capacity_change_reported}=="0"
    ATTRS{timeout}=="30"
    ATTRS{evt_media_change}=="0"
    ATTRS{ioerr_cnt}=="0x8"
    ATTRS{queue_depth}=="31"
    ATTRS{vendor}=="ATA     "
    ATTRS{evt_soft_threshold_reached}=="0"
    ATTRS{device_blocked}=="0"
    ATTRS{evt_mode_parameter_change_reported}=="0"
    ATTRS{evt_lun_change_reported}=="0"
    ATTRS{evt_inquiry_change_reported}=="0"
    ATTRS{iocounterbits}=="32"
    ATTRS{vpd_pg80}==""
    ATTRS{vpd_pg83}==""
    ATTRS{eh_timeout}=="10"

  looking at parent device '/devices/pci0000:00/0000:00:01.2/0000:02:00.0/ata7/host6/target6:0:0':
    KERNELS=="target6:0:0"
    SUBSYSTEMS=="scsi"
    DRIVERS==""

  looking at parent device '/devices/pci0000:00/0000:00:01.2/0000:02:00.0/ata7/host6':
    KERNELS=="host6"
    SUBSYSTEMS=="scsi"
    DRIVERS==""

  looking at parent device '/devices/pci0000:00/0000:00:01.2/0000:02:00.0/ata7':
    KERNELS=="ata7"
    SUBSYSTEMS==""
    DRIVERS==""

  looking at parent device '/devices/pci0000:00/0000:00:01.2/0000:02:00.0':
    KERNELS=="0000:02:00.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="ahci"
    ATTRS{irq}=="49"
    ATTRS{subsystem_vendor}=="0x1b4b"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x010601"
    ATTRS{enabled}=="1"
    ATTRS{consistent_dma_mask_bits}=="64"
    ATTRS{dma_mask_bits}=="64"
    ATTRS{local_cpus}=="00000000,00000000,00000000,000000ff"
    ATTRS{device}=="0x0122"
    ATTRS{msi_bus}==""
    ATTRS{local_cpulist}=="0-7"
    ATTRS{vendor}=="0x1c28"
    ATTRS{resource1}==""
    ATTRS{resource3}==""
    ATTRS{subsystem_device}=="0x9183"
    ATTRS{numa_node}=="-1"
    ATTRS{d3cold_allowed}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:01.2':
    KERNELS=="0000:00:01.2"
    SUBSYSTEMS=="pci"
    DRIVERS=="pcieport"
    ATTRS{irq}=="41"
    ATTRS{subsystem_vendor}=="0x1849"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x060400"
    ATTRS{enabled}=="1"
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{dma_mask_bits}=="32"
    ATTRS{local_cpus}=="00000000,00000000,00000000,000000ff"
    ATTRS{device}=="0x0c09"
    ATTRS{msi_bus}=="1"
    ATTRS{local_cpulist}=="0-7"
    ATTRS{vendor}=="0x8086"
    ATTRS{subsystem_device}=="0x0c09"
    ATTRS{numa_node}=="-1"
    ATTRS{d3cold_allowed}=="0"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""

Last edited by Swiggles (2014-08-03 12:14:23)

Offline

#4 2014-08-03 18:15:07

Swiggles
Member
Registered: 2014-08-02
Posts: 266

Re: Intel IOMMU not working for Marvell SSD Controller

I've come to the decision that I will send the drive back. I found no solution after trying for half a week (before posting here). Also trying to write my own patches on top of other Marvell controller fixes didn't really help. I managed nothing more than accidentally accessing the drives own uefi loader in ro mode.

Sorry if anyone else is finding this thread in the future with a similar problem, but my only advice is stay away from Marvell RAID/SSD controllers at all cost if you ever plan to use IOMMU!

Offline

#5 2014-10-20 17:55:21

edk4971
Member
Registered: 2014-10-20
Posts: 1

Re: Intel IOMMU not working for Marvell SSD Controller

Swiggles,
It's not a solution, but here's a little more information. I'm having the same problem, it seems the Marvell controllers embedded in the M6e boards aren't compatible with iommu. I'm using one as a cache SSD to speedup my system. I can still boot (off the slower hdd), but when I turn on iommu, the SSD disappears. Here's the kernel bug:

https://bugzilla.kernel.org/show_bug.cgi?id=42679

Sorry to resurrect an old post.

Offline

Board footer

Powered by FluxBB