[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] suspending execution within Xen
Xen on x86 doesn't support stack-based continuations within the hypervisor -- that is, there is no way to deschedule the current domain within Xen and then automatically return to your current point of execution when you are re-scheduled. If you have further work to do, before returning to guest context, when the domain is rescheduled then you need to install your own hook function into vcpu->arch.schedule_tail. You'll need to xmalloc any space you need for continuation data. -- Keir On 29 Jun 2005, at 12:53, Avi Kivity wrote: I am trying to send a stream of events about one domain to another. so Iset up a ring between the monitoring domain and xen (not the monitored domain). however I am having trouble blocking when buffer space runs out. the intuitive while (!buffer_space_available()) do_block();does not work; do_block() appears to return to guest context, not to thewhile loop (is this correct?). the other alternative, while (!buffer_space_available()) if (!test_and_set_bit(EDF_BLOCKED, &ed->ed_flags)) domain_sleep(ed); freezes xen solid. is there a way to do it? am I missing something obvious? Avi _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |