From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Wang Subject: Re: [PATCH] amd iommu: Dump flags of IO page faults Date: Thu, 6 Sep 2012 15:32:51 +0200 Message-ID: <5048A603.3070207@amd.com> References: <504764E2.4000809@amd.com> <326589347.20120906005936@eikelenboom.it> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <326589347.20120906005936@eikelenboom.it> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Sander Eikelenboom Cc: "xen-devel@lists.xensource.com" , Jan Beulich List-Id: xen-devel@lists.xenproject.org On 09/06/2012 12:59 AM, Sander Eikelenboom wrote: > > Wednesday, September 5, 2012, 4:42:42 PM, you wrote: > >> Hi Jan, >> Attached patch dumps io page fault flags. The flags show the reason of >> the fault and tell us if this is an unmapped interrupt fault or a DMA fault. > >> Thanks, >> Wei > >> signed-off-by: Wei Wang > > > I have applied the patch and the flags seem to differ between the faults: > > AMD-Vi: IO_PAGE_FAULT: domain = 0, device id = 0x0a06, fault address = 0xc2c2c2c0, flags = 0x000 > (XEN) [2012-09-05 20:54:16] AMD-Vi: IO_PAGE_FAULT: domain = 0, device id = 0x0a06, fault address = 0xc2c2c2c0, flags = 0x000 > (XEN) [2012-09-05 20:54:16] AMD-Vi: IO_PAGE_FAULT: domain = 14, device id = 0x0700, fault address = 0xa8d339e0, flags = 0x020 > (XEN) [2012-09-05 20:54:16] AMD-Vi: IO_PAGE_FAULT: domain = 14, device id = 0x0700, fault address = 0xa8d33a40, flags = 0x020 OK, so they are not interrupt requests. I guess further information from your system would be helpful to debug this issue: 1) xl info 2) xl list 3) lscpi -vvv (NOTE: not in dom0 but in your guest) 4) cat /proc/iomem (in both dom0 and your hvm guest) * I would also like to know the symptoms of device 0x0700 when IO_PF happened. Did it stop working? (BTW: I copied a few options from your boot cmd line and it worked with my RD890 system dom0_mem=1024M,max:1024M loglvl=all loglvl_guest=all console_timestamps cpuidle cpufreq=xen noreboot debug lapic=debug apic_verbosity=debug apic=debug iommu=on,verbose,debug,no-sharept * so, what OEM board you have?) Also from your log, these lines looks very strange: (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xd5, mfn=0xa4a11 (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xd7, mfn=0xa4a0f (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xd9, mfn=0xa4a0d (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xdb, mfn=0xa4a0b (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xdd, mfn=0xa4a09 (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xdf, mfn=0xa4a07 (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xe1, mfn=0xa4a05 (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xe3, mfn=0xa4a03 (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xe5, mfn=0xa4a01 (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xe7, mfn=0xa463f (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xe9, mfn=0xa463d (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xeb, mfn=0xa463b (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xed, mfn=0xa4639 (XEN) [2012-09-04 15:54:35] hvm.c:2435:d15 guest attempted write to read-only memory page. gfn=0xef, mfn=0xa4637 (XEN) [2012-09-04 16:13:56] AMD-Vi: IO_PAGE_FAULT: domain = 0, device id = 0x0a06, fault address = 0xc2c2c2c0 (XEN) [2012-09-04 16:13:56] AMD-Vi: IO_PAGE_FAULT: domain = 14, device id = 0x0700, fault address = 0xa90f8300 (XEN) [2012-09-04 16:13:56] AMD-Vi: IO_PAGE_FAULT: domain = 14, device id = 0x0700, fault address = 0xa90f8340 (XEN) [2012-09-04 16:13:56] AMD-Vi: IO_PAGE_FAULT: domain = 14, device id = 0x0700, fault address = 0xa90f8380 (XEN) [2012-09-04 16:13:56] AMD-Vi: IO_PAGE_FAULT: domain = 14, device id = 0x0700, fault address = 0xa90f83c0 * they are just followed by the IO PAGE fault. Do you know where are they from? Your video card driver maybe? Thanks, Wei > Complete xl dmesg and lspci -vvvknn attached. > > Thx > > -- > Sander