On Fri, 2015-10-09 at 13:29 +0100, Andrew Cooper wrote: > On 09/10/15 09:25, Jan Beulich wrote: > > > > > On 09.10.15 at 04:56, <konrad.w...@oracle.com> wrote: > > > All existing commands ignore the parameter so this does > > > not break the ABI. > > Does it not? What about the debug mode clobbering of hypercall > > argument registers? > > That is an implementation detail of the hypervisor. It is irrelevant to > guests whether Xen chooses to clobber the spare registers or not.
Or in other words the effect here is to clobber one _less_ register, and the guest cannot have been relying on a register getting so clobbered (if nothing else it doesn't happen in debug=n builds). The flip side is that we are now no longer clobbering that register even for existing sub-ops which do not use it (since the clobbering doesn't go down to the subop level). So there is a risk that a guest may come to depend on that register not being clobbered and then fail older debug=y hypervisors. This second scenario doesn't seem especially likely to me. Do we not already have one or two hypercalls where subops consume different numbers of parameters anyway? HYPERVISOR_sched_op I think has this property and we've not been too concerned. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel