Subject: Re: dhclient, checksum and tap

From: David Miller <[email-masked]>
Date: Sat, 26 Jun 2010 20:03:20 -0700 (PDT)

From: "Michael S. Tsirkin" <[email-masked]>
Date: Sun, 27 Jun 2010 00:14:19 +0300

> On Fri, Jun 25, 2010 at 11:21:52AM -0700, David Miller wrote:
>> We added the af_packet status as the migration path to deal with
>> this issue in the cleanest manner possible.  Putting a new hack
>> into the TAP driver works contrary to that goal.
> 
> Hmm, problem is, using the af_packets status requires
> userspace changes, and so does not help old clients.
> And for virt, clients might be running old kernels without this support.
> qemu has a hack to make old guests running within qemu work.
> I guess I can copy that hack into vhost - a bit ugly as I don't have
> access to the original skb there, so I will have to duplcate some logic,
> but doable.  Is this what you suggest?  OTOH if we had the workaround in
> tap, this could replace hacks in both vhost and qemu.

If you add the TAP thing you can _never_ remove it.  Exactly for the
same reason that the qemu thing can never be removed.  It'll always be
needed for the sake of old guests running old stuff.

This is why I truly believe that keeping the af_packet status thing as
the only kernel side assist is likely best in the long run.