win-pvdrivers

changeset 334:506fe9b4c642

Updates to fix a /PAE problem under 32 bit mode.
author James Harper <james.harper@bendigoit.com.au>
date Sun Jun 22 19:16:12 2008 +1000 (2008-06-22)
parents 0b08bdc622a6
children 2fcbd37634a3
files xenconfig/xenconfig.c xenpci/xenbus.c
line diff
     1.1 --- a/xenconfig/xenconfig.c	Sun Jun 22 14:45:50 2008 +1000
     1.2 +++ b/xenconfig/xenconfig.c	Sun Jun 22 19:16:12 2008 +1000
     1.3 @@ -349,7 +349,7 @@ XenConfig_Pnp_StartDevice(PDEVICE_OBJECT
     1.4      prd->ShareDisposition = CmResourceShareDeviceExclusive;
     1.5      prd->Flags = CM_RESOURCE_MEMORY_READ_WRITE;
     1.6      KdPrint((__DRIVER_NAME "     PFN[0] = %p\n", MmGetMdlPfnArray(mdl)[0]));
     1.7 -    prd->u.Memory.Start.QuadPart = MmGetMdlPfnArray(mdl)[0] << PAGE_SHIFT;
     1.8 +    prd->u.Memory.Start.QuadPart = ((ULONGLONG)MmGetMdlPfnArray(mdl)[0]) << PAGE_SHIFT;
     1.9      prd->u.Memory.Length = PAGE_SIZE;
    1.10      KdPrint((__DRIVER_NAME "     Start = %08x:%08x, Length = %d\n", prd->u.Memory.Start.HighPart, prd->u.Memory.Start.LowPart, prd->u.Memory.Length));
    1.11      stack->Parameters.StartDevice.AllocatedResourcesTranslated = new_crl;
    1.12 @@ -362,7 +362,7 @@ XenConfig_Pnp_StartDevice(PDEVICE_OBJECT
    1.13      prd->Type = CmResourceTypeMemory;
    1.14      prd->ShareDisposition = CmResourceShareDeviceExclusive;
    1.15      prd->Flags = CM_RESOURCE_MEMORY_READ_WRITE;
    1.16 -    prd->u.Memory.Start.QuadPart = MmGetMdlPfnArray(mdl)[0] << PAGE_SHIFT;
    1.17 +    prd->u.Memory.Start.QuadPart = (ULONGLONG)MmGetMdlPfnArray(mdl)[0] << PAGE_SHIFT;
    1.18      prd->u.Memory.Length = PAGE_SIZE;
    1.19      stack->Parameters.StartDevice.AllocatedResources = new_crl;
    1.20  
     2.1 --- a/xenpci/xenbus.c	Sun Jun 22 14:45:50 2008 +1000
     2.2 +++ b/xenpci/xenbus.c	Sun Jun 22 19:16:12 2008 +1000
     2.3 @@ -312,7 +312,7 @@ XenBus_Init(PXENPCI_DEVICE_DATA xpdd)
     2.4    xpdd->xen_store_evtchn = (evtchn_port_t)hvm_get_parameter(xpdd, HVM_PARAM_STORE_EVTCHN);
     2.5  
     2.6    xen_store_mfn = (xen_ulong_t)hvm_get_parameter(xpdd, HVM_PARAM_STORE_PFN);
     2.7 -  pa_xen_store_interface.QuadPart = xen_store_mfn << PAGE_SHIFT;
     2.8 +  pa_xen_store_interface.QuadPart = (ULONGLONG)xen_store_mfn << PAGE_SHIFT;
     2.9    xpdd->xen_store_interface = MmMapIoSpace(pa_xen_store_interface, PAGE_SIZE, MmNonCached);
    2.10  
    2.11    for (i = 0; i < MAX_WATCH_ENTRIES; i++)