From: Simon Horman <simon.horman@netronome.com>
To: Scott Feldman <sfeldma@gmail.com>, Jiri Pirko <jiri@resnulli.us>,
David Miller <davem@davemloft.net>
Cc: netdev@vger.kernel.org, Simon Horman <simon.horman@netronome.com>
Subject: [PATCH v2 net-next 0/4] rocker: transaction fixes
Date: Wed, 20 May 2015 11:00:08 +0900 [thread overview]
Message-ID: <1432087212-29612-1-git-send-email-simon.horman@netronome.com> (raw)
Hi,
this series addresses what appear to be errors in the handling of
prepare and then commit transactions in the rocker driver.
In all cases the problem is that data structures visible outside of
the transaction are modified during the prepare phase.
In the case of the first two patches this results in the kernel reporting a
BUG. I have noted test-cases in the change logs.
The third patch is also a bug fix, as noted by Toshiaki Makita,
however I have not been able to reliably reproduce the problem and
thus have not provided a test case.
The last patch is a correctness fix that does not fix a bug
that manifests as far as I can tell.
Changes: v1->v2
* Added Ack's from Scott
* Revised changelog of third patch to reflect information from Toshiaki Makita:
it seems there is a bug that can manifest
* Updated third patch to update address and ttl regardless of the
value of the transaction state
Simon Horman (4):
rocker: do not delete fdb entries in rocker_port_fdb_flush() when
preparing transactions
rocker: do not modify fdb table in rocker_port_fdb() when preparing
transactions
rocker: do not make neighbour entry changes when preparing
transactions
rocker: make rocker_port_internal_vlan_id_{get,put}()
non-transactional
drivers/net/ethernet/rocker/rocker.c | 46 +++++++++++++++++++-----------------
1 file changed, 24 insertions(+), 22 deletions(-)
--
2.1.4
next reply other threads:[~2015-05-20 2:00 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-20 2:00 Simon Horman [this message]
2015-05-20 2:00 ` [PATCH v2 net-next 1/4] rocker: do not delete fdb entries in rocker_port_fdb_flush() when preparing transactions Simon Horman
2015-05-20 2:00 ` [PATCH v2 net-next 2/4] rocker: do not modify fdb table in rocker_port_fdb() " Simon Horman
2015-05-20 2:00 ` [PATCH v2 net-next 3/4] rocker: do not make neighbour entry changes " Simon Horman
2015-05-20 3:16 ` Scott Feldman
2015-05-20 5:40 ` Simon Horman
2015-05-20 2:00 ` [PATCH v2 net-next 4/4] rocker: make rocker_port_internal_vlan_id_{get,put}() non-transactional Simon Horman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1432087212-29612-1-git-send-email-simon.horman@netronome.com \
--to=simon.horman@netronome.com \
--cc=davem@davemloft.net \
--cc=jiri@resnulli.us \
--cc=netdev@vger.kernel.org \
--cc=sfeldma@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).