All of lore.kernel.org
 help / color / mirror / Atom feed
* [linux-next:master 11113/11713] arch/arm64/mm/init.c:90:19: error: redefinition of 'arm64_dma_phys_limit' with a different type: 'const phys_addr_t' (aka 'const unsigned long long') vs 'phys_addr_t' (aka 'unsigned long long')
@ 2022-03-09 16:30 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-03-09 16:30 UTC (permalink / raw)
  To: Vijay Balakrishna
  Cc: llvm, kbuild-all, Linux Memory Management List, Will Deacon,
	Pasha Tatashin

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   4e7a74a6856f8613dab9794da4b5cfb8fd54fb8c
commit: 031495635b4668f94e964e037ca93d0d38bfde58 [11113/11713] arm64: Do not defer reserve_crashkernel() for platforms with no DMA memory zones
config: arm64-randconfig-r012-20220309 (https://download.01.org/0day-ci/archive/20220310/202203100052.aZByW83b-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 276ca87382b8f16a65bddac700202924228982f6)
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
        # install arm64 cross compiling tool for clang build
        # apt-get install binutils-aarch64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=031495635b4668f94e964e037ca93d0d38bfde58
        git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
        git fetch --no-tags linux-next master
        git checkout 031495635b4668f94e964e037ca93d0d38bfde58
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash arch/arm64/mm/

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

All errors (new ones prefixed by >>):

>> arch/arm64/mm/init.c:90:19: error: redefinition of 'arm64_dma_phys_limit' with a different type: 'const phys_addr_t' (aka 'const unsigned long long') vs 'phys_addr_t' (aka 'unsigned long long')
   const phys_addr_t arm64_dma_phys_limit = PHYS_MASK + 1;
                     ^
   arch/arm64/include/asm/processor.h:102:20: note: previous declaration is here
   extern phys_addr_t arm64_dma_phys_limit;
                      ^
   1 error generated.


vim +90 arch/arm64/mm/init.c

    57	
    58	/*
    59	 * If the corresponding config options are enabled, we create both ZONE_DMA
    60	 * and ZONE_DMA32. By default ZONE_DMA covers the 32-bit addressable memory
    61	 * unless restricted on specific platforms (e.g. 30-bit on Raspberry Pi 4).
    62	 * In such case, ZONE_DMA32 covers the rest of the 32-bit addressable memory,
    63	 * otherwise it is empty.
    64	 *
    65	 * Memory reservation for crash kernel either done early or deferred
    66	 * depending on DMA memory zones configs (ZONE_DMA) --
    67	 *
    68	 * In absence of ZONE_DMA configs arm64_dma_phys_limit initialized
    69	 * here instead of max_zone_phys().  This lets early reservation of
    70	 * crash kernel memory which has a dependency on arm64_dma_phys_limit.
    71	 * Reserving memory early for crash kernel allows linear creation of block
    72	 * mappings (greater than page-granularity) for all the memory bank rangs.
    73	 * In this scheme a comparatively quicker boot is observed.
    74	 *
    75	 * If ZONE_DMA configs are defined, crash kernel memory reservation
    76	 * is delayed until DMA zone memory range size initilazation performed in
    77	 * zone_sizes_init().  The defer is necessary to steer clear of DMA zone
    78	 * memory range to avoid overlap allocation.  So crash kernel memory boundaries
    79	 * are not known when mapping all bank memory ranges, which otherwise means
    80	 * not possible to exclude crash kernel range from creating block mappings
    81	 * so page-granularity mappings are created for the entire memory range.
    82	 * Hence a slightly slower boot is observed.
    83	 *
    84	 * Note: Page-granularity mapppings are necessary for crash kernel memory
    85	 * range for shrinking its size via /sys/kernel/kexec_crash_size interface.
    86	 */
    87	#if IS_ENABLED(CONFIG_ZONE_DMA) || IS_ENABLED(CONFIG_ZONE_DMA32)
    88	phys_addr_t __ro_after_init arm64_dma_phys_limit;
    89	#else
  > 90	const phys_addr_t arm64_dma_phys_limit = PHYS_MASK + 1;
    91	#endif
    92	

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-03-09 16:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-03-09 16:30 [linux-next:master 11113/11713] arch/arm64/mm/init.c:90:19: error: redefinition of 'arm64_dma_phys_limit' with a different type: 'const phys_addr_t' (aka 'const unsigned long long') vs 'phys_addr_t' (aka 'unsigned long long') kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.