-
Notifications
You must be signed in to change notification settings - Fork 494
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NAS-127697 / 24.10 / Allow RDMA capable interfaces to be exposed for regular networking #13289
Conversation
When JBOF support was added, we added *all* RDMA interfaces to rdma.interface.internal_interfaces. Instead only add those currently in use for JBOF purposes. Likewise, in rdma.get_link_choices omit any interfaces that have been configured for general networking.
@yocalebo I added |
[['int_dhcp', '=', True], | ||
['int_address', '!=', '']]]] | ||
options = {'select': ['int_interface']} | ||
result = [i['int_interface'] for i in await self.middleware.call('datastore.query', 'network.interfaces', filters, options)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
datastore.query network.interfaces
is doing the exact same thing as interface.query
with the only exception of not joining all the other related tables. Furthermore, our customers configure "empty" parent interfaces and place VLANs on top of them so your filters will actually exclude the results.
We just need to run interface.query
here and inside the for ifname, info in ifaces.items()
loop, we need to result.append(ifname)
Finally, I do agree that this should not be in the rdma
namespace. We should put it in interface
namespace.
Move rdma.get_configured_interfaces to interface.get_configured_interfaces and reimplement
This PR has been merged and conversations have been locked. |
When JBOF support was added, we added all RDMA interfaces to
rdma.interface.internal_interfaces
. Instead only add those currently in use for JBOF purposes.Likewise, in
rdma.get_link_choices
omit any interfaces that have been configured for general networking.