From: Fabien Chouteau <chouteau@adacore.com>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] Make SLIRP Ethernet packets size to 64 bytes minimuma
Date: Tue, 28 Jun 2011 11:08:37 +0200 [thread overview]
Message-ID: <4E099A15.4050004@adacore.com> (raw)
In-Reply-To: <BANLkTi=bpWMcN1LQK-uyrW7BTyPwsf_SVw@mail.gmail.com>
On 28/06/2011 10:34, Stefan Hajnoczi wrote:
> On Mon, Jun 27, 2011 at 5:12 PM, Fabien Chouteau <chouteau@adacore.com> wrote:
>> On 27/06/2011 17:39, Stefan Hajnoczi wrote:
>>> On Mon, Jun 27, 2011 at 3:23 PM, Fabien Chouteau <chouteau@adacore.com> wrote:
>>>> On 27/06/2011 15:50, Stefan Hajnoczi wrote:
>>>>> On Mon, Jun 27, 2011 at 1:41 PM, Fabien Chouteau <chouteau@adacore.com> wrote:
>>>>>>
>>>>>> Signed-off-by: Fabien Chouteau <chouteau@adacore.com>
>>>>>> ---
>>>>>> slirp/slirp.c | 4 ++--
>>>>>> 1 files changed, 2 insertions(+), 2 deletions(-)
>>>>>
>>>>> Any particular bug that this fixes?
>>>>>
>>>>> There have been 64 byte minimum padding patches to several emulated
>>>>> NICs. There has also been discussion about where the best place to do
>>>>> this is. Why is this patch necessary?
>>>>>
>>>>
>>>> This patch is necessary because some NICs are configured to drop short frames,
>>>> therefore the OS will not receive some of the packets generated by Qemu.
>>>>
>>>> There's a first patch to fix this issue:
>>>> http://git.savannah.gnu.org/cgit/qemu.git/commit/?id=dbf3c4b4baceb91eb64d09f787cbe92d65188813
>>>>
>>>> My patch fixes two other sources of short frames.
>>>
>>> Thanks for the explanation. I stepped back from the discussion on
>>> where the right place to fix this is last time around. Now I'm
>>> wondering why do anything in slirp when the other sources (tap, ...)
>>> aren't padding to 64 bytes?
>>
>> I think that packets generated by Qemu must follow RFC. For other sources, qemu
>> should keep original size when possible and put padding otherwise.
>
> slirp interfaces to net.h which does not emulate Ethernet. For
> example, it doesn't carry the Frame Check Sequence (FCS) as per the
> Ethernet standard. NICs that want to report FCS to the guest
> calculate it themselves, just like they do with 64-byte padding. So I
> find it weird to say we should honor Ethernet when the transport we
> are using is not Ethernet.
In this case it's always Ethernet frames, look at the two patched lines,
there's an Ethernet header:
uint8_t arp_req[max(ETH_HLEN + sizeof(struct arphdr), 64)];
slirp_output(slirp->opaque, buf, max(ip_data_len + ETH_HLEN, 64));
>
> This patch doesn't hurt but we'd be just as well off without it.
>
> Did you do this to fix a bug? If so, then something else in QEMU
> needs to be fixed, not slirp.
When Qemu generates bad Ethernet frames, I think it's a bug.
And again, this is the extension of a previous patch. If this patch is not
valid then we should revert the first, it's also a question of consistency.
--
Fabien Chouteau
next prev parent reply other threads:[~2011-06-28 9:08 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-27 12:41 [Qemu-devel] [PATCH] Make SLIRP Ethernet packets size to 64 bytes minimum Fabien Chouteau
2011-06-27 13:50 ` Stefan Hajnoczi
2011-06-27 14:23 ` Fabien Chouteau
2011-06-27 15:39 ` Stefan Hajnoczi
2011-06-27 16:12 ` Fabien Chouteau
2011-06-28 8:34 ` Stefan Hajnoczi
2011-06-28 9:08 ` Fabien Chouteau [this message]
2011-06-28 13:15 ` [Qemu-devel] [PATCH] Make SLIRP Ethernet packets size to 64 bytes minimuma Stefan Hajnoczi
2011-06-30 8:38 ` Fabien Chouteau
2011-07-05 14:24 ` Fabien Chouteau
2011-08-04 23:04 ` [Qemu-devel] [PATCH] Make SLIRP Ethernet packets size to 64 bytes minimum Edgar E. Iglesias
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E099A15.4050004@adacore.com \
--to=chouteau@adacore.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.