Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

No IOMMU/DMAR with DELL 3020

516 views
Skip to first unread message

Gustau Pérez

unread,
Apr 9, 2015, 4:17:55 AM4/9/15
to freebsd...@freebsd.org

Hi,

I'm trying xen dom0 on a DELL optiplex 3020 machine. The machine runs:

root@xen_test:~ # uname -arn
FreeBSD xen_test 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r281184:

The box has a core i5-4590 equipped with VT-d:

root@xen_test:~ # dmesg|grep EPT
VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
Secondary Processor
Controls=0x7cff<APIC,EPT,DT,RDTSCP,x2APIC,VPID,WBINVD,UG,PAUSE-loop,RDRAND,INVPCID,VMFUNC,VMCS>
EPT Features=0x6334141<XO,PW4,UC,WB,2M,1G,INVEPT,AD,single,all>

Also the box has the last BIOS firmware from its vendor (DELL).

However, even if VT-d is there, iommu is not enabled. Booting in
verbose mode shows me this:

root@xen_test:~ # dmesg|grep DMAR
ACPI: No DMAR table found

which is the reason iommu support isn't enabled.

Shouldn't be DMAR be detected if VT-d is there? Any info I can
provide, let me know.

Best,

Gustau

--
---------------------------------------------------------------------------
Prou top-posting : http://ca.wikipedia.org/wiki/Top-posting
Stop top-posting : http://en.wikipedia.org/wiki/Posting_style

O O O Gustau Pérez i Querol
O O O Unitat de Gestió dels departaments
O O O Matemàtica Aplicada IV i Enginyeria Telemàtica

Universitat Politècnica de Catalunya
Edifici C3 - Despatx S101-B
UPC Campus Nord UPC
C/ Jordi Girona, 1-3
08034 - Barcelona

_______________________________________________
freebsd...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-curre...@freebsd.org"

Konstantin Belousov

unread,
Apr 9, 2015, 4:21:51 AM4/9/15
to Gustau P??rez, freebsd...@freebsd.org
On Thu, Apr 09, 2015 at 10:17:41AM +0200, Gustau P??rez wrote:
>
> Hi,
>
> I'm trying xen dom0 on a DELL optiplex 3020 machine. The machine runs:
>
> root@xen_test:~ # uname -arn
> FreeBSD xen_test 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r281184:
>
> The box has a core i5-4590 equipped with VT-d:
>
> root@xen_test:~ # dmesg|grep EPT
> VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
> Secondary Processor
> Controls=0x7cff<APIC,EPT,DT,RDTSCP,x2APIC,VPID,WBINVD,UG,PAUSE-loop,RDRAND,INVPCID,VMFUNC,VMCS>
> EPT Features=0x6334141<XO,PW4,UC,WB,2M,1G,INVEPT,AD,single,all>
>
This is VT-x, not VT-d.

> Also the box has the last BIOS firmware from its vendor (DELL).
>
> However, even if VT-d is there, iommu is not enabled. Booting in
> verbose mode shows me this:
>
> root@xen_test:~ # dmesg|grep DMAR
> ACPI: No DMAR table found
>
> which is the reason iommu support isn't enabled.
This means that VT-d is 'not there'.

>
> Shouldn't be DMAR be detected if VT-d is there? Any info I can
> provide, let me know.

Check BIOS settings, there could be a knob which enables VT-d.
If there is no knob, you are out of lack. OS or Xen requires DMAR
table filled by BIOS to detect and use VT-d hardware.

Gustau Pérez

unread,
Apr 9, 2015, 4:28:27 AM4/9/15
to Konstantin Belousov, freebsd...@freebsd.org


On 09/04/2015 10:21, Konstantin Belousov wrote:
> On Thu, Apr 09, 2015 at 10:17:41AM +0200, Gustau P??rez wrote:
>> Hi,
>>
>> I'm trying xen dom0 on a DELL optiplex 3020 machine. The machine runs:
>>
>> root@xen_test:~ # uname -arn
>> FreeBSD xen_test 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r281184:
>>
>> The box has a core i5-4590 equipped with VT-d:
>>
>> root@xen_test:~ # dmesg|grep EPT
>> VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
>> Secondary Processor
>> Controls=0x7cff<APIC,EPT,DT,RDTSCP,x2APIC,VPID,WBINVD,UG,PAUSE-loop,RDRAND,INVPCID,VMFUNC,VMCS>
>> EPT Features=0x6334141<XO,PW4,UC,WB,2M,1G,INVEPT,AD,single,all>
>>

Yup, sorry for the error. I checked the micro in the ark and it has vt-d:

http://goo.gl/CZZRHz

in the bios, there's only one option to enable virtualization
support, which is ticked.

The complete log is here:

http://dpaste.com/28FDMJQ

Thanks,

G.

--
---------------------------------------------------------------------------
Prou top-posting : http://ca.wikipedia.org/wiki/Top-posting
Stop top-posting : http://en.wikipedia.org/wiki/Posting_style

O O O Gustau Pérez i Querol
O O O Unitat de Gestió dels departaments
O O O Matemàtica Aplicada IV i Enginyeria Telemàtica

Universitat Politècnica de Catalunya
Edifici C3 - Despatx S101-B
UPC Campus Nord UPC
C/ Jordi Girona, 1-3
08034 - Barcelona

Konstantin Belousov

unread,
Apr 9, 2015, 4:35:30 AM4/9/15
to Gustau P?rez, freebsd...@freebsd.org
On Thu, Apr 09, 2015 at 10:28:10AM +0200, Gustau P?rez wrote:
> Yup, sorry for the error. I checked the micro in the ark and it has vt-d:
>
> http://goo.gl/CZZRHz
It only indicates that the CPU/northbridge has the hardware, but BIOS must
do a work to configure it and to inform the OS about the configuration.
Your BIOS did not.

>
> in the bios, there's only one option to enable virtualization
> support, which is ticked.
>
> The complete log is here:
>
> http://dpaste.com/28FDMJQ
>
Dmesg would not give you any useful information there. A DMAR table
is either present, or is it not. In the later case, OS cannot use the
hardware, and if no option in BIOS is present, your only choice is to
complain to the machine/BIOS vendor.

Roger Pau Monné

unread,
Apr 9, 2015, 4:38:51 AM4/9/15
to Konstantin Belousov, Gustau P?rez, freebsd...@freebsd.org
Hello,

El 09/04/15 a les 10.35, Konstantin Belousov ha escrit:
> On Thu, Apr 09, 2015 at 10:28:10AM +0200, Gustau P?rez wrote:
>> Yup, sorry for the error. I checked the micro in the ark and it has vt-d:
>>
>> http://goo.gl/CZZRHz
> It only indicates that the CPU/northbridge has the hardware, but BIOS must
> do a work to configure it and to inform the OS about the configuration.
> Your BIOS did not.
>
>>
>> in the bios, there's only one option to enable virtualization
>> support, which is ticked.
>>
>> The complete log is here:
>>
>> http://dpaste.com/28FDMJQ
>>
> Dmesg would not give you any useful information there. A DMAR table
> is either present, or is it not. In the later case, OS cannot use the
> hardware, and if no option in BIOS is present, your only choice is to
> complain to the machine/BIOS vendor.

Check also if there's any BIOS update from the manufacturer.

Roger.

Gustau Pérez

unread,
Apr 9, 2015, 4:44:37 AM4/9/15
to Roger Pau Monné, Konstantin Belousov, freebsd...@freebsd.org

>> Dmesg would not give you any useful information there. A DMAR table
>> is either present, or is it not. In the later case, OS cannot use the
>> hardware, and if no option in BIOS is present, your only choice is to
>> complain to the machine/BIOS vendor.
> Check also if there's any BIOS update from the manufacturer.
>
> Roger.

Thank you all.

The box has already the last vendor's BIOS version.

I've checked the bios of another DELL machine (a laptop) having vt-d
on the micro, and the BIOS on that machine has an option to enable or
disable VT-d, while the bios of the DEL 3020 misses that option. So as
Konstantin said, the bios is not advertising the VT-d capability bundled
in the chip, so I guess I can't move until the vendor decides to
implement that in its bios firmware.

Best all and thank you,

G.



--
---------------------------------------------------------------------------
Prou top-posting : http://ca.wikipedia.org/wiki/Top-posting
Stop top-posting : http://en.wikipedia.org/wiki/Posting_style

O O O Gustau Pérez i Querol
O O O Unitat de Gestió dels departaments
O O O Matemàtica Aplicada IV i Enginyeria Telemàtica

Universitat Politècnica de Catalunya
Edifici C3 - Despatx S101-B
UPC Campus Nord UPC
C/ Jordi Girona, 1-3
08034 - Barcelona

Slawa Olhovchenkov

unread,
Apr 9, 2015, 4:52:48 AM4/9/15
to Konstantin Belousov, Gustau P?rez, freebsd...@freebsd.org
On Thu, Apr 09, 2015 at 11:35:12AM +0300, Konstantin Belousov wrote:

> On Thu, Apr 09, 2015 at 10:28:10AM +0200, Gustau P?rez wrote:
> > Yup, sorry for the error. I checked the micro in the ark and it has vt-d:
> >
> > http://goo.gl/CZZRHz
> It only indicates that the CPU/northbridge has the hardware, but BIOS must
> do a work to configure it and to inform the OS about the configuration.
> Your BIOS did not.
>
> >
> > in the bios, there's only one option to enable virtualization
> > support, which is ticked.
> >
> > The complete log is here:
> >
> > http://dpaste.com/28FDMJQ
> >
> Dmesg would not give you any useful information there. A DMAR table
> is either present, or is it not. In the later case, OS cannot use the
> hardware, and if no option in BIOS is present, your only choice is to
> complain to the machine/BIOS vendor.

May be some OS utilites can do same work?
This is theoretically capable?

Konstantin Belousov

unread,
Apr 9, 2015, 6:03:53 AM4/9/15
to Slawa Olhovchenkov, Gustau P?rez, freebsd...@freebsd.org
On Thu, Apr 09, 2015 at 11:52:33AM +0300, Slawa Olhovchenkov wrote:
> On Thu, Apr 09, 2015 at 11:35:12AM +0300, Konstantin Belousov wrote:
>
> > On Thu, Apr 09, 2015 at 10:28:10AM +0200, Gustau P?rez wrote:
> > > Yup, sorry for the error. I checked the micro in the ark and it has vt-d:
> > >
> > > http://goo.gl/CZZRHz
> > It only indicates that the CPU/northbridge has the hardware, but BIOS must
> > do a work to configure it and to inform the OS about the configuration.
> > Your BIOS did not.
> >
> > >
> > > in the bios, there's only one option to enable virtualization
> > > support, which is ticked.
> > >
> > > The complete log is here:
> > >
> > > http://dpaste.com/28FDMJQ
> > >
> > Dmesg would not give you any useful information there. A DMAR table
> > is either present, or is it not. In the later case, OS cannot use the
> > hardware, and if no option in BIOS is present, your only choice is to
> > complain to the machine/BIOS vendor.
>
> May be some OS utilites can do same work?
> This is theoretically capable?

No, OS must know the peculiarities of the particular chipset. But also,
it must know the intimate details of the BIOS operation, since several
facilities perform background DMA transfers not under the OS control.
Examples are USB legacy emulation, BMC working with the main memory,
or UMA GPU in BIOS-configured mode. Normally, BIOS communicates the
requirements of such facilities to OS using RMRR records in the DMAR
table.

Slawa Olhovchenkov

unread,
Apr 9, 2015, 6:50:40 AM4/9/15
to Konstantin Belousov, Gustau P?rez, freebsd...@freebsd.org
On Thu, Apr 09, 2015 at 01:03:35PM +0300, Konstantin Belousov wrote:

> On Thu, Apr 09, 2015 at 11:52:33AM +0300, Slawa Olhovchenkov wrote:
> > On Thu, Apr 09, 2015 at 11:35:12AM +0300, Konstantin Belousov wrote:
> >
> > > On Thu, Apr 09, 2015 at 10:28:10AM +0200, Gustau P?rez wrote:
> > > > Yup, sorry for the error. I checked the micro in the ark and it has vt-d:
> > > >
> > > > http://goo.gl/CZZRHz
> > > It only indicates that the CPU/northbridge has the hardware, but BIOS must
> > > do a work to configure it and to inform the OS about the configuration.
> > > Your BIOS did not.
> > >
> > > >
> > > > in the bios, there's only one option to enable virtualization
> > > > support, which is ticked.
> > > >
> > > > The complete log is here:
> > > >
> > > > http://dpaste.com/28FDMJQ
> > > >
> > > Dmesg would not give you any useful information there. A DMAR table
> > > is either present, or is it not. In the later case, OS cannot use the
> > > hardware, and if no option in BIOS is present, your only choice is to
> > > complain to the machine/BIOS vendor.
> >
> > May be some OS utilites can do same work?
> > This is theoretically capable?
>
> No, OS must know the peculiarities of the particular chipset. But also,

Someone may be know this and wrote support in utility.
May be chipset datashit available.
I am don't talk about 'universal, out of box support in OS'.
I am talk about theoretically utility, that perform some operations
after OS load.

Also, I am interesting by OS-control interleaving memory (in
multi-socket configuration).
This is totaly imposible or just very complex?

Kevin Oberman

unread,
Apr 9, 2015, 5:00:19 PM4/9/15
to Slawa Olhovchenkov, Konstantin Belousov, Gustau P?rez, FreeBSD Current
I have a system where it is enabled via some BIOS setting that does not
make it remotely obvious what it enables VT-d. I've had to ind it three
times, once when the system was new, once when I had to send it in for
warranty repair and they reset BIOS, and again when the CMOS battery had to
be replaced. Every time it took me a while to figure out the magic, but it
was there. (No, mine was not a Dell. It was a ZT systems.)
--
Kevin Oberman, Network Engineer, Retired
E-mail: rkob...@gmail.com
0 new messages