On Fri, 2008-07-25 at 02:33 +0300, Dor Laor wrote: > Mark McLoughlin wrote: > > The idea here is that with GSO, packets are much larger > > and we can allow the vcpu threads to e.g. process irq > > acks during the window where we're reading these > > packets from the tapfd. > > ... > > diff --git a/qemu/vl.c b/qemu/vl.c > > index efdaafd..de92848 100644 > > --- a/qemu/vl.c > > +++ b/qemu/vl.c > > @@ -4281,7 +4281,9 @@ static void tap_send(void *opaque) > > sbuf.buf = s->buf; > > s->size = getmsg(s->fd, NULL, &sbuf, &f) >=0 ? sbuf.len : -1; > > #else > > > Maybe do it only when GSO is actually used by the guest/tap. > Otherwise it can cause some ctx trashing right?
(Strange habit you have of "top commenting" on patches :-) I've been meaning to do some profiling of just how long the vcpu thread spends blocking on the mutex in this case, both before and after the GSO patches. i.e. this change may make sense even with smaller buffers ... > > + kvm_sleep_begin(); > > s->size = read(s->fd, s->buf, sizeof(s->buf)); > > + kvm_sleep_end(); Cheers, Mark. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
