Let’s have a quick look at the Windows 10 In-Place Upgrade Process via Setupact.log and some notes about MigNeo setup options from the real world.
As per my testing with real-world devices and WVD VMs, I have noticed two things:
- Took NEO path: The physical machines took the NEO path and hence skipped the Safe OS phase, which resulted in 25 minutes of offline time.
- Log Entry – SKIPBOOTTRACK(SAFEOS): Skip Boot Validator: Will proceed with SafeOS boot removal.
- Skipped Neo Path: The setup uses the internet to connect to one setting and finds whether the Neo path can be taken for Azure VMs used for WVD. The Azure VM didn’t take the Neo path and had around ~50 minutes of offline time.
- MOUPG SetupHost: OneSettings Initialized -> [Yes]
- MOUPG OneSettings: Found [MIGNEOENABLED] -> [False]
I’m unaware of the Windows update for business(WUfB) policy configuration switches that enable/disable MigNeo. I thought enabling MigNeo (MigNeo /Enable switch) might help speed up Windows 10 in-place upgrade for WVD VMs.
NOTE! – NEO stands for Non-event Objective, a multi-release effort to reduce feature update offline time, including a single reboot for most users. This option is available in Windows 10, version 1803, and later.
Table of Contents
Windows 10 In-Place Upgrade Process
I don’t think the below sequence of phases is followed in the Windows Update for Business(WUfB) Windows 10 upgrade process. I have seen only one reboot for WVD VMs.
- Windows 10 1909 Upgrade Using SCCM Task Sequence
- Windows 10 Intune Enrollment Manual Process AAD Registration
Getting Things Ready
The getting Things Ready phase is the first step toward the Windows 10 upgrade.
- Windows 10 devices are configured with Windows Update for Business policies.
- Devices scan against Windows Update cloud services.
- Windows Update cloud services start delivering Windows 10 update configurations and content.
Download
This is the download phase, where users can work on Windows 10 devices. In this phase, the software update agent downloads the Windows 10 2004 content from the Software Update cloud service.
Installing
Once the Windows 10 2004 content is downloaded, the Software Update agent starts installing. During this phase, users can normally work.
NOTE! – I have seen some performance hit during the installation phase.
Windows 10 Update Restart Prompt
This is the phase where users get prompted to restart the device to complete the Windows 10 in-place upgrade process.
Once you restart the device, the rest of the Windows 10 upgrade happens offline.
Setupact.log Process Flow
Now, you need to look into the Panther logs. Two log files, Setupact.log and Setuperr.log, are located at C:$Windows. BTSourcesPanther.
- Setupact.log
- Setuperr.log
========================Setup Host=========================
- 2021-01-25 15:09:24, Error CONX Windows::Compat::Shared::UtcLogger::End (281): Error starting service: [0x80070422].[gle=0x80070422]
- 2021-01-25 15:09:24, Info MOUPG **************** SetupHost Logging End ****************
- 2021-01-25 15:46:40, Info MOUPG *************** SetupHost Logging Begin ***************
- 2021-01-25 15:46:40, Info MOUPG SetupHost::Initialize
======================ESD File Location=============================
- 2021-01-25 15:46:42, Info MOUPG SetupManager: ActionList InstallFile Path [C:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\professional_en-us.esd]
=======================Action List============================
- 2021-01-25 15:46:42, Info MOUPG SetupManager: Setting latent acquisiton ActionList path: [C:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\ActionList.xml]
=======================Adding Drivers===========================
- 2021-01-25 15:47:15, Info MIG BuildDriverFilesList: adding c:\windows\inf\acpi.inf
==================Loading replacement manifest data=======================
- 2021-01-25 15:47:18, Info MIG Loading replacement manifest data for Microsoft-ActiveDirectory-WebServices
=======================Environment Variables========================
- 2021-01-25 15:50:58, Info [0x0803a0] MIG Dumping SYSTEM environment
- 2021-01-25 15:50:58, Info [0x08024c] MIG %ALLUSERSAPPDATA% <-> C:\ProgramData
- 2021-01-25 15:50:58, Info [0x08024c] MIG %ALLUSERSPROFILE% <-> C:\ProgramData
- 2021-01-25 15:50:58, Info [0x08024c] MIG %COMMONPROGRAMFILES% <-> C:\Program Files\Common Files
- 2021-01-25 15:50:58, Info [0x08024c] MIG %COMMONPROGRAMFILES(X86)% <-> C:\Program Files (x86)\Common Files
- 2021-01-25 15:50:58, Info [0x08024c] MIG %COMPUTERNAME% <-> V-UKGOS017-0
========================Setup Logging End========================
- 2021-01-25 15:51:34, Info MOUPG **************** SetupHost Logging End ****************
====================Execution Phase===========================
- 2021-01-25 15:52:13, Info SP Executing phase [Safe OS]
- 2021-01-25 15:52:13, Info Initializing diagnostics helper; data file = F:\$WINDOWS.~BT\Sources\Diagnostics\diagnostics.dat
========================Different Phases======================
- 2021-01-25 15:52:13, Info SP Phase: Downlevel
- 2021-01-25 15:52:13, Info SP Phase: Pre-Finalize
- 2021-01-25 15:52:13, Info SP Phase: Finalize
- 2021-01-25 15:52:13, Info SP Phase: Safe OS
- 2021-01-25 15:52:13, Info SP Phase: Pre First Boot
- 2021-01-25 15:52:13, Info SP Phase: Pre SysPrep
- 2021-01-25 15:52:13, Info SP Phase: Post SysPrep
- 2021-01-25 15:52:13, Info SP Phase: Post First Boot
- 2021-01-25 15:52:13, Info SP Phase: Pre OOBE Boot
- 2021-01-25 15:52:13, Info SP Phase: Pre OOBE
- 2021-01-25 15:52:13, Info SP Phase: Post OOBE
- 2021-01-25 15:52:13, Info SP Phase: Post OOBE Boot
- 2021-01-25 15:52:13, Info SP Phase: End
- 2021-01-25 15:52:13, Info SP DISKSPACEQUERY: Calculating disk space needed:
- 2021-01-25 15:52:13, Info SP Executing operation: Boot WinPE
- 2021-01-25 15:52:13, Info SP Executing operation: Prepare SafeOS for rollback
- 2021-01-25 15:52:13, Info SP Executing operation: Set SafeOS boot entry as the default boot entry
- 2021-01-25 15:52:13, Info SP Executing operation: Enable Page File in SafeOS
- 2021-01-25 15:52:14, Info SP Executing operation: Apply WIM file PathForNewOSFile, index 3 to F:\$WINDOWS.~BT\NewOS
- 2021-01-25 16:13:43, Info SP Executing operation: Complete new OS apply
- 2021-01-25 16:13:43, Info SP Executing operation: Apply EAs for F:\$WINDOWS.~BT\NewOS
- 2021-01-25 16:13:43, Info SP Executing operation: Enable telemetry for F:\$WINDOWS.~BT\NewOS
- 2021-01-25 16:13:45, Info SP Executing operation: Add [1] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Windows10.0-KB4598481-x64.cab
- 2021-01-25 16:14:31, Info SP Executing operation: Apply Optional Component status
- 2021-01-25 16:14:49, Info SP Executing operation: Apply Drivers
- 2021-01-25 16:14:53, Info SP Executing operation: Prepare the recovery image
- 2021-01-25 16:17:00, Info SP Executing operation: Create file F:\$WINDOWS.~BT\NewOS\ProgramData\Microsoft\Windows\ClipSVC\GenuineTicket\GenuineTicket.xml on the new system
- 2021-01-25 16:17:00, Info SP Executing operation: Create file F:\$WINDOWS.~BT\NewOS\Windows\Setup\LatentAcquisition\ActionList.xml on the new system
- 2021-01-25 16:17:00, Info SP Executing operation: Set boot command %SYSTEMDRIVE%\$WINDOWS.~BT\Sources\SetupPlatform.exe /postoobe for phase DismPostOobe
- 2021-01-25 16:17:02, Info SP Executing operation: Set boot command %SYSTEMDRIVE%\$WINDOWS.~BT\Sources\SetupPlatform.exe /presysprep for phase DismPreSysprep
- 2021-01-25 16:17:04, Info SP Executing operation: Set boot command %SYSTEMDRIVE%\$WINDOWS.~BT\Sources\SetupPlatform.exe /postsysprep for phase DismPostSysprep
- 2021-01-25 16:17:06, Info SP Executing operation: Set boot command %SYSTEMDRIVE%\$WINDOWS.~BT\Sources\SetupPlatform.exe /preoobe for phase DismPreOobe
- 2021-01-25 16:17:07, Info SP Executing operation: Set boot command %SYSTEMDRIVE%\$WINDOWS.~BT\Sources\SetupPlatform.exe /on error for phase DismOnError
- 2021-01-25 16:17:09, Info SP Executing operation: Set entropy for F:\$WINDOWS.~BT\NewOS
- 2021-01-25 16:17:09, Info SP Executing operation: Add [1] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-Client-LanguagePack-Package_en-gb~31bf3856ad364e35~amd64~en-gb~.esd
- 2021-01-25 16:19:36, Info SP Executing operation: Add [1] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\amd64_Microsoft-Windows-LanguageFeatures-Basic-en-gb-Package~~amd64~~10.0.19041.1
- 2021-01-25 16:19:42, Info SP Executing operation: Add [3] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-PowerShell-ISE-FOD-Package~~amd64~en-US~10.0.19041.1
- 2021-01-25 16:19:47, Info SP Executing operation: Add [3] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-MSPaint-FoD-Package~~amd64~en-US~10.0.19041.1
- 2021-01-25 16:19:51, Info SP Executing operation: Add [3] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-Notepad-FoD-Package~~amd64~en-US~10.0.19041.1
- 2021-01-25 16:19:56, Info SP Executing operation: Add [1] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\amd64_Microsoft-Windows-LanguageFeatures-OCR-en-gb-Package~~amd64~~10.0.19041.1
- 2021-01-25 16:20:01, Info SP Executing operation: Add [3] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-StepsRecorder-Package~~amd64~en-US~10.0.19041.1
- 2021-01-25 16:20:06, Info SP Executing operation: Add [1] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-Printing-WFS-FoD-Package~~amd64~en-US~10.0.19041.1
- 2021-01-25 16:20:10, Info SP Executing operation: Add [3] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-WordPad-FoD-Package~~amd64~en-US~10.0.19041.1
- 2021-01-25 16:20:15, Info SP Executing operation: Add [1] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Microsoft-Windows-Printing-PMCPPC-FoD-Package~~amd64~en-US~10.0.19041.1
- 2021-01-25 16:20:19, Info SP Executing operation: Add [1] package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\Windows10.0-KB4598242-x64.cab
- 2021-01-25 16:47:03, Info SP Executing operation: Complete servicing operations
NOTE! – The KB article installation took most of the time in this example. But, in a normal scenario, these KBs should already be installed before Windows 10 in-place upgrade. There will be improvements on Windows 10 updates whenever the device can take any NEO path and hence skipped the Safe OS phase.
- 2021-01-25 16:47:04, Info SP Executing operation: Migrate framework (Full)
- 2021-01-25 16:48:17, Info SP Executing operation: Set product key
- 2021-01-25 16:48:22, Info SP Executing operation: Run Sysprep specialization offline on F:\$WINDOWS.~BT\NewOS
- 2021-01-25 16:48:29, Info SP Executing operation: Add Appx package F:\windows\SoftwareDistribution\Download\4eea2720b7c97f1951f7f50d8bc94544\LanguageExperiencePack.en-gb.Neutral.appx
- 2021-01-25 16:48:52, Info SP Executing operation: Offline portion of first and be boot apply operations
- 2021-01-25 16:52:12, Info SP Executing operation: Add boot entry for F:\$WINDOWS.~BT\NewOS\WINDOWS. Locale = en-US
- 2021-01-25 16:52:12, Info SP Executing operation: Prepare the new OS for first boot
- 2021-01-25 16:52:13, Info SP Executing operation: Ensure suspended services are stopped
- 2021-01-25 16:56:53, Info SP Executing operation: Create registry key HKLM\System\CurrentControlSet\Services\i8042prt\Parameters (value name: PollingIterations) on the new system
- 2021-01-25 16:56:53, Info SP Executing operation: Create registry key HKLM\System\Setup\Upgrade (value name: DownlevelBuildNumber) on the new system
- 2021-01-25 16:56:53, Info SP Executing operation: OOBE boot apply
- 2021-01-25 17:03:42, Info SP Executing operation: Refresh localized strings
- 2021-01-25 17:03:44, Info SP Executing operation: Execute provisioning migration
- 2021-01-25 17:03:48, Info SP Executing operation: Gather end install, scope: EVERYTHING
- 2021-01-25 17:04:06, Info SP Executing operation: Start suspended services
- 2021-01-25 17:04:11, Info SP ExecuteOperations: Successfully processed execution phase Pre OOBE
- 2021-01-25 17:04:35, Info SP OPERATIONTRACK ExecuteOperations: Start execution phase Post OOBE
- 2021-01-25 17:04:35, Info SP ExecuteOperations: Successfully processed execution phase Post OOBE
- 2021-01-25 17:04:35, Info SP OPERATIONTRACK ExecuteOperations: Start execution phase Post OOBE Boot
- 2021-01-25 17:04:35, Info SP ExecuteOperations: Successfully processed execution phase Post OOBE Boot
- 2021-01-25 17:04:35, Info SP OPERATIONTRACK ExecuteOperations: Start execution phase End
- 2021-01-25 17:04:35, Info SP ExecuteOperations: Successfully processed execution phase End
- 2021-01-25 17:04:35, Info SP Phase: Pre-Finalize
- 2021-01-25 17:04:35, Info SP Phase: Finalize
- 2021-01-25 17:04:35, Info SP Phase: Safe OS
- 2021-01-25 17:04:35, Info SP Phase: Pre-First Boot
- 2021-01-25 17:04:35, Info SP Phase: Pre SysPrep
- 2021-01-25 17:04:35, Info SP Phase: Post SysPre
- 2021-01-25 17:04:35, Info SP Phase: Post First Boot
- 2021-01-25 17:04:35, Info SP Phase: Pre OOBE Boot
- 2021-01-25 17:04:35, Info SP Phase: Pre OOBE
- 2021-01-25 17:04:35, Info SP Phase: Post OOBE
- 2021-01-25 17:04:35, Info SP Phase: Post OOBE Boot
- 2021-01-25 17:04:35, Info SP Phase: End
- 2021-01-25 17:07:40, Info CBS Trusted Installer is shutting down because SHUTDOWN_REASON_AUTOSTOP
================== Started Applying image=============================
- 2021-01-25 15:52:49, Info SP SPWIMCallback: Image apply. Progress: 0
- 2021-01-25 16:13:42, Info SP SPWIMCallback: Image apply. Progress: 100
- 2021-01-25 16:13:43, Info SP Executing operation: Complete new OS apply
===================Complete New OS Apply================
- 2021-01-25 16:13:43, Info SP 41|Complete new OS apply
======================DPX Phase======================
- 2021-01-25 16:20:34, Info DPX Started DPX phase: Resume and Download Job
- 2021-01-25 16:26:13, Info DPX Ended DPX phase: Apply Deltas Provided In File
- 2021-01-25 16:49:16, Warning Mig::CUpgradeTransportStreamProxy::CreateFolder: Error while setting short name MICROS~1 for \\?\F:\$WINDOWS.~BT\NewOS\Program Files\Microsoft Update Health Tools. Error: 0xC0000035
Resources
- Upgrade to Windows 10 2004 Using SCCM | ConfigMgr | Servicing
- Difference Between Windows Patch Management Using Intune Vs. ConfigMgr | SCCM | Software Updates
Author
Anoop C Nair has been Microsoft MVP for 10 consecutive years from 2015 onwards. He is a Workplace Solution Architect with more than 22+ years of experience in Workplace technologies. He is a Blogger, Speaker, and Local User Group Community leader. His primary focus is on Device Management technologies like SCCM and Intune. He writes about technologies like Intune, SCCM, Windows, Cloud PC, Windows, Entra, Microsoft Security, Career, etc.