[ipxe-devel] iPXE and Citrix PVS conflict suspected
mcb30 at ipxe.org
Wed Apr 23 14:10:30 BST 2014
On 23/04/14 13:44, NICOLAS CATTIE wrote:
> 10.1.2.3 is the PVS server and ARDBP32.bin is the Citrix boostrap that
> intercept BIOS interrupt 13 to request the PVS server for missing blocks
> to be streamed
> The PVS bootstrap always starts correctly but i’m having a random
> problem with OS streaming : sometime, the windows boot hangs. The
> problem does not appear on the same machine each time. If I configure
> DHCP so that the machine contacts the PVS server directly, the problem
> never occurs (but I can’t stay with this configuration because I have to
> redirect to different PXE environment).
> I also tried different command line (autoreplace, autofree) but no
> change. Even tried PXEBS instead of direct tftp chain, still no change.
> I suspect a memory conflict between iPXE and PVS (ARDBP32.bin). I have
> opened a ticket at Citrix, but is there a way to diagnose what happen
> and if there is a memory conflict ?
iPXE hides itself from the system memory map. Provided that ARDBP32.bin
is using standardised mechanism (such as INT 15,e820) to enumerate
memory within the machine, then there should be no way for it to
accidentally overwrite any of iPXE's memory.
iPXE already includes functionality for emulating a block device via
INT13, supporting block protocols such as iSCSI, AoE, and SRP. Does
Citrix PVS support exposing its block devices via any of these
protocols? If so, then you could use that protocol directly and bypass
Alternatively, it should be viable to add PVS support to iPXE as an
additional block device protocol.
More information about the ipxe-devel