Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 Aug 2016 14:22:36 -0700
From:      John Baldwin <jhb@freebsd.org>
To:        src-committers@freebsd.org
Cc:        svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r303887 - head/tools/tools/dmardump
Message-ID:  <73543582.oU1jbu7riv@ralph.baldwin.cx>
In-Reply-To: <201608091906.u79J65Uq058283@repo.freebsd.org>
References:  <201608091906.u79J65Uq058283@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday, August 09, 2016 07:06:05 PM John Baldwin wrote:
> Author: jhb
> Date: Tue Aug  9 19:06:05 2016
> New Revision: 303887
> URL: https://svnweb.freebsd.org/changeset/base/303887
> 
> Log:
>   Add a dmardump utility to dump the VT-d context tables.
>   
>   This tool parses the ACPI DMAR table looking for DMA remapping devices.
>   For each device it walks the root table and any context tables
>   referenced to display mapping info for PCI devices.
>   
>   Note that acpidump -t already parses the info in the ACPI DMAR tables
>   directly.  This tool examines some of the data structures the DMAR
>   remapping engines use to translate DMA requests.
>   
>   Reviewed by:	kib, grehan
>   MFC after:	1 month
>   Sponsored by:	Chelsio Communications
>   Differential Revision:	https://reviews.freebsd.org/D7444

I should have mentioned that this tool only supports "normal" context
entry tables.  It does not (yet) support extended context entry
tables.  However, neither bhyve nor ACPI_DMAR create extended context
entry tables.

Sample output from a machine where ppt0 is passed through to a bhyve
guest:

# ./dmardump
drhd @ 0xfbffc000 (version 1.0) PCI segment 0:
    root table @ 0x0x13823f000
        PCI bus 0:
            { 0,0 } (hostb0) TR SLPT 0x139e41000 domain 1
            { 1,0 } (pcib2) TR SLPT 0x139e41000 domain 1
            { 2,0 } (pcib3) TR SLPT 0x139e41000 domain 1
            { 3,0 } (pcib4) TR SLPT 0x139e41000 domain 1
            { 3,2 } (pcib5) TR SLPT 0x139e41000 domain 1
            { 3,3 } (pcib6) TR SLPT 0x139e41000 domain 1
            { 4,0 } TR SLPT 0x139e41000 domain 1
            { 4,1 } TR SLPT 0x139e41000 domain 1
            { 4,2 } TR SLPT 0x139e41000 domain 1
            { 4,3 } TR SLPT 0x139e41000 domain 1
            { 4,4 } TR SLPT 0x139e41000 domain 1
            { 4,5 } TR SLPT 0x139e41000 domain 1
            { 4,6 } TR SLPT 0x139e41000 domain 1
            { 4,7 } TR SLPT 0x139e41000 domain 1
            { 5,0 } TR SLPT 0x139e41000 domain 1
            { 5,1 } TR SLPT 0x139e41000 domain 1
            { 5,2 } TR SLPT 0x139e41000 domain 1
            { 5,4 } (ioapic0) TR SLPT 0x139e41000 domain 1
            { 17,0 } TR SLPT 0x139e41000 domain 1
            { 17,4 } (ahci0) TR SLPT 0x139e41000 domain 1
            { 20,0 } (xhci0) TR SLPT 0x139e41000 domain 1
            { 22,0 } TR SLPT 0x139e41000 domain 1
            { 22,1 } TR SLPT 0x139e41000 domain 1
            { 26,0 } (ehci0) TR SLPT 0x139e41000 domain 1
            { 28,0 } (pcib7) TR SLPT 0x139e41000 domain 1
            { 28,6 } (pcib8) TR SLPT 0x139e41000 domain 1
            { 29,0 } (ehci1) TR SLPT 0x139e41000 domain 1
            { 31,0 } (isab0) TR SLPT 0x139e41000 domain 1
            { 31,2 } (ahci1) TR SLPT 0x139e41000 domain 1
            { 31,3 } TR SLPT 0x139e41000 domain 1
            { 31,6 } TR SLPT 0x139e41000 domain 1
        PCI bus 3:
            { 0,0 } (t5iov0) TR SLPT 0x139e41000 domain 1
            { 0,1 } (t5iov1) TR SLPT 0x139e41000 domain 1
            { 0,2 } (t5iov2) TR SLPT 0x139e41000 domain 1
            { 0,3 } (t5iov3) TR SLPT 0x139e41000 domain 1
            { 0,4 } (t5nex0) TR SLPT 0x139e41000 domain 1
            { 0,5 } TR SLPT 0x139e41000 domain 1
            { 0,6 } TR SLPT 0x139e41000 domain 1
            { 0,8 } (ppt0) TR SLPT 0x1a157b000 domain 2
        PCI bus 5:
            { 0,0 } (igb0) TR SLPT 0x139e41000 domain 1
            { 0,1 } (igb1) TR SLPT 0x139e41000 domain 1
        PCI bus 7:
            { 0,0 } (pcib9) TR SLPT 0x139e41000 domain 1
        PCI bus 8:
            { 0,0 } (vgapci0) TR SLPT 0x139e41000 domain 1

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?73543582.oU1jbu7riv>