|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Setting up hypervisor_callback and testing
At Wed, 15 Feb 2006 11:49:05 +0000,
Ivan Kelly wrote:
>
> im setting up my hypervisor callback with:
> hypervisor_set_callbacks(CS_SELECTOR, (unsigned long)hypervisor_callback,
> CS_SELECTOR, (unsigned long)failsafe_callback);
> hypervisor_callback and failsafe_callback are as yet very simple assembly
> funcations that just shutdown the domain.
> <SNIP>
> _hypervisor_callback:
> [...]
> </SNIP>
>
> The callback doesn't seem to be getting called at all. At the moment im only
> trying to get very basic callback stuff working, so i've left out the save and
> iret stuff. Could anyone point out where im going wrong?
Have you enabled event delivery? Look in the Mini-OS source kernel.c
and os.h, where "__sti" is defined:
#define __sti() \
do { \
vcpu_info_t *_vcpu; \
barrier(); \
_vcpu = &HYPERVISOR_shared_info->vcpu_info[smp_processor_id()]; \
_vcpu->evtchn_upcall_mask = 0; \
barrier(); /* unmask then check (avoid races) */ \
if ( unlikely(_vcpu->evtchn_upcall_pending) ) \
force_evtchn_callback(); \
} while (0)
the events should be masked on startup I think, so maybe that's your
problem.
// Simon
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|