On 08/18/2009 04:08 AM, Anthony Liguori wrote:
I believe strongly that we should avoid putting things in the kernel unless they absolutely have to be. I'm definitely interested in playing with vhost to see if there are ways to put even less in the kernel. In particular, I think it would be a big win to avoid knowledge of slots in the kernel by doing ring translation in userspace. This implies a userspace transition in the fast path. This may or may not be acceptable. I think this is going to be a very interesting experiment and will ultimately determine whether my intuition about the cost of dropping to userspace is right or wrong.
I believe with a perfectly scaling qemu this should be feasible. Currently qemu is far from scaling perfectly, but inefficient userspace is not a reason to put things into the kernel.
Having a translated ring is also a nice solution for migration - userspace can mark the pages dirty while translating the receive ring.
Still, in-kernel translation is simple enough that I think we should keep it.
-- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html