* [PATCH net-next] macvlan: delay the header check for dodgy packets into lower device
@ 2014-11-26 9:21 Jason Wang
2014-11-26 20:37 ` David Miller
2014-11-30 4:45 ` David Miller
0 siblings, 2 replies; 4+ messages in thread
From: Jason Wang @ 2014-11-26 9:21 UTC (permalink / raw)
To: kaber, netdev, linux-kernel; +Cc: mst, vyasevic, Jason Wang
We do header check twice for a dodgy packet. One is done before
macvlan_start_xmit(), another is done before lower device's
ndo_start_xmit(). The first one seems redundant so this patch tries to
delay header check until a packet reaches its lower device (or macvtap)
through always enabling NETIF_F_GSO_ROBUST for macvlan device.
Cc: Patrick McHardy <kaber@trash.net>
Signed-off-by: Jason Wang <jasowang@redhat.com>
---
drivers/net/macvlan.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c
index bfb0b6e..11d4b35 100644
--- a/drivers/net/macvlan.c
+++ b/drivers/net/macvlan.c
@@ -742,11 +742,12 @@ static struct lock_class_key macvlan_netdev_xmit_lock_key;
static struct lock_class_key macvlan_netdev_addr_lock_key;
#define ALWAYS_ON_FEATURES \
- (NETIF_F_SG | NETIF_F_GEN_CSUM | NETIF_F_GSO_SOFTWARE | NETIF_F_LLTX)
+ (NETIF_F_SG | NETIF_F_GEN_CSUM | NETIF_F_GSO_SOFTWARE | NETIF_F_LLTX | \
+ NETIF_F_GSO_ROBUST)
#define MACVLAN_FEATURES \
(NETIF_F_SG | NETIF_F_ALL_CSUM | NETIF_F_HIGHDMA | NETIF_F_FRAGLIST | \
- NETIF_F_GSO | NETIF_F_TSO | NETIF_F_UFO | NETIF_F_GSO_ROBUST | \
+ NETIF_F_GSO | NETIF_F_TSO | NETIF_F_UFO | \
NETIF_F_TSO_ECN | NETIF_F_TSO6 | NETIF_F_GRO | NETIF_F_RXCSUM | \
NETIF_F_HW_VLAN_CTAG_FILTER | NETIF_F_HW_VLAN_STAG_FILTER)
--
1.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] macvlan: delay the header check for dodgy packets into lower device
2014-11-26 9:21 [PATCH net-next] macvlan: delay the header check for dodgy packets into lower device Jason Wang
@ 2014-11-26 20:37 ` David Miller
2014-11-27 5:14 ` Jason Wang
2014-11-30 4:45 ` David Miller
1 sibling, 1 reply; 4+ messages in thread
From: David Miller @ 2014-11-26 20:37 UTC (permalink / raw)
To: jasowang; +Cc: kaber, netdev, linux-kernel, mst, vyasevic
From: Jason Wang <jasowang@redhat.com>
Date: Wed, 26 Nov 2014 17:21:14 +0800
> We do header check twice for a dodgy packet. One is done before
> macvlan_start_xmit(), another is done before lower device's
> ndo_start_xmit(). The first one seems redundant so this patch tries to
> delay header check until a packet reaches its lower device (or macvtap)
> through always enabling NETIF_F_GSO_ROBUST for macvlan device.
>
> Cc: Patrick McHardy <kaber@trash.net>
> Signed-off-by: Jason Wang <jasowang@redhat.com>
Hmmm, it's the idea that if we have a dodgy packet, we want to
notice that as early as possible in the packet processing path?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] macvlan: delay the header check for dodgy packets into lower device
2014-11-26 20:37 ` David Miller
@ 2014-11-27 5:14 ` Jason Wang
0 siblings, 0 replies; 4+ messages in thread
From: Jason Wang @ 2014-11-27 5:14 UTC (permalink / raw)
To: David Miller; +Cc: kaber, netdev, linux-kernel, mst, vyasevic
On 11/27/2014 04:37 AM, David Miller wrote:
> From: Jason Wang <jasowang@redhat.com>
> Date: Wed, 26 Nov 2014 17:21:14 +0800
>
>> We do header check twice for a dodgy packet. One is done before
>> macvlan_start_xmit(), another is done before lower device's
>> ndo_start_xmit(). The first one seems redundant so this patch tries to
>> delay header check until a packet reaches its lower device (or macvtap)
>> through always enabling NETIF_F_GSO_ROBUST for macvlan device.
>>
>> Cc: Patrick McHardy <kaber@trash.net>
>> Signed-off-by: Jason Wang <jasowang@redhat.com>
>
> Hmmm, it's the idea that if we have a dodgy packet, we want to
> notice that as early as possible in the packet processing path?
>
Not late even with this patch. The check will be done immediately after
macvlan passing a packet to lower device which should be sufficient.
For good packets, this patch saves one time of header checking. For bad
packets, this patch just lets the dropping happens during the validation
before ndo_start_xmit() of lower device.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] macvlan: delay the header check for dodgy packets into lower device
2014-11-26 9:21 [PATCH net-next] macvlan: delay the header check for dodgy packets into lower device Jason Wang
2014-11-26 20:37 ` David Miller
@ 2014-11-30 4:45 ` David Miller
1 sibling, 0 replies; 4+ messages in thread
From: David Miller @ 2014-11-30 4:45 UTC (permalink / raw)
To: jasowang; +Cc: kaber, netdev, linux-kernel, mst, vyasevic
From: Jason Wang <jasowang@redhat.com>
Date: Wed, 26 Nov 2014 17:21:14 +0800
> We do header check twice for a dodgy packet. One is done before
> macvlan_start_xmit(), another is done before lower device's
> ndo_start_xmit(). The first one seems redundant so this patch tries to
> delay header check until a packet reaches its lower device (or macvtap)
> through always enabling NETIF_F_GSO_ROBUST for macvlan device.
>
> Cc: Patrick McHardy <kaber@trash.net>
> Signed-off-by: Jason Wang <jasowang@redhat.com>
Applied, thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-11-30 4:45 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-26 9:21 [PATCH net-next] macvlan: delay the header check for dodgy packets into lower device Jason Wang
2014-11-26 20:37 ` David Miller
2014-11-27 5:14 ` Jason Wang
2014-11-30 4:45 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).