RDMA/rtrs-srv: Set .release function for rtrs srv device during device init
authorMd Haris Iqbal <haris.iqbal@cloud.ionos.com>
Mon, 7 Sep 2020 10:22:16 +0000 (15:52 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Sep 2020 11:55:30 +0000 (13:55 +0200)
commit9f6550695d2587400d6a657a97ae24ecf491ba9e
tree0bef4b76891170f590f42ccfe4173aa3bf7a2e13
parent5bcd37b6bf21399cfed9b68c88b067928bbc404a
RDMA/rtrs-srv: Set .release function for rtrs srv device during device init

[ Upstream commit 39c2d639ca183a400ba3259fa0825714cbb09c53 ]

The device .release function was not being set during the device
initialization. This was leading to the below warning, in error cases when
put_srv was called before device_add was called.

Warning:

Device '(null)' does not have a release() function, it is broken and must
be fixed. See Documentation/kobject.txt.

So, set the device .release function during device initialization in the
__alloc_srv() function.

Fixes: baa5b28b7a47 ("RDMA/rtrs-srv: Replace device_register with device_initialize and device_add")
Link: https://lore.kernel.org/r/20200907102216.104041-1-haris.iqbal@cloud.ionos.com
Signed-off-by: Md Haris Iqbal <haris.iqbal@cloud.ionos.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Acked-by: Jack Wang <jinpu.wang@cloud.ionos.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c
drivers/infiniband/ulp/rtrs/rtrs-srv.c