On 13/06/18 18:06, Ian Jackson wrote:
> Juergen Gross writes ("How to deal with hypercalls returning -EFAULT"):
>> 3. Modify the interface to the privcmd driver to pass information about
>>    used buffers to the kernel in order to lock them there. Either add a
>>    new interface for hypercall buffer management or add the list of
>>    buffers to the privcmd ioctl data structure.
>>    Pros: - problem is really solved
>>    Cons: - split solution between kernel and Xen, both must be changed
> 
> I think this is the best approach.  There are presumably already
> internal kernel interfaces which could be used by privcmd to implement
> this.  All that's needed is to decide what the kernel API should look
> like and implement it.  libxc doesn't really care very much what that
> interface looks like, so it can be whatever is convenient for the
> kernel.
> 
>> 2. Add a bandaid to Xen tools by retrying hypercalls which have failed
>>    with -EFAULT (either for all or only for some hypercalls)
>>    Pros: - no interface change necessary
>>    Cons: - not all hypercalls might be just repeatable
>>          - problem isn't solved but just worked around
> 
> This may allow us to make some kind of progress in systems which are
> fundamentally broken, but I don't think it is a tolerable long term
> approach.
> 
> If we do this, we should also do your option (3), and the workaround
> should only be enabled if the proper interface is not available.

Of course.


Juergen

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to