From: "Paweł Żak" <pawel.zaq@gmail.com>
To: Andrew Morton <akpm@linux-foundation.org>,
Don Dutile <ddutile@redhat.com>
Cc: linux-ide@vger.kernel.org, iommu@lists.linux-foundation.org,
David Woodhouse <dwmw2@infradead.org>,
bugzilla-daemon@bugzilla.kernel.org
Subject: Re: [Bug 42679] New: DMA Read on Marvell 88SE9128 fails when Intel's IOMMU is on
Date: Mon, 30 Jan 2012 23:13:02 +0100 [thread overview]
Message-ID: <op.v8w3z0z0c3q55a@localhost> (raw)
In-Reply-To: <4F270E8C.2000406@redhat.com>
On Mon, 30 Jan 2012 22:41:32 +0100, Don Dutile <ddutile@redhat.com> wrote:
> On 01/30/2012 03:59 PM, Andrew Morton wrote:
>>
>> (switched to email. Please respond via emailed reply-to-all, not via
>> the
>> bugzilla web interface).
>>
>> On Sat, 28 Jan 2012 17:55:38 GMT
>> bugzilla-daemon@bugzilla.kernel.org wrote:
>>
>>> https://bugzilla.kernel.org/show_bug.cgi?id=42679
>>
>> I don't know if this is a SATA issue or intel-iommu. Could you guys
>> please take a look?
>>
>>> Summary: DMA Read on Marvell 88SE9128 fails when Intel's
>>> IOMMU
>>> is on
>>> Product: Memory Management
>>> Version: 2.5
>>> Platform: All
>>> OS/Version: Linux
>>> Tree: Mainline
>>> Status: NEW
>>> Severity: normal
>>> Priority: P1
>>> Component: Other
>>> AssignedTo: akpm@linux-foundation.org
>>> ReportedBy: pawel.zaq@gmail.com
>>> Regression: No
>>>
>>>
>>> Created an attachment (id=72217)
>>> --> (https://bugzilla.kernel.org/attachment.cgi?id=72217)
>>> Output of `dmesg' command
>>>
>>> I have a MSI Z68A-GD80 B3 motherboard and when I try to enable Intel's
>>> IOMMU
>>> (kernel booted with intel_iommu=on), integrated Marvell 88SE9128 SATA
>>> controller doesn't work.
>>>
>>> To reproduce:
>>> 1. Compile and prepare kernel with Intel IOMMU support enabled
>>> (CONFIG_INTEL_IOMMU=y).
>>> 2. Reboot the computer.
>>> 3. Enter BIOS and enable VT-d.
>>> 4. Boot the kernel with intel_iommu=on parameter.
>>>
>>> Right after boot, kernel reports the following errors (SATA controller
>>> is at
>>> 0b:00.0):
>>>
>>> [ 2.639774] DRHD: handling fault status reg 3
>>> [ 2.639782] DMAR:[DMA Read] Request device [0b:00.1] fault addr
>>> fff00000
>>> [ 2.639783] DMAR:[fault reason 02] Present bit in context entry is
>>> clear
>>>
>>> After a while these entries appear:
>>>
>>> [ 7.625837] ata14.00: qc timeout (cmd 0xa1)
>>> [ 7.628341] ata14.00: failed to IDENTIFY (I/O error, err_mask=0x4)
>>> [ 7.935483] ata14: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
>>> [ 17.908407] ata14.00: qc timeout (cmd 0xa1)
>>> [ 17.910935] ata14.00: failed to IDENTIFY (I/O error, err_mask=0x4)
>>> [ 17.912276] ata14: limiting SATA link speed to 1.5 Gbps
>>> [ 18.219077] ata14: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
>>> [ 48.134607] ata14.00: qc timeout (cmd 0xa1)
>>> [ 48.137508] ata14.00: failed to IDENTIFY (I/O error, err_mask=0x4)
>>> [ 48.444646] ata14: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
>>>
>>> When there is a disk connected to the controller it does not work.
>>> When there
>>> are none, computer starts normally, apart from the huge lag caused by,
>>> presumably, probing the device.
>>>
>>> Since this is the secondary controller on these motherboards, to
>>> eliminate
>>> those symptoms you can just plug disk in one of available ports of the
>>> built-in
>>> Intel SATA controller and disable Marvell's one using BIOS. The other
>>> work-around, if you need to use eSATA capabilities of the latter, is
>>> to disable
>>> VT-d techonology also using BIOS.
>>
>>
>> _______________________________________________
>> iommu mailing list
>> iommu@lists.linux-foundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/iommu
>
> Well, the lspci dump in the bugzilla report doesn't show a device
> w/BDF=0b:00.1;
> so, if the SATA device (which is 0b:00.0) is spitting out 0b:00.1 as the
> source
> of any of its DMA packets, the IOMMU will fault on it, since 0b:00.1
> didn't
> request DMA mappings (0b:00.0 did).
> I semi-recall someone else reporting this 'feature' on this list.
> Wonder if pci-quirk has to filter this case (0b:00.0 on this system means
> map for 0b:00.0 & 0b:00.1 -- ick!)
>
> do another lspci -vvv to ensure that 0b:00.1 wasn't excluded in the list.
> if it doesn't exist, then the problem is the SATA device using an
> unknown/unrecognized
> BDF of 0b:00.1
Yep, that's correct. I enabled all integrated peripherals on my
motherboard and there were still no entries with BDF 0b:00.1 in lspci -vvv
output. Should I take this problem to MSI then?
Paweł
next prev parent reply other threads:[~2012-01-30 22:13 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-42679-27@https.bugzilla.kernel.org/>
[not found] ` <bug-42679-27-3bo0kxnWaOQUvHkbgXJLS5sdmw4N0Rt+2LY78lusg7I@public.gmane.org/>
2012-01-30 20:59 ` [Bug 42679] New: DMA Read on Marvell 88SE9128 fails when Intel's IOMMU is on Andrew Morton
[not found] ` <20120130125934.7971c815.akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2012-01-30 21:41 ` Don Dutile
2012-01-30 22:13 ` Paweł Żak [this message]
2012-01-30 23:32 ` Chris Wright
2012-01-30 23:44 ` Paweł Żak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=op.v8w3z0z0c3q55a@localhost \
--to=pawel.zaq@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=bugzilla-daemon@bugzilla.kernel.org \
--cc=ddutile@redhat.com \
--cc=dwmw2@infradead.org \
--cc=iommu@lists.linux-foundation.org \
--cc=linux-ide@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).