lkml.org 
[lkml]   [2013]   [Nov]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCH v9 16/18] arm,arm64: do not always merge biovec if we are running on Xen
    On Tue, 5 Nov 2013, Olof Johansson wrote:
    > Hi,
    >
    > On Fri, Oct 25, 2013 at 3:51 AM, Stefano Stabellini
    > <stefano.stabellini@eu.citrix.com> wrote:
    > > This is similar to what it is done on X86: biovecs are prevented from merging
    > > otherwise every dma requests would be forced to bounce on the swiotlb buffer.
    > >
    > > Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
    > > Acked-by: Catalin Marinas <catalin.marinas@arm.com>
    >
    >
    > This is spewing 800+ warnings on ape6evm_defconfig on ARM that doesn't
    > have CONFIG_BLOCK enabled, since struct bio_vec is protected by that
    > in include/linux/blk_types.h. I guess it could be argued that those
    > ifdefs could be removed, but still:
    >
    > ../../arch/arm/include/asm/io.h:378:24: warning: its scope is only
    > this definition or declaration, which is probably not what you want
    > [enabled by default]
    > In file included from ../../include/linux/scatterlist.h:10:0,
    > from ../../include/linux/dmaengine.h:27,
    > from ../../include/linux/skbuff.h:31,
    > from ../../include/crypto/algapi.h:18,
    > from ../../crypto/internal.h:16,
    > from ../../crypto/cipher.c:21:
    > ../../arch/arm/include/asm/io.h:378:24: warning: 'struct bio_vec'
    > declared inside parameter list [enabled by default]
    > const struct bio_vec *vec2);

    Thanks for letting me know.
    What about the following?


    commit 06fc174ce8da30f81b59c9d1d7680a2490525884
    Author: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
    Date: Wed Nov 6 12:38:28 2013 +0000

    arm,arm64/include/asm/io.h: define struct bio_vec

    Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

    diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h
    index c45effc..3c597c2 100644
    --- a/arch/arm/include/asm/io.h
    +++ b/arch/arm/include/asm/io.h
    @@ -374,6 +374,7 @@ extern void pci_iounmap(struct pci_dev *dev, void __iomem *addr);
    #define BIOVEC_MERGEABLE(vec1, vec2) \
    ((bvec_to_phys((vec1)) + (vec1)->bv_len) == bvec_to_phys((vec2)))

    +struct bio_vec;
    extern bool xen_biovec_phys_mergeable(const struct bio_vec *vec1,
    const struct bio_vec *vec2);
    #define BIOVEC_PHYS_MERGEABLE(vec1, vec2) \
    diff --git a/arch/arm64/include/asm/io.h b/arch/arm64/include/asm/io.h
    index c163287b..757c87a 100644
    --- a/arch/arm64/include/asm/io.h
    +++ b/arch/arm64/include/asm/io.h
    @@ -266,6 +266,7 @@ extern int devmem_is_allowed(unsigned long pfn);
    */
    #define xlate_dev_kmem_ptr(p) p

    +struct bio_vec;
    extern bool xen_biovec_phys_mergeable(const struct bio_vec *vec1,
    const struct bio_vec *vec2);
    #define BIOVEC_PHYS_MERGEABLE(vec1, vec2) \

    \
     
     \ /
      Last update: 2013-11-06 14:01    [W:3.540 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site