Re: [PATCH] Wire up CONFIG_DEVTMPFS_MOUNT to initramfs.

From: kernel test robot
Date: Mon Jan 17 2022 - 05:20:40 EST


Hi Rob,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linux/master]
[also build test WARNING on linus/master v5.16 next-20220117]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url: https://github.com/0day-ci/linux/commits/Rob-Landley/Wire-up-CONFIG_DEVTMPFS_MOUNT-to-initramfs/20220117-023610
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git daadb3bd0e8d3e317e36bc2c1542e86c528665e5
config: h8300-randconfig-s032-20220116 (https://download.01.org/0day-ci/archive/20220117/202201171822.FDXweWsH-lkp@xxxxxxxxx/config)
compiler: h8300-linux-gcc (GCC) 11.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/0day-ci/linux/commit/c6b7e8ccdf2b0a9620c9dc0b5e5b2a719b223817
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Rob-Landley/Wire-up-CONFIG_DEVTMPFS_MOUNT-to-initramfs/20220117-023610
git checkout c6b7e8ccdf2b0a9620c9dc0b5e5b2a719b223817
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=h8300 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 >>)
>> init/main.c:1624:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] __user *pathname @@ got char * @@
init/main.c:1624:27: sparse: expected char const [noderef] __user *pathname
init/main.c:1624:27: sparse: got char *

vim +1624 init/main.c

1579
1580 static noinline void __init kernel_init_freeable(void)
1581 {
1582 /* Now the scheduler is fully set up and can do blocking allocations */
1583 gfp_allowed_mask = __GFP_BITS_MASK;
1584
1585 /*
1586 * init can allocate pages on any node
1587 */
1588 set_mems_allowed(node_states[N_MEMORY]);
1589
1590 cad_pid = get_pid(task_pid(current));
1591
1592 smp_prepare_cpus(setup_max_cpus);
1593
1594 workqueue_init();
1595
1596 init_mm_internals();
1597
1598 rcu_init_tasks_generic();
1599 do_pre_smp_initcalls();
1600 lockup_detector_init();
1601
1602 smp_init();
1603 sched_init_smp();
1604
1605 padata_init();
1606 page_alloc_init_late();
1607 /* Initialize page ext after all struct pages are initialized. */
1608 page_ext_init();
1609
1610 do_basic_setup();
1611
1612 kunit_run_all_tests();
1613
1614 wait_for_initramfs();
1615
1616 /*
1617 * check if there is an early userspace init. If yes, let it do all
1618 * the work
1619 */
1620 if (init_eaccess(ramdisk_execute_command) != 0) {
1621 ramdisk_execute_command = NULL;
1622 prepare_namespace();
1623 } else if (IS_ENABLED(CONFIG_DEVTMPFS_MOUNT)) {
> 1624 sys_mkdir("/dev", 0755);

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