win-pvdrivers

changeset 507:69b067a93d0e

Fixed a bit width problem causing crashes under PAE or 64 bit
author James Harper <james.harper@bendigoit.com.au>
date Tue Dec 23 14:27:42 2008 +1100 (2008-12-23)
parents 49699f57543e
children c8824436c717
files xenpci/xenpci_pdo.c
line diff
     1.1 --- a/xenpci/xenpci_pdo.c	Mon Dec 22 22:35:55 2008 +1100
     1.2 +++ b/xenpci/xenpci_pdo.c	Tue Dec 23 14:27:42 2008 +1100
     1.3 @@ -1057,9 +1057,10 @@ XenPci_Pnp_StartDevice(PDEVICE_OBJECT de
     1.4        {
     1.5          if (prd->u.Memory.Length == 0)
     1.6          {
     1.7 -          prd->u.Memory.Start.QuadPart = MmGetMdlPfnArray(mdl)[0] << PAGE_SHIFT;
     1.8 +          KdPrint((__DRIVER_NAME "     pfn[0] = %08x\n", (ULONG)MmGetMdlPfnArray(mdl)[0]));
     1.9 +          prd->u.Memory.Start.QuadPart = (ULONGLONG)MmGetMdlPfnArray(mdl)[0] << PAGE_SHIFT;
    1.10            prd->u.Memory.Length = MmGetMdlByteCount(mdl);
    1.11 -          KdPrint((__DRIVER_NAME "     New Start = %08x, Length = %d\n", prd->u.Memory.Start.LowPart, prd->u.Memory.Length));
    1.12 +          KdPrint((__DRIVER_NAME "     New Start = %08x%08x, Length = %d\n", prd->u.Memory.Start.HighPart, prd->u.Memory.Start.LowPart, prd->u.Memory.Length));
    1.13          }
    1.14          xppdd->config_page_phys = prd->u.Memory.Start;
    1.15          xppdd->config_page_length = prd->u.Memory.Length;