xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* How the pv guest responds hypercall_create_continuation ?
@ 2013-05-23  0:03 Xinxin Jin
  2013-05-23  1:39 ` Matthew Daley
  2013-05-23  8:49 ` Andrew Cooper
  0 siblings, 2 replies; 3+ messages in thread
From: Xinxin Jin @ 2013-05-23  0:03 UTC (permalink / raw)
  To: Xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 872 bytes --]

Hi all,

In Xen's hypercall handler, sometimes when -EAGAIN error happens, Xen will
call a function hypercall_create_continuation(), which writes the arguments
of this hypercall to guest user registers. I guess the purpose of this
function is to indicate guest to try the failed hypercall again, right ?
Then I looked at guest Linux's code and try to find the interface:

A typical guest hypercall calling routine is (take HYPERVISOR_mmu_update
for example):

static inline int
HYPERVISOR_mmu_update(
    mmu_update_t *req, int count, int *success_count, domid_t domid)
{
    return _hypercall4(int, mmu_update, req, count, success_count, domid);
}

Then _hypercall4 will call corresponding code in hypercall_page and return.
But where is the interface with hypercall_create_continuation()? How the
guest knows it needs to try the hypercall again?

Thanks a lot,


Xinxin

[-- Attachment #1.2: Type: text/html, Size: 1564 bytes --]

[-- Attachment #2: Type: text/plain, Size: 126 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-05-23  8:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-23  0:03 How the pv guest responds hypercall_create_continuation ? Xinxin Jin
2013-05-23  1:39 ` Matthew Daley
2013-05-23  8:49 ` Andrew Cooper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).