Messages in this thread | | | From | Rusty Russell <> | Subject | Re: [PATCH v2] Check the node argument passed to cpumask_of_node | Date | Mon, 4 Jan 2010 14:58:22 +1030 |
| |
On Sat, 2 Jan 2010 04:45:47 pm David John wrote: > Commit e0cd516 "PCI: derive nearby CPUs from device's instead of bus' NUMA information" > causes an null pointer dereference when reading from the sysfs attributes local_cpu* > on Intel machines with no ACPI NUMA proximity info, since dev->numa_node gets set to -1 > for all PCI devices, which then gets passed to cpumask_of_node. > > Ensure that the node value is valid.
This only works for x86, and only for !CONFIG_DEBUG_PER_CPU_MAPS.
I suggest fixing the callers introduced in e0cd516 for the moment, then if you feel enthused, change the semantics of cpumask_of_node and remove the checks from the various callers.
(And please only check for -1: it has a special meaning, unlike other invalid numbers which indicate a bug).
Thanks, Rusty.
| |