Messages in this thread | | | Date | Mon, 09 Jun 2003 09:59:52 -0700 | From | Matthew Dobson <> | Subject | Re: [patch] use valid value when unmapping cpus |
| |
Matt Mackall wrote: > On Wed, Jun 04, 2003 at 02:26:22PM -0700, Matthew Dobson wrote: > >>For some unknown reason, we stick a -1 in cpu_2_node when we unmap a cpu >>on i386. We're better off sticking a 0 in there, because at least 0 is >>a valid value if something references it. -1 is only going to cause >>problems at some point down the line. > > > Problems down the line help you find the bogus dereference. Even > better to stick a poison value in there.
Well, it's not really a dereference issue. The function, cpu_to_node() just returns an integer which is the node that particular CPU is on. This should always return a valid value. This is used in many places, often as a direct index into an array, and we shouldn't have to check its return value everywhere. The default behavior is to just return 0, because 0 is a valid node, even for UP/SMP. The array of CPU -> node mappings is initialized to 0's on i386 already, so unmapping a CPU should return this mapping to its uninitialized state.
Cheers!
-Matt
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |