Andi Kleen wrote:
>>  
>> +#ifdef CONFIG_PARAVIRT
>> +void apply_paravirt(struct paravirt_patch *start, struct paravirt_patch 
>> *end)
>>     
>
> It would be better to merge this with the existing LOCK prefix patching
> or perhaps the normal alternative() patcher (is there any particular
> reason you can't use it?)
>
> Three alternative patching mechanisms just seems to be too many

The difference is that every hypervisor wants its own patched 
instruction sequence, which may require a specialized patching 
mechanism.  If you're simply patching in calls, then it isn't a big 
deal, but you may also want to patch in real inlined code for some 
operations (like sti/cli equivalents).  The alternatives are to allow 
each backend to deal with its own patching (perhaps with common 
functions abstracted out as they appear), or have a common set of 
patching machinery which can deal with all users.  The former seems simpler.

    J
_______________________________________________
Virtualization mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/virtualization

Reply via email to