Re: [2.6.28] NULL pointer dereference at get_stats()

From: Tetsuo Handa
Date: Tue Dec 30 2008 - 12:02:20 EST


Hello.

Frederik Deweerdt wrote:
> Does adding maxcpus=0 to the boot parameters solve the problem? Stephen
> suspected a per-cpu variable related problem.

No, but I got interestring results.

Result | # of virtual CPUs | Kernel command line
-------+-------------------+-----------------------------------------
OK | 2 | ro root=LABEL=/
BUG | 2 | ro root=LABEL=/ noapic nolapic
BUG | 2 | ro root=LABEL=/ noapic nolapic maxcpus=0
BUG | 2 | ro root=LABEL=/ noapic nolapic nosmp
BUG | 2 | ro root=LABEL=/ maxcpus=0
BUG | 2 | ro root=LABEL=/ nosmp
OK | 1 | ro root=LABEL=/
OK | 1 | ro root=LABEL=/ nolapic noapic
OK | 1 | ro root=LABEL=/ nolapic noapic maxcpus=0
OK | 1 | ro root=LABEL=/ nolapic noapic nosmp

"OK" means NULL pointer dereference didn't happen.
"BUG" means NULL pointer dereference happened.

I was adding "noapic" "nolapic" to command line while assigning 2 vcpus.
Thus, I encountered this problem. Workaround is to remove "noapic" "nolapic".

Now, it seems to me that this problem is caused by interaction of
"noapic" "nolapic" "maxcpus=0" "nosmp" options.

Regards.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/