This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-users] Queries on __gnttab_copy()

To: <xen-users@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-users] Queries on __gnttab_copy()
From: Naveen BS <naveen.bs@xxxxxxxxxxx>
Date: Thu, 17 Dec 2009 12:39:02 +0530
Delivery-date: Wed, 16 Dec 2009 23:09:42 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
Importance: Normal
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx


Can someone please clarify the following queries on __gnttab_copy()?

1. How to get __gnttab_copy() working for copying from real memory (RAM) to IO 
Memory (PCI device memory in the MMIO region)?

2. In general, How to get __gnttab_copy() working for copying from/to regions 
mapped with xc_domain_memory_mapping?

3. Why this isn’t supported?

I get the following error with gnttab_copy() for MMIO memory:

(XEN) mm.c:1988:d1 Error pfn fbd00: rd=ffff8301378f4000, od=ffff83013fde8000, 
caf=8000000000000001, taf=e800000000000001
(XEN) grant_table.c:1485:d1 could not get dst frame fbd00

I could get rid of this error by adding page_set_owner() in 
set_mmio_p2m_entry() for the destination pages. But further it crashes with 
following page fault.

(XEN) ----[ Xen-3.4.1 x86_64 debug=n Tainted: C ]----
(XEN) CPU: 1
(XEN) RIP: e008:[] gnttab_copy+0x4a7/0x760
(XEN) RFLAGS: 0000000000010286 CONTEXT: hypervisor
(XEN) rax: ffff8300fbd00000 rbx: 0000000000000000 rcx: 0000000000000fd0
(XEN) rdx: 0000000000000000 rsi: ffff83005f400030 rdi: ffff8300fbd00000
(XEN) rbp: 0000000000000000 rsp: ffff83013fdd7c98 r8: 0000000000000000
(XEN) r9: 0000000000000000 r10: 0000000000000000 r11: 0000000000000000
(XEN) r12: ffff83013fde0000 r13: ffff83010f7f4000 r14: 0000000000000000
(XEN) r15: ffff83013fdd7cb8 cr0: 0000000080050033 cr4: 00000000000026f0
(XEN) cr3: 000000013c175000 cr2: ffff8300fbd00000
(XEN) ds: 0000 es: 0000 fs: 0000 gs: 0000 ss: 0000 cs: e008
(XEN) Xen stack trace from rsp=ffff83013fdd7c98:
(XEN) ffff83013fdd7d98 0000000110d08c58 ffff83010f7f4000 0000000080184450
(XEN) 0000000000030000 0000000000000001 00000000000c2100 0000107f00000001
(XEN) 0000000000001000 00000000000fbd00 000000000005f400 0000000500000018
(XEN) ffff83013fdd7f28 0000000000000000 ffff83013fdd7f28 ffff83013fdd7f28
(XEN) 0000000000000005 0000000000000001 0000000010d08c58 ffff828c8010c8cb
(XEN) ffff83013fdd7f28 ffff83013fdd7f28 ffff83013fdd7f28 ffff83013fdd7f28
(XEN) ffff83013fdd7f28 ffff83013fdd7db4 ffff83013fdd7f28 ffff83013fdd7d98
(XEN) ffff83013fde0000 0000000100000001 ffff828c80228760 ffff8300bf7ea000
(XEN) 0000000100030000 00000001000c2100 162f000000001000 ffff83013fdd7df8
(XEN) 0000000000000001 0000000000000004 ffff83013fdd7f28 ffff83013fdd7f28
(XEN) ffff8300bf7ea000 ffff828c80228320 0000000000000000 ffff828c80182e58
(XEN) ffffffff0c930010 0000000000000000 ffff8300bf7ea000 0000000000000003
(XEN) 0000000000000012 0000000000000000 ffff83013fdd7f28 ffff828c8019d21d
(XEN) ffff8300bf6a6000 ffff83010f7f5ea8 0000006681045a92 ffff828c80229100
(XEN) ffff8300bf7ea000 ffff828c8012a5fc ffff8300bf7eb690 ffff8300bf7eb690
(XEN) 0000006681046042 ffff8300bf7eb690 ffff83004f36b930 ffff828c8018e0b9
(XEN) ffff828c8018ed22 ffff8300bf7ea000 0000000000000000 ffff828c80189938
(XEN) ffff8300bf7ea000 ffff8300bf7ea000 0000000000000000 ffff828c801971c2
(XEN) ffff828c8026a980 0000000481045a92 ffff828c80229100 ffff8300bf7ea000
(XEN) 0000000001a98204 0000000000000000 0000000000000000 0000000000000000
(XEN) Xen call trace:
(XEN) [] gnttab_copy+0x4a7/0x760
(XEN) [] compat_grant_table_op+0x5db/0x920
(XEN) [] hvm_do_hypercall+0x108/0x230
(XEN) [] vmx_vmexit_handler+0x67d/0x17b0
(XEN) [] hvm_dirq_assist+0x6c/0x290
(XEN) [] pt_update_irq+0x49/0xf0
(XEN) [] vlapic_has_pending_irq+0x42/0x70
(XEN) [] hvm_vcpu_has_pending_irq+0x78/0x90
(XEN) [] vmx_intr_assist+0x62/0x220
(XEN) [] vmx_asm_do_vmentry+0x0/0xdd
(XEN) Pagetable walk from ffff8300fbd00000:
(XEN) L4[0x106] = 000000007f055027 5555555555555555
(XEN) L3[0x003] = 000000007f059007 5555555555555555
(XEN) L2[0x1de] = 0000000000000000 ffffffffffffffff
(XEN) ****************************************
(XEN) Panic on CPU 1:
(XEN) [error_code=0002]
(XEN) Faulting linear address: ffff8300fbd00000
(XEN) ****************************************

Please suggest me.

Thanks & Regards
New Windows 7: Find the right PC for you. Learn more.
Xen-users mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-users] Queries on __gnttab_copy(), Naveen BS <=