lkml.org 
[lkml]   [2020]   [Jun]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v6 21/36] drm: v3d: fix common struct sg_table related issues
    Hi Marek,

    I love your patch! Perhaps something to improve:

    [auto build test WARNING on next-20200618]
    [also build test WARNING on v5.8-rc1]
    [cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
    [If your patch is applied to the wrong git tree, kindly drop us a note.
    And when submitting patch, we suggest to use as documented in
    https://git-scm.com/docs/git-format-patch]

    url: https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-sg_table-nents-vs-orig_nents-misuse/20200619-000417
    base: ce2cc8efd7a40cbd17841add878cb691d0ce0bba
    config: alpha-allyesconfig (attached as .config)
    compiler: alpha-linux-gcc (GCC) 9.3.0
    reproduce (this is a W=1 build):
    wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
    chmod +x ~/bin/make.cross
    # save the attached .config to linux build tree
    COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha

    If you fix the issue, kindly add following tag as appropriate
    Reported-by: kernel test robot <lkp@intel.com>

    All warnings (new ones prefixed by >>, old ones prefixed by <<):

    In file included from include/linux/kernel.h:11,
    from include/linux/delay.h:22,
    from drivers/gpu/drm/v3d/v3d_drv.h:4,
    from drivers/gpu/drm/v3d/v3d_mmu.c:21:
    drivers/gpu/drm/v3d/v3d_mmu.c: In function 'v3d_mmu_insert_ptes':
    include/linux/compiler.h:339:38: error: call to '__compiletime_assert_254' declared with attribute error: BUILD_BUG_ON failed: V3D_MMU_PAGE_SHIFT != PAGE_SIZE
    339 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
    | ^
    include/linux/compiler.h:320:4: note: in definition of macro '__compiletime_assert'
    320 | prefix ## suffix(); | ^~~~~~
    include/linux/compiler.h:339:2: note: in expansion of macro '_compiletime_assert'
    339 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
    | ^~~~~~~~~~~~~~~~~~~
    include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
    39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
    | ^~~~~~~~~~~~~~~~~~
    include/linux/build_bug.h:50:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
    50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
    | ^~~~~~~~~~~~~~~~
    >> drivers/gpu/drm/v3d/v3d_mmu.c:100:3: note: in expansion of macro 'BUILD_BUG_ON'
    100 | BUILD_BUG_ON(V3D_MMU_PAGE_SHIFT != PAGE_SIZE);
    | ^~~~~~~~~~~~

    vim +/BUILD_BUG_ON +100 drivers/gpu/drm/v3d/v3d_mmu.c

    86
    87 void v3d_mmu_insert_ptes(struct v3d_bo *bo)
    88 {
    89 struct drm_gem_shmem_object *shmem_obj = &bo->base;
    90 struct v3d_dev *v3d = to_v3d_dev(shmem_obj->base.dev);
    91 u32 page = bo->node.start;
    92 u32 page_prot = V3D_PTE_WRITEABLE | V3D_PTE_VALID;
    93 struct sg_dma_page_iter dma_iter;
    94
    95 for_each_sgtable_dma_page(shmem_obj->sgt, &dma_iter, 0) {
    96 dma_addr_t dma_addr = sg_page_iter_dma_address(&dma_iter);
    97 u32 page_address = dma_addr >> V3D_MMU_PAGE_SHIFT;
    98 u32 pte = page_prot | page_address;
    99
    > 100 BUILD_BUG_ON(V3D_MMU_PAGE_SHIFT != PAGE_SIZE);
    101 BUG_ON(page_address + 1 >= BIT(24));
    102 v3d->pt[page++] = pte;
    103 }
    104
    105 WARN_ON_ONCE(page - bo->node.start !=
    106 shmem_obj->base.size >> V3D_MMU_PAGE_SHIFT);
    107
    108 if (v3d_mmu_flush_all(v3d))
    109 dev_err(v3d->drm.dev, "MMU flush timeout\n");
    110 }
    111

    ---
    0-DAY CI Kernel Test Service, Intel Corporation
    https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
    [unhandled content-type:application/gzip]
    \
     
     \ /
      Last update: 2020-06-19 00:29    [W:5.426 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site