Hi, dan,
This patch should be applied after below hypercall patch.
-Anthony
>-----Original Message-----
>From: Xu, Anthony
>Sent: 2005年6月22日 19:19
>To: Xu, Anthony; Magenheimer, Dan (HP Labs Fort Collins)
>Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>Subject: Patch of hypercall RE: how to put kernel module in xen/ipf
>
>Hi, dan,
>
>You should apply this patch after Kevin’s “patch_ptrace” patch.
>
>If you want to compile kernel module, you must put 2.6.11 source code and
>xen/ipf
>source code under the same directory, kernel module will use linux kernel
>header
>file.
>
>
>-Anthony
>________________________________________
>From: Magenheimer, Dan (HP Labs Fort Collins) [mailto:dan.magenheimer@xxxxxx]
>Sent: 2005年6月22日 12:18
>To: Xu, Anthony
>Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>Subject: RE: how to put kernel module in xen/ipf
>
>Thanks for the explanation!
>
>> Could we check in this patch and discuss further?
>
>There wasn't a patch attached to either message. Or did you
>mean Kevin's patch (which I just applied)?
>
>Dan
>
>
>________________________________________
>From: Xu, Anthony [mailto:anthony.xu@xxxxxxxxx]
>Sent: Tuesday, June 21, 2005 7:57 PM
>To: Magenheimer, Dan (HP Labs Fort Collins)
>Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>Subject: RE: how to put kernel module in xen/ipf
>Hi, Dan,
>
>We implemented VTLB infrastructure per domain on XEN/IPF, which tracked guest
>tlb information. VTLB has fixed size, then when using out of it, HV will desert
>all VTLB and recycle VTLB. We add a flag “lock” in VTLB entry, when HV recycle
>VTLB, the VTLB entry with “lock” flag will not be deserted, but if Guest uses
>instructions like “ptc” to purge tlb, the VTLB entry with “lock” flag will be
>deserted.
>
>Before invoking hypercall,
>Kernel Module pseudo read parameter once per page size to make sure the
>translation for this parameter has been inserted in VTLB infrastructure. Then
>kernel Module will call another new hypercall which don’t need pointer
>parameter
>to lock above translation in VTLB infrastructure.
>
>Then invoking this hypercall,
>In HV, HV will use copy_from_user() or copy_to_user() to get parameter or
>return
>result. In these functions, HV will lookup VTLB infrastructure to get
>corresponding guest physical address of the parameter, because this translation
>has been locked in VTLB, HV definitely can find it, then HV can get
>corresponding
>machine address from physical to machine address table, as we know HV use
>region
>7 for identity mapping, HV can get identity virtual address for that machine
>address, at last, HV do normal copy operation using this identity virtual
>address.
>
>After this hypercall,
>Guest application definitely will unmap the memory allocated for passing
>hypercall parameter, and this operation definitely will purge tlb for this
>address, so the “lock” VTLB entry in VTLB infrastructure can be recycled.
>
>We had tested this parameter passing mechanism for several hypercalls, such as
>GETMEMLIST, and it works well.
>
>Could we check in this patch and discuss further?
>
>
>
>-Anthony
>________________________________________
>From: Magenheimer, Dan (HP Labs Fort Collins) [mailto:dan.magenheimer@xxxxxx]
>Sent: 2005年6月21日 22:04
>To: Xu, Anthony
>Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>Subject: RE: how to put kernel module in xen/ipf
>
>Yes, the hypercall parameter mechanism is still evolving for Xen/ia64. Very
>few
>hypercalls are necessary to run domain0, so experimentation with different
>hypercall
>mechanisms has waited until multi-domain work.
>
>Can you explain more about kernel modules? I know (roughly) how they
>work for Linux, but not how they are used on Xen/x86. Others on this
>list might like to learn too, so perhaps you could explain the design
>in detail?
>
>Thanks,
>Dan
>
>________________________________________
>From: Xu, Anthony [mailto:anthony.xu@xxxxxxxxx]
>Sent: Monday, June 20, 2005 11:10 PM
>To: Magenheimer, Dan (HP Labs Fort Collins)
>Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>Subject: how to put kernel module in xen/ipf
>Hi, Dan,
>XEN/IPF kernel module has a lot of difference from XEN/ia32, especially the
>mechanism of passing hypercall parameter. Currently we create directory “km”
>under xen/arch/ia64, and put kernel module code in that directory.
> Any comment?
>-Anthony
patch_km_evtchn
Description: patch_km_evtchn
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|