On Wed, Jan 27, 2021 at 12:42:09AM +0000, Saleem, Shiraz wrote:
quoted
It does, the PCI driver is not supposed to spawn any aux devices for RDMA at all
if RDMA is disabled.
For an iWarp driver I would consider ENABLE_ROCE to really be a general
ENABLE_RDMA.
Well the driver supports iWARP and RoCE for E810 device.
Are you saying that this generic enable_roce devlink param really
is an enable 'rdma' traffic or not param?
I've thought of it that way, that is what it was created for at least.
Overloading it to be a iwarp not roce switch feels wrong
quoted
Are you sure you need to implement this?
What we are after is some mechanism for user to switch the protocols iWARP vs RoCE
[default the device comes up as an iWARP dev]. The protocol info is really needed early-on
in the RDMA driver.probe(). i.e. when the rdma admin queue is created.
This needs to be a pci devlink at least, some kind of mode switch
seems appropriate
The same goes with the other param resource_limits_selector. It's a
profile selector that a user can chose to different # of max QP,
CQs, MRs etc.
And it must be done at init time? Also seems like pci devlink
Generally speaking anything that requires the rdma driver to be
reloaded should remove/restore the aux device.
Mode switch from roce to/from iwarp should create aux devices of
different names which naturally triggers the right kind of sequences
in the driver core
Jason