Skip to contentSkip to conversation

stop NULL pointer dereference in __alloc_pages

PATCH New Martin J. Bligh 1 participant 1 message Apr 18, 2002

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 stop NULL pointer dereference in __alloc_pages

This trivial patch will apply to both 2.4.19-pre7 and 2.5.8 with just line offsets. It stops us from following a NULL pointer in classzone in the case where there is a pgdat without a fully populated zone list (ie a node with no ZONE_NORMAL on an ia32 NUMA machine). Without this patch, ia32 NUMA machines won't even boot - we dereference the classzone ptr a few lines further down (or try to ;-) ).

Please apply ...

Thanks,

Martin.

mm/page_alloc.c renamed from mm/page_alloc.c.old +2 -0
@@ -317,6 +317,8 @@
 
 	zone = zonelist->zones;
 	classzone = *zone;
+	if (classzone == NULL)
+		return NULL;
 	min = 1UL << order;
 	for (;;) {
 		zone_t *z = *(zone++);