It can be problematic to move an OS image between physical systems, as there is a bunch of state about the hardware persistently stored. For example, the errata manager (uses errata.inf) on detecting buggy hardware can set assorted hack flags to get things like the PCI bus driver to correctly deal with the buggy hardware. Another example of hardware state stored in the image is the memory bad block list, which is stored in the BCD file, and is updated when the OS detects things like correctable memory errors. Correctable memory errors are a good predictor of uncorrectable ones, so to maximize system reliability, you do want to track the history and take pages of memory that are at risk of failing out of service.
I know some people seem to treat disk images on physical systems as if they were on VMs. On a VM, a bunch of the underlying hardware reality is smoothed out by the hypervisor, running the VM image in a “logically perfect” virtual environment.
The official way to make reference Windows OS images involves the sysprep utility, which clears out a bunch of hardware specific state. On booting a reference image on new hardware, a variety of hardware detection can then be run without leftover data from some previous system.
Jan
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Bedanto
Sent: Monday, May 19, 2014 11:10 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] How to debug 0x7B
After a lot of debugging finally we could fix the issue. I am posting the root cause for the benefit of the future reader.
Thanks to everyone here at OSR forums who tried to help even though there wasn’t much to proceed with…
The backed up machine had the registry value: HackFlags = 32. This means system from which we took this backup had PNP PCI setting in BIOS to limit resource allocation to 0x00000020 (32 decimal) and OS was able to allocate resources to all PCI devices and boot properly.
However, while doing Bare metal restore, on the restored machine BIOS PNP PCI setting may have a higher value than 32. In your case this value on the target machine was 64 (and this is lowest setting in BIOS of target machine). Hence during restart OS was not able to allocate resource for all
64 PCI devices and resulted in BSOD.
From inputs gained from multiple forum discussions, it seems that if this key is present then the OS will limit resource allocation according to the value present in key. If this regvalue is not present then OS allocates resource based on need and hence by deleting this key we allowed the OS to allocate the resources as needed.
To summarize:
Fix for this issue would be to either delete this RegValue or set value according to BIOS value from target machine.
Backed up machine’s value for this key:
[HKEY_LOCAL_MACHINE\target_hive\ControlSet001\Control\PnP\Pci]
“HackFlags”=dword:00000020
The restored machine will boot with either of the below values [HKEY_LOCAL_MACHINE\target_hive\ControlSet001\Control\PnP\Pci]
“HackFlags”=dword:00000040
[HKEY_LOCAL_MACHINE\target_hive\ControlSet001\Control\PnP\Pci]
“HackFlags”=- ;This will delete key from hive
On Thu, May 15, 2014 at 1:42 PM, Maxim S. Shatskih > wrote:
I think there was a separate “enable AHCI” registry value
“Bedanto” > wrote in message news:xxxxx@ntdev…
@maxim…do u mean to say I enable msahci even when the machine isn’t in ahci mode? Would this service entry be present and disabled or would I have to create it?
We have put the entries in the critical device database as well but no luck.
On Thursday, May 15, 2014, Maxim S. Shatskih > wrote:
> If the backup was created on a system with ATA emulation and being restored to AHCI/RAID
>enabled controller the system will stop with a 7B
Just enable MSAHCI.SYS in the registry.
Also, you can put the proprietary driver to system32\drivers, also to the SC database registry and to CriticalDeviceDatabase registry.
The latter is a quick replacement for INF files available early at boot.
Then, after the OS will boot, you need to install the real driver package with an INF to the boot storage controller, and reboot once more.
Most backup products go this way.
–
Maxim S. Shatskih
Microsoft MVP on File System And Storage
xxxxx@storagecraft.commailto:xxxxx
http://www.storagecraft.com
—
NTDEV is sponsored by OSR
Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
OSR is HIRING!! See http://www.osr.com/careers
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
—
NTDEV is sponsored by OSR
Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
OSR is HIRING!! See http://www.osr.com/careers
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
— NTDEV is sponsored by OSR Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev OSR is HIRING!! See http://www.osr.com/careers For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer</mailto:xxxxx>