• Ian Campbell's avatar
    xen/arm: correctly handle DMA mapping of compound pages · 52ba0746
    Ian Campbell authored
    Currently xen_dma_map_page concludes that DMA to anything other than
    the head page of a compound page must be foreign, since the PFN of the
    page is that of the head.
    
    Fix the check to instead consider the whole of a compound page to be
    local if the PFN of the head passes the 1:1 check.
    
    We can never see a compound page which is a mixture of foreign and
    local sub-pages.
    
    The comment already correctly described the intention, but fixup the
    spelling and some grammar.
    
    This fixes the various SSH protocol errors which we have been seeing
    on the cubietrucks in our automated test infrastructure.
    
    This has been broken since commit 3567258d ("xen/arm: use
    hypercall to flush caches in map_page"), which was in v3.19-rc1.
    
    NB arch/arm64/.../xen/page-coherent.h also includes this file.
    Signed-off-by: default avatarIan Campbell <ian.campbell@citrix.com>
    Reviewed-by: default avatarStefano Stabellini <stefano.stabellini@eu.citrix.com>
    Cc: xen-devel@lists.xenproject.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: stable@vger.kernel.org # v3.19+
    52ba0746
page-coherent.h 3.75 KB