[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <552C1773.3030907@gmail.com>
Date: Mon, 13 Apr 2015 12:22:27 -0700
From: Florian Fainelli <f.fainelli@...il.com>
To: sfeldma@...il.com, netdev@...r.kernel.org
CC: jiri@...nulli.us, roopa@...ulusnetworks.com, linux@...ck-us.net,
sridhar.samudrala@...el.com, ronen.arad@...el.com, andrew@...n.ch
Subject: Re: [PATCH net-next v4 03/24] switchdev: convert STP update to swdev
attr set
On 12/04/15 23:16, sfeldma@...il.com wrote:
> From: Scott Feldman <sfeldma@...il.com>
>
> STP update is just a writable port attribute, so convert swdev_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.
I now better understand the reason for introducing both the object and
transactional model, but that is really a dramatic change in the API
complexity now, and unfortunately this is reflected in the drivers using
it...
Can we try to classify switches by their underlying control/transport
bus, essentially sleeping vs. non-sleeping I/O operations and provide a
good enough abstraction from there which avoids drivers like rocker to
have to maintain a list of transactions?
--
Florian
--
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