[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150506032217.GC1992@nanopsycho>
Date: Wed, 6 May 2015 05:22:17 +0200
From: Jiri Pirko <jiri@...nulli.us>
To: sfeldma@...il.com
Cc: netdev@...r.kernel.org, roopa@...ulusnetworks.com,
linux@...ck-us.net, f.fainelli@...il.com,
sridhar.samudrala@...el.com, ronen.arad@...el.com, andrew@...n.ch,
simon.horman@...ronome.com
Subject: Re: [PATCH net-next v5 05/21] switchdev: convert STP update to
switchdev attr set
Tue, May 05, 2015 at 07:34:41PM CEST, sfeldma@...il.com wrote:
>From: Scott Feldman <sfeldma@...il.com>
>
>STP update is just a settable port attribute, so convert
>switchdev_port_stp_update to an attr set.
>
>For rocker, support prepare-commit transaction model for setting STP state.
>This requires rocker to preallocate memory needed for the commit up front
>in the prepare phase. Since rtnl_lock is held between prepare-commit,
>store the allocated memory on a queue hanging off of the rocker_port.
>Also, in prepare phase, do everything right up to calling into HW. The
>same code paths are tranversed in the driver for both prepare and commit
>phases. In some cases, any state modified in the prepare phase must be
>reverted before returning so the commit phase makes the same decisions.
>
>For rocker, as a consequence of holding rtnl_lock in process context for
>all attr sets (and obj adds), all memory is GFP_KERNEL allocated and we
>don't need to busy spin waiting for the device to complete the command. So
>the bulk of this patch is simplifying the memory allocations to only use
>GFP_KERNEL and to remove the nowait flag and busy spin loop.
>
>For DSA, the prepare phase is skipped and STP updates are only done in the
>commit phase. This is because currently the DSA drivers don't need to
>allocate any memory for STP updates and the STP update will not fail to HW
>(unless something horrible goes wrong on the MDIO bus, in which case the
>prepare phase wouldn't have been able to predict anyway).
>
>Signed-off-by: Scott Feldman <sfeldma@...il.com>
Hmm. This patch looks like a squash of two independent patches. It would
be better to push alloc change and stp update change as separate
patches.
--
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