On Sun, Sep 19, 2010 at 07:36:51AM +0100, Stefan Hajnoczi wrote: > On Sat, Sep 18, 2010 at 10:27 PM, Edgar E. Iglesias > <edgar.igles...@gmail.com> wrote: > > This doesn't look right. AFAIK, MAC's dont pad on receive. > > I agree. NICs that do padding will do it on transmit, not receive. > Anything coming in on the wire should already have the minimum length. > > In QEMU that isn't true today and that's why rtl8139, pcnet, and > ne2000 already do this same padding. This patch is the smallest > change to cover e1000. > > > IMO this kind of padding should somehow be done by the bridge that forwards > > packets into the qemu vlan (e.g slirp or the generic tap bridge). > > That should work and we can then drop the padding code from existing > NICs. I'll take a look. > > Stefan
Not all nic devices have to be emulate ethernet, so not all devices want the padding, e.g. virtio does not. It's also easy to imagine an ethernet device that strips the padding: would be silly to add it just to have it stripped. If we really want to do this generically, we could implement a function dealing with the padding, and call it from relevant devices. But I think the patch looks fine as is. -- MST