VMware Cloud Community
hostasaurus
Enthusiast
Enthusiast

x86_64 guest won't boot after adding 2nd vCPU

Hello all, I've got a centos 5.5 x86_64 guest with 12 GB memory and one vCPU.  It has its primary partitions like / and /usr on ext3 the virtual LSI Logic SAS adapter, then after initial install, I install vmware tools and move /var and /tmp to pvscsi adapter along with the network card being replaced with vmxnet3.  This is on vsphere esxi 4.1 enterprise plus.

I needed to increase processing power for this guest so I increased cpu count from 1 to 2 and now the machine won't make it through boot; it starts the boot process fine, but when it gets to the part of mounting the pvscsi partitions it fails as if they're not there.  I enter single user mode and they'll mount fine.  The vmxnet3 eth0 won't work either, but if I down it and re-up it, it will start working.  It's almost as if by adding the second cpu, the vmware tools and associated drivers are now loading out of order.  So I switched it back to single cpu, it boots fine, I downloaded all the vmware tools rpm's manually, switch back to 2 cpu's, enter single user, manually mount /var and /tmp, remove the vmware tools, add them back in from the rpm's but that didn't fix the issue.  I was hoping maybe by reinstalling when two cpu's were present, whatever is causing them to fail would be wiped out and replaced.

The generic error I get at boot is the "no such file or directory while trying to open /dev/sdb1: the superblock could not be read or does not describe a correct ext3 filesystem...."  That's the first of the pvscsi partitions.  Swithc it back to one vCPU, no problems.

Any ideas?

0 Kudos
4 Replies
hostasaurus
Enthusiast
Enthusiast

Some additional info.  If I create a machine with two vCPU's, do the same install, tools, reboot, switch to pvscsi/vmxnet3, reboot, we're good.  Shut down, reconfigure for one vcpu, boot up, working fine.  Shutdown again, configure back to two vCPU's, we're still good.  So whatever the issue is, it can at least be avoided for future guests by doing the initial installs with multiple cpu's and then taking one away if the guest is not one that should have more than one cpu initially.

0 Kudos
DSTAVERT
Immortal
Immortal

Do you have a SMP kernel installed? If not I would try installing one before you add the second vCPU.

-- David -- VMware Communities Moderator
0 Kudos
hostasaurus
Enthusiast
Enthusiast

Yep, the default x86_64 kernel is smp.  When the bootup fails and I go into it in single user mode, both cpu's are visible.

0 Kudos
snorgy
Contributor
Contributor

Linux gets confused so you've got to append to your boot= line in grub.  You can do that if you hit a key when grub is starting, and you'll have the option to append to the boot line.  Add this at the end of grub's current boot= line:

clocksource=acpi_pm

Once you're up and running, add that to the end of your boot lines in grub.conf, so you don't have to type it yourself.

0 Kudos