[Lguest] gigantic kernel footprint

Rusty Russell rusty at rustcorp.com.au
Mon Mar 29 16:42:54 EST 2010


On Thu, 4 Mar 2010 11:33:44 am ron minnich wrote:
> OK, we were trying to understand why lguest has a 40M kernel footprint
> and KVM has an 8M kernel footprint.
> 
> Same kernel.
> 
> We finally got it. I realize this is obvious but it just was not what
> we expected ...
> 
>        /* If we can receive ANY GSO packets, we must allocate large ones. */
>         if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4)
>             || virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO6)
>             || virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_ECN))
>                 vi->big_packets = true;
> 
> And try_fill_recv_maxbufs proceeds to allocate 40 MB of pages ...

Yep.  We need to implement VIRTIO_NET_F_MRG_RXBUF in lguest.

Shouldn't be that hard, and definitely Nice To Have.

Cheers,
Rusty.


More information about the Lguest mailing list