[ipxe-devel] WinPE behaves differently when started by wimboot

Michael Brown mcb30 at ipxe.org
Tue Mar 29 13:55:06 UTC 2016

On 29/03/16 14:40, Andres, Roman wrote:
> I'm not sure if it could be a timing issue since I can reproduce the network adapter issue every time when PXE booting using iPXE/wimboot and I'm unable to reproduce it when booting the same image via:
> - Local volume boot (WinPE is stored on a local volume and added to the local BCD)
> - USB stick boot (created with Windows ADK tools MakeWinPEMedia /UFD, but based on the same WinPE image)
> - WDS PXE boot

I've observed the same issue.  I found that it occurs only if iPXE uses 
the SNP/NII driver; if using the native driver (ecm.efi, which is about 
30x faster) then the NIC shows up immediately in WinPE.

It's interesting to see that you don't have an issue when using WDS PXE 
boot.  This suggests that it's not a fundamental bug in the Surface's 
SNP/NII driver, which is what I had been assuming.

I won't be able to look at this issue for at least two weeks.  If you 
have the time, you could try changing the nii_close() and/or nii_stop() 
code paths to see if anything makes a difference to this NIC.  It's 
potentially worth experimenting with cycling through calls to 
{nii_close(),nii_open()} and {nii_stop(),nii_start()} to see if there 
are any obvious failures that arise after we have attempted to close or 
stop the underlying NII device.


More information about the ipxe-devel mailing list