[ammarfaizi2-block:google/android/kernel/common/android11-kiwi-5.4 2314/9999] mm/page_alloc.c:2741:29: sparse: sparse: Using plain integer as NULL pointer

From: kernel test robot
Date: Mon Jan 24 2022 - 18:38:45 EST


tree: https://github.com/ammarfaizi2/linux-block google/android/kernel/common/android11-kiwi-5.4
head: 7d1d5848183bd1d9086d0572f9af431d3ded407f
commit: b9d3d8f1e991052edb89b0537b8f2e8b2aa941ac [2314/9999] ANDROID: GKI: cma: redirect page allocation to CMA
config: x86_64-randconfig-s022 (https://download.01.org/0day-ci/archive/20220125/202201250617.FDCLmCS1-lkp@xxxxxxxxx/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/ammarfaizi2/linux-block/commit/b9d3d8f1e991052edb89b0537b8f2e8b2aa941ac
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block google/android/kernel/common/android11-kiwi-5.4
git checkout b9d3d8f1e991052edb89b0537b8f2e8b2aa941ac
# save the config file to linux build tree
mkdir build_dir
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash

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


sparse warnings: (new ones prefixed by >>)
mm/page_alloc.c:106:1: sparse: sparse: symbol 'pcpu_drain_mutex' was not declared. Should it be static?
>> mm/page_alloc.c:2741:29: sparse: sparse: Using plain integer as NULL pointer
mm/page_alloc.c:3252:51: sparse: sparse: incorrect type in argument 7 (different base types) @@ expected int cma @@ got restricted gfp_t @@
mm/page_alloc.c:3252:51: sparse: expected int cma
mm/page_alloc.c:3252:51: sparse: got restricted gfp_t
mm/page_alloc.c: note: in included file (through include/linux/mm.h):
include/linux/gfp.h:325:27: sparse: sparse: restricted gfp_t degrades to integer
include/linux/gfp.h:325:27: sparse: sparse: restricted gfp_t degrades to integer

vim +2741 mm/page_alloc.c

2736
2737 static struct page *__rmqueue_cma(struct zone *zone, unsigned int order,
2738 int migratetype,
2739 unsigned int alloc_flags)
2740 {
> 2741 struct page *page = 0;
2742
2743 retry:
2744 #ifdef CONFIG_CMA
2745 if (migratetype == MIGRATE_MOVABLE && !zone->cma_alloc)
2746 page = __rmqueue_cma_fallback(zone, order);
2747 else
2748 #endif
2749 page = __rmqueue_smallest(zone, order, migratetype);
2750
2751 if (unlikely(!page) && __rmqueue_fallback(zone, order, migratetype,
2752 alloc_flags))
2753 goto retry;
2754
2755 trace_mm_page_alloc_zone_locked(page, order, migratetype);
2756 return page;
2757 }
2758

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx