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
[email protected]
https://lists.xenproject.org/mailman/listinfo/xen-devel