lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130711223151.GD24833@sequoia2.sous-sol.org>
Date:	Thu, 11 Jul 2013 15:31:51 -0700
From:	Chris Wright <chrisw@...s-sol.org>
To:	Guenter Roeck <linux@...ck-us.net>
Cc:	Chris Wright <chrisw@...s-sol.org>,
	Bjorn Helgaas <bhelgaas@...gle.com>,
	David Woodhouse <dwmw2@...radead.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	"open list:INTEL IOMMU (VT-d)" <iommu@...ts.linux-foundation.org>
Subject: Re: WARNING: at drivers/iommu/dmar.c:484 warn_invalid_dmar with
 Intel Motherboard

* Guenter Roeck (linux@...ck-us.net) wrote:
> On Thu, Jul 11, 2013 at 12:00:54PM -0700, Chris Wright wrote:
> > * Guenter Roeck (linux@...ck-us.net) wrote:
> > > On Tue, Jul 09, 2013 at 04:22:52PM -0700, Chris Wright wrote:
> > > > One thing I've seen is the BIOS zeroing the base register address when
> > > > VT-d is disabled in BIOS.  So, Guenter, a "fix" may be simply enabling
> > > > VT-d in the BIOS.
> > > > 
> > > Ah, yes, I think I may have that disabled. I'll check it tonight.
> > 
> > Did you find out if BIOS change fixed this?
> > 
> No, it didn't. Enabling or disabling virtualization in the BIOS did not make
> a difference. It looks like there is a bad DMAR table entry (with address 0)
> in the ACPI data. In case you are interested how it looks like:
> 
> DMAR @ 0xcb3f3f90
>   0000: 44 4d 41 52 90 00 00 00 01 d5 49 4e 54 45 4c 20  DMAR......INTEL
>   0010: 44 48 38 37 52 4c 20 20 40 01 00 00 49 4e 54 4c  DH87RL  @...INTL
>   0020: 01 00 00 00 26 00 00 00 00 00 00 00 00 00 00 00  ....&...........
>   0030: 00 00 10 00 01 00 00 00 00 00 00 00 00 00 00 00  ................
>   0040: 01 00 30 00 00 00 00 00 00 b0 eb cb 00 00 00 00  ..0.............
>   0050: ff 9f ec cb 00 00 00 00 01 08 00 00 00 00 1d 00  ................
>   0060: 01 08 00 00 00 00 1a 00 01 08 00 00 00 00 14 00  ................
>   0070: 01 00 20 00 00 00 00 00 00 00 00 d7 00 00 00 00  .. .............
>   0080: ff ff 1f df 00 00 00 00 01 08 00 00 00 00 02 00  ................
> 
> Turns out the i7-4770K doesn't support VT-d, so my current understanding
> is that there should be no DMAR table in the first place.

OK, thanks for follow-up.  You can see why the warnings are there now.
This is your decoded DMAR table...has valid looking RMRR regions, and
mostly valid looking DRHD (minus the invalid base address).


/*
 * Intel ACPI Component Architecture
 * AML Disassembler version 20100528
 *
 * Disassembly of /tmp/dmar, Thu Jul 11 15:24:28 2013
 *
 * ACPI Data Table [DMAR]
 *
 * Format: [HexOffset DecimalOffset ByteLength]  FieldName : FieldValue
 */

[000h 0000  4]                    Signature : "DMAR"    /* DMA Remapping table */
[004h 0004  4]                 Table Length : 00000090
[008h 0008  1]                     Revision : 01
[009h 0009  1]                     Checksum : D5
[00Ah 0010  6]                       Oem ID : "INTEL "
[010h 0016  8]                 Oem Table ID : "DH87RL  "
[018h 0024  4]                 Oem Revision : 00000140
[01Ch 0028  4]              Asl Compiler ID : "INTL"
[020h 0032  4]        Asl Compiler Revision : 00000001

[024h 0036  1]           Host Address Width : 26
[025h 0037  1]                        Flags : 00

[030h 0048  2]                Subtable Type : 0000 <Hardware Unit Definition>
[032h 0050  2]                       Length : 0010
[034h 0052  1]                        Flags : 01
[035h 0053  1]                     Reserved : 00
[036h 0054  2]           PCI Segment Number : 0000
[038h 0056  8]        Register Base Address : 0000000000000000

[040h 0064  2]                Subtable Type : 0001 <Reserved Memory Region>
[042h 0066  2]                       Length : 0030
[044h 0068  2]                     Reserved : 0000
[046h 0070  2]           PCI Segment Number : 0000
[048h 0072  8]                 Base Address : 00000000CBEBB000
[050h 0080  8]          End Address (limit) : 00000000CBEC9FFF

[058h 0088  1]      Device Scope Entry Type : 01
[059h 0089  1]                 Entry Length : 08
[05Ah 0090  2]                     Reserved : 0000
[05Ch 0092  1]               Enumeration ID : 00
[05Dh 0093  1]               PCI Bus Number : 00
[05Eh 0094  2]                     PCI Path : [1D, 00]

[060h 0096  1]      Device Scope Entry Type : 01
[061h 0097  1]                 Entry Length : 08
[062h 0098  2]                     Reserved : 0000
[064h 0100  1]               Enumeration ID : 00
[065h 0101  1]               PCI Bus Number : 00
[066h 0102  2]                     PCI Path : [1A, 00]

[068h 0104  1]      Device Scope Entry Type : 01
[069h 0105  1]                 Entry Length : 08
[06Ah 0106  2]                     Reserved : 0000
[06Ch 0108  1]               Enumeration ID : 00
[06Dh 0109  1]               PCI Bus Number : 00
[06Eh 0110  2]                     PCI Path : [14, 00]

[070h 0112  2]                Subtable Type : 0001 <Reserved Memory Region>
[072h 0114  2]                       Length : 0020
[074h 0116  2]                     Reserved : 0000
[076h 0118  2]           PCI Segment Number : 0000
[078h 0120  8]                 Base Address : 00000000D7000000
[080h 0128  8]          End Address (limit) : 00000000DF1FFFFF

[088h 0136  1]      Device Scope Entry Type : 01
[089h 0137  1]                 Entry Length : 08
[08Ah 0138  2]                     Reserved : 0000
[08Ch 0140  1]               Enumeration ID : 00
[08Dh 0141  1]               PCI Bus Number : 00
[08Eh 0142  2]                     PCI Path : [02, 00]

Raw Table Data

  0000: 44 4D 41 52 90 00 00 00 01 D5 49 4E 54 45 4C 20  DMAR......INTEL 
  0010: 44 48 38 37 52 4C 20 20 40 01 00 00 49 4E 54 4C  DH87RL  @...INTL
  0020: 01 00 00 00 26 00 00 00 00 00 00 00 00 00 00 00  ....&...........
  0030: 00 00 10 00 01 00 00 00 00 00 00 00 00 00 00 00  ................
  0040: 01 00 30 00 00 00 00 00 00 B0 EB CB 00 00 00 00  ..0.............
  0050: FF 9F EC CB 00 00 00 00 01 08 00 00 00 00 1D 00  ................
  0060: 01 08 00 00 00 00 1A 00 01 08 00 00 00 00 14 00  ................
  0070: 01 00 20 00 00 00 00 00 00 00 00 D7 00 00 00 00  .. .............
  0080: FF FF 1F DF 00 00 00 00 01 08 00 00 00 00 02 00  ................
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ