sfc: Allow filter removal only with exactly matching priority
authorBen Hutchings <bhutchings@solarflare.com>
Thu, 21 Nov 2013 19:11:47 +0000 (19:11 +0000)
committerBen Hutchings <bhutchings@solarflare.com>
Thu, 12 Dec 2013 22:07:24 +0000 (22:07 +0000)
commitf72848021d603846be8aed662bd23372c7d6688e
tree0f00651fea224462fdc224b97fa0240507d599bd
parentb59e6ef87c337541c1c57742116d780813c9601c
sfc: Allow filter removal only with exactly matching priority

Currently a higher priority client can remove a lower priority
client's filter with equal match-expression.  This might happen if (a)
the higher priority client has a double-free bug, or (b) another
client with sufficient priority replaced and then removed an equal
filter, allowing the low priority client to insert an equal filter.

In neither case does it actually make sense to carry out the removal;
we should say the filter doesn't exist, as the filter currently
present is not the one that the high-priority client is referring to.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
drivers/net/ethernet/sfc/ef10.c
drivers/net/ethernet/sfc/farch.c