diff options
author | Steen Hegelund <steen.hegelund@microchip.com> | 2022-11-18 00:31:08 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-11-21 14:33:02 +0300 |
commit | 277e9179efe5cf3719c7cf181404d26a348c37cf (patch) | |
tree | 8997ce3bd16ebf204615a4eb2070aa4512bc5722 /drivers | |
parent | bcddc196d48182fbbe4b0add157baf50ae0e3d52 (diff) | |
download | linux-277e9179efe5cf3719c7cf181404d26a348c37cf.tar.xz |
net: microchip: sparx5: Ensure VCAP last_used_addr is set back to default
This ensures that the last_used_addr in a VCAP instance is returned to the
default value when all rules have been deleted.
Signed-off-by: Steen Hegelund <steen.hegelund@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/microchip/vcap/vcap_api.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/microchip/vcap/vcap_api.c b/drivers/net/ethernet/microchip/vcap/vcap_api.c index d12c8ec40fe2..24f4ea1eacb3 100644 --- a/drivers/net/ethernet/microchip/vcap/vcap_api.c +++ b/drivers/net/ethernet/microchip/vcap/vcap_api.c @@ -1249,9 +1249,9 @@ int vcap_del_rule(struct vcap_control *vctrl, struct net_device *ndev, u32 id) vctrl->ops->init(ndev, admin, admin->last_used_addr, ri->size + gap); kfree(ri); - /* Update the last used address */ + /* Update the last used address, set to default when no rules */ if (list_empty(&admin->rules)) { - admin->last_used_addr = admin->last_valid_addr; + admin->last_used_addr = admin->last_valid_addr + 1; } else { elem = list_last_entry(&admin->rules, struct vcap_rule_internal, list); |