[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20131226.134138.788504695045417458.davem@davemloft.net>
Date: Thu, 26 Dec 2013 13:41:38 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: fw@...len.de
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH v2] macvlan: fix netdev feature propagation from lower
device
From: Florian Westphal <fw@...len.de>
Date: Thu, 26 Dec 2013 12:17:00 +0100
> There are inconsistencies wrt. feature propagation/inheritance between
> macvlan and the underlying interface.
>
> When a feature is turned off on the real device before a macvlan is
> created on top, these will remain enabled on the macvlan device, whereas
> turning off the feature on the lower device after macvlan creation the
> kernel will propagate the changes to the macvlan.
>
> The second issue is that, when propagating changes from underlying device
> to the macvlan interface, macvlan can erronously lose its NETIF_F_LLTX flag,
> as features are anded with the underlying device.
>
> However, LLTX should be kept since it has no dependencies on physical
> hardware (LLTX is set on macvlan creation regardless of the lower
> device properties, see 8ffab51b3dfc54876f145f15b351c41f3f703195
> (macvlan: lockless tx path).
>
> The LLTX flag is now forced regardless of user settings in absence of
> layer2 hw acceleration (a6cc0cfa72e0b6d9f2c8fd858aa,
> net: Add layer 2 hardware acceleration operations for macvlan devices).
>
> Use netdev_increment_features to rebuild the feature set on capability
> changes on either the lower device or on the macvlan interface.
>
> As pointed out by Ben Hutchings, use netdev_update_features on
> NETDEV_FEAT_CHANGE event (it calls macvlan_fix_features/netdev_features_change
> if needed).
>
> Signed-off-by: Florian Westphal <fw@...len.de>
> ---
> Changes since v1:
> - use netdev_update_features on NETDEV_FEAT_CHANGE event
Applied and queued up for -stable, thanks!
--
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