> Now with this function being reintroduced, it becomes more complicated
> to determine which version of the mem_access API does Xen actually
> provide. A #define indicating mem_access API version would nicely
> overcome this issue, or  naming xc_mem_event_enable something else.

Doesn't configure support checking for functions with a given prototype?

It does but in a very hacky way, essentially trying to compile code where the function is being called with different prototypes. We can work around it but a clean solution would be preferred at some point.

 
> Furthermore, the new xc_mem_event_enable function unconditionally
> unpauses the VM. This may not be a desired behavior in all cases,
> especially if the VM was in a paused state when the function was
> called.

domain pauses are referenced counted on the hypervisor side.

Ian.


I did a quick test with xc_domain_pause being called twice, then xc_domain_unpause once and the domain was in unpaused state at the end. Same with the xen-access example, a paused domain gets automatically unpaused by libxc, either though the xen-access code doesn't specifically say it should be. This is now a rather opaque behavior of libxc. As it is not merged into master I guess I will just submit a patch for it..

Tamas