VirtualBox

Ticket #9422 (closed defect: fixed)

Opened 3 years ago

Last modified 6 months ago

NetWare 6.5 SP8 install CD crashes (Guru Meditation) if VT-x is enabled -> fixed in SVN

Reported by: kumba Owned by:
Priority: major Component: other
Version: VirtualBox 4.0.12 Keywords:
Cc: Guest type: other
Host type: Windows

Description (last modified by michaln) (diff)

Attempting to load NetWare 6.5 SP8 on VBox 4.0.12, while having VT-x/AMD-V enabled will trigger a Guru Meditation crash of the VM several minutes after booting.

First, one MUST boot the CD using the "fd32e.img" floppy image, otherwise, the int13 fatal error happens (I'll file a separate ticket for that). Unfortunately, the direct image file is gone, but fd32de.exe can be opened in 7-Zip (or similar tools), and the "fd32e.ima" file extracted and renamed to fd32e.img to supplant this:  http://www.veder.com/ftp/nwdsk/fd32e.exe

Afterwards, boot the NW65OSSP8a.ISO from Novell's website with VT-x/AMD-V enabled. It will say something like: "Preparing to install NetWare ......."

And the dots will disappear once a second as a countdown to abort the install. After that, it will sit silent for at least a minute or two. Then, the NW Kernel will load. when it goes to check the local drives, it will crash the VM and a Guru Meditation box will pop up.

I have attached the logfile of the Guru Meditation, my VBox configuration, and a screenshot of the point at which NetWare dies.

I have found that by disabling VT-x, it will run fine, albeit a little sluggishly. I have not tested this on 4.1.0, because I have a Windows Server 2003 Guest that will Blue Screen on that release, so I am using 4.0.12 for now.

Attachments

VBox.log Download (146.3 KB) - added by kumba 3 years ago.
VBox log of the VM bootup, including Guru Meditation output.
VBox.png Download (3.9 KB) - added by kumba 3 years ago.
Screenshot of the NetWare bootup when the crash happens.
NetWare (Laurelin).vbox Download (7.2 KB) - added by kumba 3 years ago.
Config file for the VM instance that runs NetWare
VBox.2.log Download (155.6 KB) - added by mickecarlsson 20 months ago.
Log file, running on an i7

Change History

Changed 3 years ago by kumba

VBox log of the VM bootup, including Guru Meditation output.

Changed 3 years ago by kumba

Screenshot of the NetWare bootup when the crash happens.

Changed 3 years ago by kumba

Config file for the VM instance that runs NetWare

comment:1 Changed 3 years ago by kumba

I suspect Ticket #9156 might be related to this. Doesn't look like there are any updates to that ticket, however. Hopefully the information I have provided will help to solve both.

comment:2 Changed 3 years ago by kumba

Okay, ignore the bit about the int13_diskette_function error (covered already by Ticket #8893). I didn't think to just remove the floppy drive, which got rid of that error. I am about to try FreeDOS, though, so I'll test that and see if the same problem arises. Looks like the DOS emulation doesn't handle an empty floppy drive very well.

comment:3 follow-up: ↓ 7 Changed 3 years ago by kumba

Per this topic here:  http://forums.virtualbox.org/viewtopic.php?f=4&t=43792

It appears there is an implementation bug in the VT-x support for Intel Core2 chips that manifests itself with the NetWare 6.5 installer. The issue is not present in i-series chips from Intel, which apparently have a better implementation of VT-x.

comment:4 Changed 2 years ago by frank

Still relevant with VBox 4.1.6? If so, does changing the chipset type from ICH9 to PIIX3 change anything?

comment:5 follow-up: ↓ 6 Changed 2 years ago by kumba

Changing the chipset type does not affect NetWare 6.5's problem. You have to have VT-x disabled on Intel Core2 systems, otherwise, even an installed image will hang at the bootloader stage (it'll say "Press any key to interrupt"). So the VT-x/Core2 bug is still present in 4.1.6.

comment:6 in reply to: ↑ 5 Changed 2 years ago by kumba

Additionally, 4.1.6 somehow causes NetWare 6.5, once you disable VT-x, to not load its SYS volume, so the server will just drop you off at an unnamed console prompt. Toolbox (TBX.NLM) is loadable, but the only available volumes are the _ADMIN and C:\ volumes. Not really sure what is wrong there. I had to switch back to 4.0.14 to get it to boot again.

comment:7 in reply to: ↑ 3 Changed 2 years ago by frank

Replying to kumba:

It appears there is an implementation bug in the VT-x support for Intel Core2 chips that manifests itself with the NetWare 6.5 installer. The issue is not present in i-series chips from Intel, which apparently have a better implementation of VT-x.

No, I rather think that this problem is not triggered if "nested paging" is active. Core 2 processors don't have this feature.

comment:8 Changed 2 years ago by frank

Could you also post a VBox.log file from VBox 4.1.6?

comment:9 Changed 2 years ago by kumba

When I had 4.1.6 installed, I tried booting my NetWare install both with and without Nested Paging enabled. No change. It's the VT-x checkbox that determines if it boots or not. Mind you, I am using the NetWare bootloader, versus letting it load up DRDOS and then the NW kernel (SERVER.EXE) unloading DRDOS from memory. I do not know if that has an effect either. Don't know when I will get around to trying 4.1.x again...I use these VMs for various things.

You can fetch a NetWare 6.5 SP8 install CD off of Novell's site for free to do testing. Then use the fd32e.img file to boot the CD and test with VT-x on and off on an Intel Core2 box to trigger my original issue with VT-x and Guru Meditation. I suspect the same problem manifests itself after an installation with the NW bootloader not executing, just it freezes instead of triggering a GM.

If I have time, I'll try 4.1.6 again this weekend and get a VBox.log of the bootloader freezing both with VT-X and Nested Paging, and VT-x by itself. Is here a way to enable verbose debug output? A quick run through the log I posted a few weeks ago doesn't seem to have a whole lot of technical detail.

comment:10 Changed 2 years ago by kumba

Just an update, Upgraded to a Core i7 and NetWare loads fine now w/ VT-x and Nested Paging.

It still has issues with 4.1.8 not loading the SYS volume properly. Also of note, NetWare seems to tax the CPU still. I thought this was an issue with the older Core2 Q9550 that I had, but this might just be the way the NW kernel runs.

comment:11 Changed 2 years ago by kumba

Thinking about it, someone can close this ticket unless anyone feels a need to keep it open to get VT-x/Nested Paging to work under the older Core2 series. I'll create a new ticket for the SYS volume thing.

comment:12 Changed 20 months ago by mickecarlsson

Happens in 4.1.22 r80657. Running on an i7. Nested Paging and VT-x enabled. Log file attached.

Changed 20 months ago by mickecarlsson

Log file, running on an i7

comment:13 Changed 20 months ago by mickecarlsson

See also #9156

comment:14 follow-up: ↓ 16 Changed 11 months ago by michaln

  • Description modified (diff)
  • Summary changed from NetWare 6.5 SP8 install CD crashes (Guru Meditation) if VT-x is enabled to NetWare 6.5 SP8 install CD crashes (Guru Meditation) if VT-x is enabled -> fixed in SVN

The guru meditation errors came up on Intel CPUs without unrestricted execution support. Unrestricted execution in VT-x requires nested paging but is not available on all Intel processors which support nested paging. The Core i7 Q 740 in comment 12 is one example of such a CPU. This will be fixed in the next major release.

There will be additional fix to get reasonable NetWare guest performance without nested paging. That problem is caused by the fact that for some reason NetWare does not enable the CR0.WP bit, which is extremely unusual for an OS which requires any 486 and later CPU and causes problems with shadow paging.

comment:15 Changed 11 months ago by kumba

The one thing to keep in mind about NetWare is it's a fairly weird kernel and more of a NOS (network OS) than a general purpose OS. Knowing Novell's engineers, they probably cut corners in some really artistic ways to favour performance in a file server and user accounting role that wouldn't work in other OSes like Windows or Linux.

I take it by "next major release", we're talking the 4.4.x series, or will this appear in the next 4.2.x update?

comment:16 in reply to: ↑ 14 Changed 11 months ago by kumba

Replying to michaln:

There will be additional fix to get reasonable NetWare guest performance without nested paging. That problem is caused by the fact that for some reason NetWare does not enable the CR0.WP bit, which is extremely unusual for an OS which requires any 486 and later CPU and causes problems with shadow paging.

Good old StackOverflow actually has an answer describing the CR0.WP bit:

 whats the purpose of x86 cr0 WP bit?

comment:17 Changed 11 months ago by michaln

Take the "next major release" to mean whatever comes after 4.2.x. Whether it's going to be called 4.4 or something else is not too relevant :) And yes, that's where the changes will be, not 4.2.x.

Not setting CR0.WP isn't exactly cutting corners. The bit was added in the 486 to facilitate an efficient implementation of UNIX style copy-on-write (COW) memory (like StackOverflow suggests), but NetWare was designed for the 386 and presumably simply doesn't need/use COW. It's simply something that can get in the way when virtualizing. Just about every other OS does use COW in some form, or at least wants the ability to write-protect certain pages even in kernel mode, so NetWare stands out. On physical hardware it makes no difference.

To be honest, I don't know what Intel was thinking when they designed the 386. The concept of having every page writable by kernel code isn't really all that useful.

comment:18 Changed 7 months ago by frank

The fix is contained in VBox 4.3 Beta 2. Please give it a try.

comment:19 Changed 6 months ago by frank

  • Status changed from new to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use