• Ross Lagerwall's avatar
    xen: Fix page <-> pfn conversion on 32 bit systems · 60901df3
    Ross Lagerwall authored
    Commit 1084b198 (xen: Add Xen specific
    page definition) caused a regression in 4.4.
    
    The xen functions to convert between pages and pfns fail due to an
    overflow on systems where a physical address may not fit in an
    unsigned long (e.g. x86 32 bit PAE systems). Rework the conversion to
    avoid overflow. This should also result in simpler object code.
    
    This bug manifested itself as disk corruption with Linux 4.4 when
    using blkfront in a Xen HVM x86 32 bit guest with more than 4 GiB of
    memory.
    Signed-off-by: default avatarRoss Lagerwall <ross.lagerwall@citrix.com>
    Cc: <stable@vger.kernel.org> # 4.4+
    Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
    60901df3