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.