net: marvell: prestera: Refactor get/put VR functions
authorYevhen Orlov <yevhen.orlov@plvision.eu>
Tue, 11 Jan 2022 01:10:14 +0000 (03:10 +0200)
committerJakub Kicinski <kuba@kernel.org>
Wed, 12 Jan 2022 18:16:55 +0000 (10:16 -0800)
commit6a1ba8758f67e37a48fd2f940032a2b186bcf021
tree4c5bc032483dc112791189c2981243f1c8f720f3
parent9c0c2c7aa23cbf78277557cfe8ec8bb7689225fe
net: marvell: prestera: Refactor get/put VR functions

* Use refcount, instead of uint
* Increment/decrement recount inside get/put
* Fix error path in __prestera_vr_create. Remove unnecessary kfree.
* Make __prestera_vr_destroy symmetric to "create"

Fixes: bca5859bc6c6 ("net: marvell: prestera: add hardware router objects accounting")
Signed-off-by: Yevhen Orlov <yevhen.orlov@plvision.eu>
Link: https://lore.kernel.org/r/20220111011014.4418-1-yevhen.orlov@plvision.eu
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/marvell/prestera/prestera_router_hw.c
drivers/net/ethernet/marvell/prestera/prestera_router_hw.h