summaryrefslogtreecommitdiff
path: root/Documentation/watch_queue.rst
diff options
context:
space:
mode:
authorXiaoliang Yang <xiaoliang.yang_1@nxp.com>2020-09-30 01:27:22 +0300
committerDavid S. Miller <davem@davemloft.net>2020-09-29 18:26:12 -0700
commited5672d82c5f0a0d3438cc6752e971dc2775cd4e (patch)
tree9ffa138b9c206b54063fcafc4a74fdb0e662522f /Documentation/watch_queue.rst
parent3c0e37a9e4021ccbf855dfcbc5aff1ca10487cd4 (diff)
net: mscc: ocelot: return error if VCAP filter is not found
Although it doesn't look like it is possible to hit these conditions from user space, there are 2 separate, but related, issues. First, the ocelot_vcap_block_get_filter_index function, née ocelot_ace_rule_get_index_id prior to the aae4e500e106 ("net: mscc: ocelot: generalize the "ACE/ACL" names") rename, does not do what the author probably intended. If the desired filter entry is not present in the ACL block, this function returns an index equal to the total number of filters, instead of -1, which is maybe what was intended, judging from the curious initialization with -1, and the "++index" idioms. Either way, none of the callers seems to expect this behavior. Second issue, the callers don't actually check the return value at all. So in case the filter is not found in the rule list, propagate the return code. So update the callers and also take the opportunity to get rid of the odd coding idioms that appear to work but don't. Signed-off-by: Xiaoliang Yang <xiaoliang.yang_1@nxp.com> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'Documentation/watch_queue.rst')
0 files changed, 0 insertions, 0 deletions