Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma
Pull more rdma updates from Jason Gunthorpe: "This is the SMC cleanup promised, a randconfig regression fix, and kernel oops fix. Summary: - Switch SMC over to rdma_get_gid_attr and remove the compat - Fix a crash in HFI1 with some BIOS's - Fix a randconfig failure" * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: IB/ucm: fix UCM link error IB/hfi1: Invalid NUMA node information can cause a divide by zero RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr
This commit is contained in:
@@ -36,7 +36,7 @@ config INFINIBAND_USER_ACCESS
|
||||
rdma-core <https://github.com/linux-rdma/rdma-core>.
|
||||
|
||||
config INFINIBAND_USER_ACCESS_UCM
|
||||
bool "Userspace CM (UCM, DEPRECATED)"
|
||||
tristate "Userspace CM (UCM, DEPRECATED)"
|
||||
depends on BROKEN || COMPILE_TEST
|
||||
depends on INFINIBAND_USER_ACCESS
|
||||
help
|
||||
|
@@ -198,7 +198,7 @@ int node_affinity_init(void)
|
||||
while ((dev = pci_get_device(ids->vendor, ids->device, dev))) {
|
||||
node = pcibus_to_node(dev->bus);
|
||||
if (node < 0)
|
||||
node = numa_node_id();
|
||||
goto out;
|
||||
|
||||
hfi1_per_node_cntr[node]++;
|
||||
}
|
||||
@@ -206,6 +206,18 @@ int node_affinity_init(void)
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
out:
|
||||
/*
|
||||
* Invalid PCI NUMA node information found, note it, and populate
|
||||
* our database 1:1.
|
||||
*/
|
||||
pr_err("HFI: Invalid PCI NUMA node. Performance may be affected\n");
|
||||
pr_err("HFI: System BIOS may need to be upgraded\n");
|
||||
for (node = 0; node < node_affinity.num_possible_nodes; node++)
|
||||
hfi1_per_node_cntr[node] = 1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void node_affinity_destroy(struct hfi1_affinity_node *entry)
|
||||
@@ -622,8 +634,14 @@ int hfi1_dev_affinity_init(struct hfi1_devdata *dd)
|
||||
int curr_cpu, possible, i, ret;
|
||||
bool new_entry = false;
|
||||
|
||||
if (node < 0)
|
||||
node = numa_node_id();
|
||||
/*
|
||||
* If the BIOS does not have the NUMA node information set, select
|
||||
* NUMA 0 so we get consistent performance.
|
||||
*/
|
||||
if (node < 0) {
|
||||
dd_dev_err(dd, "Invalid PCI NUMA node. Performance may be affected\n");
|
||||
node = 0;
|
||||
}
|
||||
dd->node = node;
|
||||
|
||||
local_mask = cpumask_of_node(dd->node);
|
||||
|
Reference in New Issue
Block a user