Re: [RFC 3/5] IB/iser: use ib_client API to wrap ib_device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Why is this not needed for others as well?

Well, I can only consider nvme case, why it is not needed there, but in
other ULPs that can be probably a bug or they have other protections,
I do not know (seems net/rds/ib.c does nice things).

*_remove_one() callback will be firstly called if device is dying and
only then cm_handler() will get RDMA_CM_EVENT_DEVICE_REMOVAL. Order
matters.

NVMe host and target do flush_scheduled_work() in nvme[t]_rdma_remove_one(),
thus it is guaranteed that *_remove_one() is the last one who puts the
reference on the device, i.e.:

nvmet_rdma_remove_one(...)
{
      ...
      flush_scheduled_work();
      WARN_ON(!nvmet_rdma_dev_put(ndev));
}


I think it would be a good idea to do the same for iser.
If you don't have time, keep it as is, I'll try to find some time
to get it incrementally.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux