[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <51506F9602000078000C8277@nat28.tlf.novell.com>
Date: Mon, 25 Mar 2013 14:39:02 +0000
From: "Jan Beulich" <JBeulich@...e.com>
To: <david.vrabel@...rix.com>, "Wei Liu" <wei.liu2@...rix.com>
Cc: <ian.campbell@...rix.com>, <xen-devel@...ts.xen.org>,
<annie.li@...cle.com>, <konrad.wilk@...cle.com>,
<netdev@...r.kernel.org>
Subject: Re: [Xen-devel] [PATCH 2/6] xen-netfront: reduce gso_max_size
to account for ethernet header
>>> On 25.03.13 at 15:23, David Vrabel <david.vrabel@...rix.com> wrote:
> On 25/03/13 11:08, Wei Liu wrote:
>> The maximum packet including ethernet header that can be handled by netfront
> /
>> netback wire format is 65535. Reduce gso_max_size accordingly.
>>
>> Drop skb and print warning when skb->len > 65535. This can 1) save the effort
>> to send malformed packet to netback, 2) help spotting misconfiguration of
>> netfront in the future.
> [...]
>> --- a/drivers/net/xen-netfront.c
>> +++ b/drivers/net/xen-netfront.c
>> @@ -547,6 +547,18 @@ static int xennet_start_xmit(struct sk_buff *skb, struct
> net_device *dev)
>> unsigned int len = skb_headlen(skb);
>> unsigned long flags;
>>
>> + /* Wire format of xen_netif_tx_request only supports skb->len
>> + * < 64K, because size field in xen_netif_tx_request is
>> + * uint16_t. If skb->len is too big, drop it and alert user about
>> + * misconfiguration.
>> + */
>> + if (unlikely(skb->len >= (uint16_t)(~0))) {
>
> Suggest a #define for this maximum added to include/xen/interface/io/netif.h
I don't see a point in doing so. If you want the connection to be
explicit, just use typeof() here instead of uint16_t.
Jan
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists