SteveMcG
Contributor
Contributor

VT support for Sony Vaio

I have just bought an FZ11Z which comes with the Intel Core 2 Duo T7300 processor. One of the key attractions for me was that this processor is 64 bit and comes with virtualisation support. http://www.intel.com/products/processor/core2duo/specifications.htm

I also ran the detection utility on the VMWare website and it confirms it is able to run 64 bit guests, so I can create 64 bit Virtual Machines.

Now here comes the problem. Vmware support the processor, but to get it to work properly I need to be able to enable VT support in the BIOS, but the BIOS is rather basic and doesnt give me the option.

The official Sony line is that VT "Is not supported" (a horrible phrase that!) but there is no explanation to support that statement.

Being the devious teccy that I am, I am sure that there must be a BIOS somewhere that is not locked down by the manufacturer that will enabe me to get to those settings. (Losing warranty is not important to me)

Has anyone looked into this before at all, and be willing to share their experiences with me? (I guess my perfect answer would be a link to a commercially available unlocked BIOS!)

108 Replies
saxa
Expert
Expert

Steve,

bring that notebook back to the shop and purchase some adequate one. Made by some other manufacturer.

>>The official Sony line is that VT "Is not supported" (a horrible phrase that!) but there is no explanation to support that statement.

Well, obviously they don't want to support it \_on your model_. Just marketing trick... They'd preinstalled Vista Home on it, right? It means, your notebook is a consumer product. And consumers do not need VT.

>>I am sure that there must be a BIOS somewhere that is not locked down by the manufacturer that will enabe me to get to those settings.

Sure there could be the one. But you'll never get it. Unfortunately. They won't give it to you.

0 Kudos
admin
Immortal
Immortal

The big question is whether or not the BIOS locks the feature control MSR. If it leaves the feature control MSR unlocked, it is possible to enable VT through privileged software after boot. Please download this ISO , burn it to a CD and boot from that CD.

If it reports your feature control MSR is locked with VT disabled, you are out of luck. If it reports that your feature control MSR is unlocked, there is a software solution.

0 Kudos
avarcher
Commander
Commander

Hi, I cant get the link to work, forbidden!!

0 Kudos
admin
Immortal
Immortal

Please try again.

0 Kudos
avarcher
Commander
Commander

Perfect, thanks.

0 Kudos
RDPetruska
Leadership
Leadership

You might just want to reconsider your Sony purchase, and go with a company that actually cares about their customers and their products. See http://www.janegalt.net/archives/009884.html for a wonderful story of "How NOT to do Customer Support".

0 Kudos
saxa
Expert
Expert

>>You might just want to reconsider your Sony purchase, and go with a company that actually cares about their customers and their products.

Rob, I would assign 1000 points to you for this sentence only Smiley Wink

0 Kudos
cvo8210
Contributor
Contributor

Could you please elaborate the "software solution" to enable VT through setting feature control MSR?

Thanks

0 Kudos
admin
Immortal
Immortal

The feature control MSR (MSR 0x3a) has two bits of interest for VT: the VMXON enable bit (bit 2) and the lock bit (bit 0). If the lock bit is clear, the contents of the MSR can be changed by the wrmsr instruction. If the lock bit is set, the contents of the MSR cannot be changed, except by cycling power to the CPU, which resets the MSR to 0.




For VT to work, both of these bits must be set.



A BIOS that explicitly disables VT will leave the VMXON enable bit clear and set the lock bit. If your BIOS does this, your only recourse is to change the behavior of the BIOS. However, some BIOSes may just leave the MSR at its power-on value of 0. In this state, the MSR can still be changed by privileged (CPL 0) software (e.g. a kernel module).



Note that on a multiprocessor/multicore system, each core has its own feature control MSR, and the two bits must be set on all processors where you want to use VT. Some BIOSes only set the bits on one core. To further complicate matters, the MSR has to be set again each time the system awakens from deep sleep (S4), since the processor loses power in that state. Some BIOSes fail to set the MSR when awakening from S4.


An unofficial kernel module that handles all of this is available for Mac OS. Linux or Windows users would have to write their own kernel module at this time. I understand that the Windows module is pretty straightforward, but that a general Linux solution is complicated by the fact that the Linux power management APIs keep changing.



Ultimately, this is likely to be addressed internally in some future release of Workstation.

0 Kudos
cvo8210
Contributor
Contributor

Thanks a lot for explaining this.

0 Kudos
scuderiaconchig
Contributor
Contributor

I ran the diagnostic and all I received was "VT is disabled in the feature control MSR". I got this for each of the two cores. But there was no indication if the MSR was locked or not. There were a couple of screens that flashed by without any pause, not sure if those told the tale on the MSR lock or not. Can you offer any insight?

Thanks,

Gary

P.S. Assuming the MSR is not locked how would one go about finding the privilege level software to enable VT?

0 Kudos
admin
Immortal
Immortal

That tool could be more informative. It reports only bit settings that preclude the use of VT. Therefore, it reports when VT is disabled in the feature control MSR or when the feature control MSR is unlocked. The messages appear adjacent to each other, so if you saw one, you would have seen them both. If it said nothing about the lock bit, then the lock bit is set.

In short, you are at the mercy of your system vendor to provide you with a BIOS that allows you to enable VT.

0 Kudos
scuderiaconchig
Contributor
Contributor

That tool could be more informative. It reports only

bit settings that preclude the use of VT. Therefore,

it reports when VT is disabled in the feature control

MSR or when the feature control MSR is unlocked. The

messages appear adjacent to each other, so if you saw

one, you would have seen them both. If it said

nothing about the lock bit, then the lock bit is

set.

In short, you are at the mercy of your system vendor

to provide you with a BIOS that allows you to enable

VT.

I ran it again and only saw the one message for each core. There was nothing about the lock status at all. I am a bit confused by "messages appear adjacent to each other, so if you saw one, you would have seen them both". By adjacent do you mean one after the other or literally one next to the other? And are you talking about the two cores, or the two status indications, ie the VT bit and the MSR lock status?

I guess from the last sentence about the lock bit, that the app only reports if the lock bit is NOT set.

Thanks,

Gary

0 Kudos
admin
Immortal
Immortal

If the lock bit was clear, you would have seen the following two messages on consecutive lines:

CPU 0: Feature control MSR is unlocked!

CPU 0: VT is disabled in the feature control MSR!

Sorry.

0 Kudos
bfroemel
Contributor
Contributor

There is a tool out there, called symcmos from Phoenix Ltd, e.g. here:

http://www.filewatcher.com/b/ftp/ftp.supermicro.com/utility.0.0.html

I own a SZ1XP (architecture is very similar to other VAIOs based on Intel Core Duo (2)) and used it to enable the VT feature by means of a dos bootdisk and dumping my original cmos settings:

symcmos -v2 -lcmos.sav

editing register 399 from \[0000] to \[0001] and loaded the modified settings back:

symcmos -v2 -ucmos.sav

Now the catch: this register is possibly only valid for my model and the latest available Bios (R0092N0) for it - so it's still somewhat risky to find the correct register by trial/error. Also there are a lot of them... but it's doable. I only found one show-killer - a single register will pop up a red line and asks something like: "Do you really want to enable Service/Rescue Mode? (y/n)" --> don't get tempted, it's a trick (or an old leftover or something else): if you press 'y', anything which prints more than a few lines out will freeze the system - even the bios menu itself. If something goes terribly wrong (like this show-killer)- you need to either run the tool again with parameter -d (clear cmos) or if you can't do this anymore, disassemble the laptop and disconnect the cmos battery.

By the way, I also tried the other way and used this Phoenix Bios Editor Pro tool (V2.1) - just do a search on the intel.com download center for "phoenix" and get BiosEdit2100.zip - they intented it for logo change, but it's the real deal to even build bios images. I am sure, it would work great, if Sony isn't so much "stay customized with every piece of OEM product you've bought in": A modified bios (where e.g. the VT feature is enabled) is generated without errors or warnings, BUT it will destroy any ACPI related functionality and do other nasty things, if really flashed. This means: WinXP will not boot anymore (BSOD) and Linux will work only when pnpbios and acpi is disabled. Without WinXP you can't flash a good bios back - so you are basically lost: no DOS tools or Phoenix CRISIS recovery disk will save you: Sony made sure of it (bios image and flash procedure is customized and there is no DOS version available).

Needless to say that you void your warranty and will possibly turn your laptop into a brick if you follow any of my instructions - for me it worked out fine and if I've found the info I just posted it would have saved me a lot of time and stress Smiley Wink

Cheers,

Bernhard

0 Kudos
scuderiaconchig
Contributor
Contributor

Thanks! But that is a bit to scary for me. Even the prospect of doing the first method gives me the willies!

I am afraid I might brick this FZ190. Of course I guess worst case with method one I could just pull the CMOS battery, right? Is there any chance of bricking using method one?

I assume the process is change a register, boot the test app, see if the VT bit is set. If not, run the cmos change app restore the register, change the next register. Repeat.

Gary

0 Kudos
bfroemel
Contributor
Contributor

I assume the process is change a register, boot the

test app, see if the VT bit is set. If not, run the

cmos change app restore the register, change the next

register. Repeat.

You could do it that way (change only registers which are set to \[0000] and leave all other alone) one by one and spend a lot of hours or you could just set the first half of all zeroed registers to one, check if the VT bit is set, if no: restore your original cmos and try the other half - if yes: only change half of the registers to one within the found set, check again and repeat (binary search principle).

But I would try register 399 (on line 210 of the generated cmos file) first - maybe you're lucky!

I am afraid I might brick this FZ190. Of course I

guess worst case with method one I could just pull

the CMOS battery, right? Is there any chance of

bricking using method one?

Not that I could think of. If I'd design the bios, I would not ultimately trust the settings read from cmos (there could be corruption or a changed layout after a bios update where the checksum is still valid for invalid data) and thus would not trigger any functionality which permanently bricks the boot process.

Good luck and let me know about the outcome, if you try it!

0 Kudos
scuderiaconchig
Contributor
Contributor

Alright, now you have me tempted. Was there any issue with the setting persisting? Did a coldboot cause it to be reset or anything? I realize a BIOS "restore defaults" would do so, but is there any other issue?

BTW how much a performance difference did you see in a vm with the bit set?

Thanks,

Gary

0 Kudos
bfroemel
Contributor
Contributor

'Restore Defaults' will change all settings back. Like I said, there is only one range (or even only one register) which could cause real troubles - maybe (after I played a little bit more around) unrelated to the register which causes the red lined question during boot up to turn on 'Service/Repair/Debug mode': So I highly recommend to get rid of boot/bios passwords and fingerprint protection (if your notebook has one) - so that you can at least boot into DOS and clear the CMOS without the need to open the laptop and remove the battery (which, by the way, works great too).

Sorry, no performance tests - currently not even a VMware installation and I wouldn't expect any or much gains there: a guest has already run only within a margin of 5-10% slower than on real hardware before VT was there.

0 Kudos