Building the Linux kernel with Clang and LLVM
 help / color / mirror / Atom feed
* [chao:bugfix/common 5/5] fs/f2fs/dir.c:370:35: error: use of undeclared identifier 'inode'
From: kernel test robot @ 2025-03-28 10:06 UTC (permalink / raw)
  To: Chao Yu, Chao Yu; +Cc: llvm, oe-kbuild-all, Chao Yu, Chao Yu

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/chao/linux.git bugfix/common
head:   221d9fea44a3b5a03030a89853dfb5e78a1cdc9f
commit: 221d9fea44a3b5a03030a89853dfb5e78a1cdc9f [5/5] f2fs: support to disable linear lookup fallback
config: hexagon-randconfig-002-20250328 (https://download.01.org/0day-ci/archive/20250328/202503281735.NGPfccfP-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503281735.NGPfccfP-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503281735.NGPfccfP-lkp@intel.com/

All errors (new ones prefixed by >>):

>> fs/f2fs/dir.c:370:35: error: use of undeclared identifier 'inode'
                   !sb_no_casefold_compat_fallback(inode->i_sb)) {
                                                   ^
   1 error generated.


vim +/inode +370 fs/f2fs/dir.c

   329	
   330	struct f2fs_dir_entry *__f2fs_find_entry(struct inode *dir,
   331						 const struct f2fs_filename *fname,
   332						 struct page **res_page)
   333	{
   334		unsigned long npages = dir_blocks(dir);
   335		struct f2fs_dir_entry *de = NULL;
   336		unsigned int max_depth;
   337		unsigned int level;
   338		bool use_hash = true;
   339	
   340		*res_page = NULL;
   341	
   342	#if IS_ENABLED(CONFIG_UNICODE)
   343	start_find_entry:
   344	#endif
   345		if (f2fs_has_inline_dentry(dir)) {
   346			de = f2fs_find_in_inline_dir(dir, fname, res_page, use_hash);
   347			goto out;
   348		}
   349	
   350		if (npages == 0)
   351			goto out;
   352	
   353		max_depth = F2FS_I(dir)->i_current_depth;
   354		if (unlikely(max_depth > MAX_DIR_HASH_DEPTH)) {
   355			f2fs_warn(F2FS_I_SB(dir), "Corrupted max_depth of %lu: %u",
   356				  dir->i_ino, max_depth);
   357			max_depth = MAX_DIR_HASH_DEPTH;
   358			f2fs_i_depth_write(dir, max_depth);
   359		}
   360	
   361		for (level = 0; level < max_depth; level++) {
   362			de = find_in_level(dir, level, fname, res_page, use_hash);
   363			if (de || IS_ERR(*res_page))
   364				break;
   365		}
   366	
   367	out:
   368	#if IS_ENABLED(CONFIG_UNICODE)
   369		if (IS_CASEFOLDED(dir) && !de && use_hash &&
 > 370			!sb_no_casefold_compat_fallback(inode->i_sb)) {
   371			use_hash = false;
   372			goto start_find_entry;
   373		}
   374	#endif
   375		/* This is to increase the speed of f2fs_create */
   376		if (!de)
   377			F2FS_I(dir)->task = current;
   378		return de;
   379	}
   380	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* [jfern:sched/scx-dlserver-boost 16/16] kernel/sched/deadline.c:1765:5: warning: no previous prototype for function 'dl_server_remove_params'
From: kernel test robot @ 2025-03-28  6:15 UTC (permalink / raw)
  To: Joel Fernandes; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jfern/linux.git sched/scx-dlserver-boost
head:   153b74fef19625181700e52ed4017330372a961e
commit: 153b74fef19625181700e52ed4017330372a961e [16/16] Add a function to remove the dl_server's bw reservation
config: riscv-randconfig-002-20250328 (https://download.01.org/0day-ci/archive/20250328/202503281421.a2nhfsTA-lkp@intel.com/config)
compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project c2692afc0a92cd5da140dfcdfff7818a5b8ce997)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503281421.a2nhfsTA-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503281421.a2nhfsTA-lkp@intel.com/

All warnings (new ones prefixed by >>):

   In file included from kernel/sched/build_policy.c:60:
>> kernel/sched/deadline.c:1765:5: warning: no previous prototype for function 'dl_server_remove_params' [-Wmissing-prototypes]
    1765 | int dl_server_remove_params(struct sched_dl_entity *dl_se)
         |     ^
   kernel/sched/deadline.c:1765:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    1765 | int dl_server_remove_params(struct sched_dl_entity *dl_se)
         | ^
         | static 
   1 warning generated.


vim +/dl_server_remove_params +1765 kernel/sched/deadline.c

  1755	
  1756	/**
  1757	 * dl_server_remove_params - Remove bandwidth reservation for a DL server
  1758	 * @dl_se: The DL server entity to remove bandwidth for
  1759	 *
  1760	 * This function removes the bandwidth reservation for a DL server entity,
  1761	 * cleaning up all bandwidth accounting and server state.
  1762	 *
  1763	 * Returns: 0 on success, negative error code on failure
  1764	 */
> 1765	int dl_server_remove_params(struct sched_dl_entity *dl_se)
  1766	{
  1767	    struct rq *rq = dl_se->rq;
  1768	    int cpu = cpu_of(rq);
  1769	    struct dl_bw *dl_b;
  1770	    int cpus;
  1771	
  1772	    if (!dl_se->dl_runtime)
  1773	        return 0;  /* Already disabled */
  1774	
  1775	    /*
  1776		 * First dequeue if still queued. It should not be queued since
  1777		 * we call this only after the last dl_server_stop().
  1778		 */
  1779	    if (WARN_ON_ONCE(on_dl_rq(dl_se)))
  1780	        dequeue_dl_entity(dl_se, DEQUEUE_SLEEP);
  1781	
  1782	    /* Cancel any pending timers */
  1783	    hrtimer_try_to_cancel(&dl_se->dl_timer);
  1784	    hrtimer_try_to_cancel(&dl_se->inactive_timer);
  1785	
  1786	    
  1787		/* Remove bandwidth from both runqueue and root domain accounting */
  1788	    dl_b = dl_bw_of(cpu);
  1789	    guard(raw_spinlock)(&dl_b->lock);
  1790	    cpus = dl_bw_cpus(cpu);
  1791	
  1792	    sub_rq_bw(dl_se, &rq->dl);
  1793	    __dl_sub(dl_b, dl_se->dl_bw, cpus);
  1794	
  1795	    /*
  1796	     * If server was active and consuming bandwidth, remove it from
  1797	     * running bandwidth accounting. This should not happen because
  1798	     * we call this only after the last dl_server_stop().
  1799	     */
  1800	    if (WARN_ON_ONCE(!dl_se->dl_non_contending))
  1801	        sub_running_bw(dl_se, &rq->dl);
  1802	
  1803	    /*
  1804		 * Clear all server parameters. This will also clear ->dl_server so
  1805		 * the next dl_server_apply_params() will reconfigure the server.
  1806		 */
  1807	    __dl_clear_params(dl_se);
  1808	
  1809	    return 0;
  1810	}
  1811	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, acb4f337)
From: cki-project @ 2025-03-28  5:53 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'm68knommu-for-v6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1739484304

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1739484304-x86_64-kernel-debug


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, 68f090f0)
From: cki-project @ 2025-03-28  3:53 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'ktest-v6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1739403845

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1739403845-x86_64-kernel-debug
    We also see the following known issues which are not related to your changes:
          x86_64 - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1739403845-x86_64-kernel
                   Issue: Kernel build: arch/x86/tools/insn_decoder_test: error: malformed line
                          https://github.com/Rust-for-Linux/linux/issues/1134


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, 4fa118e5)
From: cki-project @ 2025-03-28  2:43 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'trace-tools-v6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1739356820

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1739356820-x86_64-kernel-debug
    We also see the following known issues which are not related to your changes:
          x86_64 - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1739356820-x86_64-kernel
                   Issue: Kernel build: arch/x86/tools/insn_decoder_test: error: malformed line
                          https://github.com/Rust-for-Linux/linux/issues/1134


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* [tip:WIP.x86/alternatives 32/43] vmlinux.o: warning: objtool: text_poke_int3_handler+0x15: call to try_get_tp_array() leaves .noinstr.text section
From: kernel test robot @ 2025-03-28  2:02 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: llvm, oe-kbuild-all, linux-kernel, x86

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.x86/alternatives
head:   89555c4754bde7a509d7992c1ecefeb00229fac9
commit: 2559956f36daa294cc4c3beef0a2853cfe02f230 [32/43] x86/alternatives: Simplify try_get_tp_array()
config: x86_64-buildonly-randconfig-004-20250328 (https://download.01.org/0day-ci/archive/20250328/202503280943.gnyusUlI-lkp@intel.com/config)
compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503280943.gnyusUlI-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503280943.gnyusUlI-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> vmlinux.o: warning: objtool: text_poke_int3_handler+0x15: call to try_get_tp_array() leaves .noinstr.text section

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* [broonie-ci:file3No0df 19/20] ERROR: modpost: "qcom_nandc_alloc" [drivers/spi/spi-qpic-snand.ko] undefined!
From: kernel test robot @ 2025-03-27 23:56 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: llvm, oe-kbuild-all, Mark Brown

Hi Geert,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/ci.git file3No0df
head:   40369bfe717e96e26650eeecfa5a6363563df6e4
commit: d32c4e58545f17caaa854415f854691e32d42075 [19/20] spi: SPI_QPIC_SNAND should be tristate and depend on MTD
config: powerpc-randconfig-003-20250328 (https://download.01.org/0day-ci/archive/20250328/202503280759.XhwLcV7m-lkp@intel.com/config)
compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project c2692afc0a92cd5da140dfcdfff7818a5b8ce997)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503280759.XhwLcV7m-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503280759.XhwLcV7m-lkp@intel.com/

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

WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/fpga/tests/fpga-mgr-test.o
WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/fpga/tests/fpga-bridge-test.o
WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/fpga/tests/fpga-region-test.o
>> ERROR: modpost: "qcom_nandc_alloc" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_nandc_unalloc" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_write_reg_dma" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_submit_descs" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_clear_read_regs" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_clear_bam_transaction" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_read_data_dma" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_nandc_dev_to_mem" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_write_data_dma" [drivers/spi/spi-qpic-snand.ko] undefined!
>> ERROR: modpost: "qcom_read_reg_dma" [drivers/spi/spi-qpic-snand.ko] undefined!

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* [tip:WIP.x86/alternatives 35/43] arch/x86/kernel/alternative.c:2614: warning: Excess function parameter 'tp_array.vec' description in 'text_poke_int3_batch_process'
From: kernel test robot @ 2025-03-27 23:44 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: llvm, oe-kbuild-all, linux-kernel, x86

Hi Ingo,

FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.x86/alternatives
head:   89555c4754bde7a509d7992c1ecefeb00229fac9
commit: 33bc2a1341293fac4fd4e0f7035ca2397daf8fb5 [35/43] x86/alternatives: Rename 'text_poke_int3_batch()' to 'text_poke_int3_batch_process()'
config: x86_64-buildonly-randconfig-001-20250328 (https://download.01.org/0day-ci/archive/20250328/202503280745.Jp7eol8r-lkp@intel.com/config)
compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503280745.Jp7eol8r-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503280745.Jp7eol8r-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> arch/x86/kernel/alternative.c:2614: warning: Excess function parameter 'tp_array.vec' description in 'text_poke_int3_batch_process'
>> arch/x86/kernel/alternative.c:2614: warning: Excess function parameter 'tp_array.nr_entries' description in 'text_poke_int3_batch_process'


vim +2614 arch/x86/kernel/alternative.c

17f41571bb2c4a Jiri Kosina                2013-07-23  2591  
fd4363fff3d967 Jiri Kosina                2013-07-12  2592  /**
33bc2a1341293f Ingo Molnar                2025-03-27  2593   * text_poke_int3_batch_process() -- update instructions on live kernel on SMP
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2594   * @tp_array.vec:		vector of instructions to patch
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2595   * @tp_array.nr_entries:	number of entries in the vector
fd4363fff3d967 Jiri Kosina                2013-07-12  2596   *
fd4363fff3d967 Jiri Kosina                2013-07-12  2597   * Modify multi-byte instruction by using int3 breakpoint on SMP.
ea8596bb2d8d37 Masami Hiramatsu           2013-07-18  2598   * We completely avoid stop_machine() here, and achieve the
ea8596bb2d8d37 Masami Hiramatsu           2013-07-18  2599   * synchronization using int3 breakpoint.
fd4363fff3d967 Jiri Kosina                2013-07-12  2600   *
fd4363fff3d967 Jiri Kosina                2013-07-12  2601   * The way it is done:
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2602   *	- For each entry in the vector:
fd4363fff3d967 Jiri Kosina                2013-07-12  2603   *		- add a int3 trap to the address that will be patched
fd4363fff3d967 Jiri Kosina                2013-07-12  2604   *	- sync cores
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2605   *	- For each entry in the vector:
fd4363fff3d967 Jiri Kosina                2013-07-12  2606   *		- update all but the first byte of the patched range
fd4363fff3d967 Jiri Kosina                2013-07-12  2607   *	- sync cores
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2608   *	- For each entry in the vector:
fd4363fff3d967 Jiri Kosina                2013-07-12  2609   *		- replace the first byte (int3) by the first byte of
fd4363fff3d967 Jiri Kosina                2013-07-12  2610   *		  replacing opcode
fd4363fff3d967 Jiri Kosina                2013-07-12  2611   *	- sync cores
fd4363fff3d967 Jiri Kosina                2013-07-12  2612   */
33bc2a1341293f Ingo Molnar                2025-03-27  2613  static void text_poke_int3_batch_process(void)
fd4363fff3d967 Jiri Kosina                2013-07-12 @2614  {
c3d6324f841bab Peter Zijlstra             2019-06-05  2615  	unsigned char int3 = INT3_INSN_OPCODE;
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2616  	unsigned int i;
c3d6324f841bab Peter Zijlstra             2019-06-05  2617  	int do_sync;
9222f606506c5f Jiri Kosina                2018-08-28  2618  
9222f606506c5f Jiri Kosina                2018-08-28  2619  	lockdep_assert_held(&text_mutex);
9222f606506c5f Jiri Kosina                2018-08-28  2620  
efd608fa7403ba Nadav Amit                 2022-09-21  2621  	/*
527963ab5369ee Ingo Molnar                2025-03-27  2622  	 * Corresponds to the implicit memory barrier in try_get_tp_array() to
296b9167381c07 Ingo Molnar                2025-03-27  2623  	 * ensure reading a non-zero refcount provides up to date tp_array data.
efd608fa7403ba Nadav Amit                 2022-09-21  2624  	 */
41e4ceece5913b Eric Dumazet               2025-03-25  2625  	for_each_possible_cpu(i)
10b9345c1aa7dd Ingo Molnar                2025-03-27  2626  		atomic_set_release(per_cpu_ptr(&int3_refs, i), 1);
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2627  
9350a629e839ca Steven Rostedt (Google     2023-05-31  2628) 	/*
9350a629e839ca Steven Rostedt (Google     2023-05-31  2629) 	 * Function tracing can enable thousands of places that need to be
9350a629e839ca Steven Rostedt (Google     2023-05-31  2630) 	 * updated. This can take quite some time, and with full kernel debugging
9350a629e839ca Steven Rostedt (Google     2023-05-31  2631) 	 * enabled, this could cause the softlockup watchdog to trigger.
9350a629e839ca Steven Rostedt (Google     2023-05-31  2632) 	 * This function gets called every 256 entries added to be patched.
9350a629e839ca Steven Rostedt (Google     2023-05-31  2633) 	 * Call cond_resched() here to make sure that other tasks can get scheduled
9350a629e839ca Steven Rostedt (Google     2023-05-31  2634) 	 * while processing all the functions being patched.
9350a629e839ca Steven Rostedt (Google     2023-05-31  2635) 	 */
9350a629e839ca Steven Rostedt (Google     2023-05-31  2636) 	cond_resched();
9350a629e839ca Steven Rostedt (Google     2023-05-31  2637) 
fd4363fff3d967 Jiri Kosina                2013-07-12  2638  	/*
01651324edad9d Peter Zijlstra             2017-07-31  2639  	 * Corresponding read barrier in int3 notifier for making sure the
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2640  	 * tp_array.nr_entries and handler are correctly ordered wrt. patching.
fd4363fff3d967 Jiri Kosina                2013-07-12  2641  	 */
fd4363fff3d967 Jiri Kosina                2013-07-12  2642  	smp_wmb();
fd4363fff3d967 Jiri Kosina                2013-07-12  2643  
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2644  	/*
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2645  	 * First step: add a int3 trap to the address that will be patched.
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2646  	 */
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2647  	for (i = 0; i < tp_array.nr_entries; i++) {
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2648  		tp_array.vec[i].old = *(u8 *)text_poke_int3_addr(&tp_array.vec[i]);
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2649  		text_poke(text_poke_int3_addr(&tp_array.vec[i]), &int3, INT3_INSN_SIZE);
d769811ca93303 Adrian Hunter              2020-05-12  2650  	}
fd4363fff3d967 Jiri Kosina                2013-07-12  2651  
5c02ece81848db Peter Zijlstra             2019-10-09  2652  	text_poke_sync();
fd4363fff3d967 Jiri Kosina                2013-07-12  2653  
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2654  	/*
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2655  	 * Second step: update all but the first byte of the patched range.
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2656  	 */
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2657  	for (do_sync = 0, i = 0; i < tp_array.nr_entries; i++) {
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2658  		u8 old[POKE_MAX_OPCODE_SIZE+1] = { tp_array.vec[i].old, };
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2659  		u8 _new[POKE_MAX_OPCODE_SIZE+1];
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2660  		const u8 *new = tp_array.vec[i].text;
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2661  		int len = tp_array.vec[i].len;
97e6c977ccf128 Peter Zijlstra             2019-10-09  2662  
76ffa7204b1ad7 Peter Zijlstra             2019-11-11  2663  		if (len - INT3_INSN_SIZE > 0) {
d769811ca93303 Adrian Hunter              2020-05-12  2664  			memcpy(old + INT3_INSN_SIZE,
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2665  			       text_poke_int3_addr(&tp_array.vec[i]) + INT3_INSN_SIZE,
d769811ca93303 Adrian Hunter              2020-05-12  2666  			       len - INT3_INSN_SIZE);
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2667  
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2668  			if (len == 6) {
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2669  				_new[0] = 0x0f;
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2670  				memcpy(_new + 1, new, 5);
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2671  				new = _new;
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2672  			}
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2673  
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2674  			text_poke(text_poke_int3_addr(&tp_array.vec[i]) + INT3_INSN_SIZE,
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2675  				  new + INT3_INSN_SIZE,
76ffa7204b1ad7 Peter Zijlstra             2019-11-11  2676  				  len - INT3_INSN_SIZE);
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2677  
c3d6324f841bab Peter Zijlstra             2019-06-05  2678  			do_sync++;
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2679  		}
d769811ca93303 Adrian Hunter              2020-05-12  2680  
d769811ca93303 Adrian Hunter              2020-05-12  2681  		/*
d769811ca93303 Adrian Hunter              2020-05-12  2682  		 * Emit a perf event to record the text poke, primarily to
d769811ca93303 Adrian Hunter              2020-05-12  2683  		 * support Intel PT decoding which must walk the executable code
d769811ca93303 Adrian Hunter              2020-05-12  2684  		 * to reconstruct the trace. The flow up to here is:
d769811ca93303 Adrian Hunter              2020-05-12  2685  		 *   - write INT3 byte
d769811ca93303 Adrian Hunter              2020-05-12  2686  		 *   - IPI-SYNC
d769811ca93303 Adrian Hunter              2020-05-12  2687  		 *   - write instruction tail
d769811ca93303 Adrian Hunter              2020-05-12  2688  		 * At this point the actual control flow will be through the
d769811ca93303 Adrian Hunter              2020-05-12  2689  		 * INT3 and handler and not hit the old or new instruction.
d769811ca93303 Adrian Hunter              2020-05-12  2690  		 * Intel PT outputs FUP/TIP packets for the INT3, so the flow
d769811ca93303 Adrian Hunter              2020-05-12  2691  		 * can still be decoded. Subsequently:
d769811ca93303 Adrian Hunter              2020-05-12  2692  		 *   - emit RECORD_TEXT_POKE with the new instruction
d769811ca93303 Adrian Hunter              2020-05-12  2693  		 *   - IPI-SYNC
d769811ca93303 Adrian Hunter              2020-05-12  2694  		 *   - write first byte
d769811ca93303 Adrian Hunter              2020-05-12  2695  		 *   - IPI-SYNC
d769811ca93303 Adrian Hunter              2020-05-12  2696  		 * So before the text poke event timestamp, the decoder will see
d769811ca93303 Adrian Hunter              2020-05-12  2697  		 * either the old instruction flow or FUP/TIP of INT3. After the
d769811ca93303 Adrian Hunter              2020-05-12  2698  		 * text poke event timestamp, the decoder will see either the
d769811ca93303 Adrian Hunter              2020-05-12  2699  		 * new instruction flow or FUP/TIP of INT3. Thus decoders can
d769811ca93303 Adrian Hunter              2020-05-12  2700  		 * use the timestamp as the point at which to modify the
d769811ca93303 Adrian Hunter              2020-05-12  2701  		 * executable code.
d769811ca93303 Adrian Hunter              2020-05-12  2702  		 * The old instruction is recorded so that the event can be
d769811ca93303 Adrian Hunter              2020-05-12  2703  		 * processed forwards or backwards.
d769811ca93303 Adrian Hunter              2020-05-12  2704  		 */
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2705  		perf_event_text_poke(text_poke_int3_addr(&tp_array.vec[i]), old, len, new, len);
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2706  	}
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2707  
c3d6324f841bab Peter Zijlstra             2019-06-05  2708  	if (do_sync) {
fd4363fff3d967 Jiri Kosina                2013-07-12  2709  		/*
fd4363fff3d967 Jiri Kosina                2013-07-12  2710  		 * According to Intel, this core syncing is very likely
fd4363fff3d967 Jiri Kosina                2013-07-12  2711  		 * not necessary and we'd be safe even without it. But
fd4363fff3d967 Jiri Kosina                2013-07-12  2712  		 * better safe than sorry (plus there's not only Intel).
fd4363fff3d967 Jiri Kosina                2013-07-12  2713  		 */
5c02ece81848db Peter Zijlstra             2019-10-09  2714  		text_poke_sync();
fd4363fff3d967 Jiri Kosina                2013-07-12  2715  	}
fd4363fff3d967 Jiri Kosina                2013-07-12  2716  
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2717  	/*
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2718  	 * Third step: replace the first byte (int3) by the first byte of
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2719  	 * replacing opcode.
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2720  	 */
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2721  	for (do_sync = 0, i = 0; i < tp_array.nr_entries; i++) {
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2722  		u8 byte = tp_array.vec[i].text[0];
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2723  
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2724  		if (tp_array.vec[i].len == 6)
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2725  			byte = 0x0f;
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2726  
ac0ee0a9560c97 Peter Zijlstra             2023-01-23  2727  		if (byte == INT3_INSN_OPCODE)
c3d6324f841bab Peter Zijlstra             2019-06-05  2728  			continue;
fd4363fff3d967 Jiri Kosina                2013-07-12  2729  
4cacf32f02d9e3 Ingo Molnar                2025-03-27  2730  		text_poke(text_poke_int3_addr(&tp_array.vec[i]), &byte, INT3_INSN_SIZE);
c3d6324f841bab Peter Zijlstra             2019-06-05  2731  		do_sync++;
c3d6324f841bab Peter Zijlstra             2019-06-05  2732  	}
c3d6324f841bab Peter Zijlstra             2019-06-05  2733  
c3d6324f841bab Peter Zijlstra             2019-06-05  2734  	if (do_sync)
5c02ece81848db Peter Zijlstra             2019-10-09  2735  		text_poke_sync();
c3d6324f841bab Peter Zijlstra             2019-06-05  2736  
01651324edad9d Peter Zijlstra             2017-07-31  2737  	/*
efd608fa7403ba Nadav Amit                 2022-09-21  2738  	 * Remove and wait for refs to be zero.
451283cd40bcec Peter Zijlstra             2025-03-25  2739  	 *
451283cd40bcec Peter Zijlstra             2025-03-25  2740  	 * Notably, if after step-3 above the INT3 got removed, then the
451283cd40bcec Peter Zijlstra             2025-03-25  2741  	 * text_poke_sync() will have serialized against any running INT3
451283cd40bcec Peter Zijlstra             2025-03-25  2742  	 * handlers and the below spin-wait will not happen.
451283cd40bcec Peter Zijlstra             2025-03-25  2743  	 *
451283cd40bcec Peter Zijlstra             2025-03-25  2744  	 * IOW. unless the replacement instruction is INT3, this case goes
451283cd40bcec Peter Zijlstra             2025-03-25  2745  	 * unused.
01651324edad9d Peter Zijlstra             2017-07-31  2746  	 */
41e4ceece5913b Eric Dumazet               2025-03-25  2747  	for_each_possible_cpu(i) {
10b9345c1aa7dd Ingo Molnar                2025-03-27  2748  		atomic_t *refs = per_cpu_ptr(&int3_refs, i);
41e4ceece5913b Eric Dumazet               2025-03-25  2749  
41e4ceece5913b Eric Dumazet               2025-03-25  2750  		if (unlikely(!atomic_dec_and_test(refs)))
41e4ceece5913b Eric Dumazet               2025-03-25  2751  			atomic_cond_read_acquire(refs, !VAL);
41e4ceece5913b Eric Dumazet               2025-03-25  2752  	}
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2753  }
c0213b0ac03cf6 Daniel Bristot de Oliveira 2019-06-12  2754  

:::::: The code at line 2614 was first introduced by commit
:::::: fd4363fff3d96795d3feb1b3fb48ce590f186bdd x86: Introduce int3 (breakpoint)-based instruction patching

:::::: TO: Jiri Kosina <jkosina@suse.cz>
:::::: CC: H. Peter Anvin <hpa@linux.intel.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, 5c2a430e)
From: cki-project @ 2025-03-27 22:42 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'ext4-for_linus-6.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1739128775

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1739128775-x86_64-kernel-debug
    We also see the following known issues which are not related to your changes:
          x86_64 - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1739128775-x86_64-kernel
                   Issue: Kernel build: arch/x86/tools/insn_decoder_test: error: malformed line
                          https://github.com/Rust-for-Linux/linux/issues/1134


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, 3a90a72a)
From: cki-project @ 2025-03-27 20:52 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'asm-generic-6.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1738965307

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1738965307-x86_64-kernel-debug
    We also see the following known issues which are not related to your changes:
          x86_64 - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1738965307-x86_64-kernel
                   Issue: Kernel build: arch/x86/tools/insn_decoder_test: error: malformed line
                          https://github.com/Rust-for-Linux/linux/issues/1134


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* Re: [syzbot] [x25?] possible deadlock in lapbeth_device_event
From: syzbot @ 2025-03-27 14:46 UTC (permalink / raw)
  To: andrew, davem, edumazet, eric.dumazet, horms, kuba, linux-kernel,
	linux-x25, lkp, llvm, ms, netdev, oe-kbuild-all, pabeni, sdf,
	stfomichev, syzkaller-bugs
In-Reply-To: <Z-ViZoezAdjY8TC-@mini-arch>

Hello,

syzbot tried to test the proposed patch but the build/boot failed:

drivers/net/wan/lapbether.c:376:36: error: 'netdev' undeclared (first use in this function); did you mean 'net_eq'?


Tested on:

commit:         1a9239bb Merge tag 'net-next-6.15' of git://git.kernel..
git tree:       upstream
kernel config:  https://syzkaller.appspot.com/x/.config?x=95c3bbe7ce8436a7
dashboard link: https://syzkaller.appspot.com/bug?extid=377b71db585c9c705f8e
compiler:       gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40
patch:          https://syzkaller.appspot.com/x/patch.diff?x=15a66bb0580000


^ permalink raw reply

* Re: [syzbot] [x25?] possible deadlock in lapbeth_device_event
From: Stanislav Fomichev @ 2025-03-27 14:43 UTC (permalink / raw)
  To: Eric Dumazet
  Cc: syzbot, andrew+netdev, andrew, davem, eric.dumazet, horms, kuba,
	linux-kernel, linux-x25, lkp, llvm, ms, netdev, oe-kbuild-all,
	pabeni, sdf, syzkaller-bugs
In-Reply-To: <CANn89iKXRXXA392PY9uuL560JNW0ee_hGTu3xk=6X=6jRR2OkQ@mail.gmail.com>

On 03/27, Eric Dumazet wrote:
> On Thu, Mar 27, 2025 at 3:36 PM Stanislav Fomichev <stfomichev@gmail.com> wrote:
> >
> > On 03/27, syzbot wrote:
> > > syzbot has found a reproducer for the following issue on:
> > >
> > > HEAD commit:    1a9239bb4253 Merge tag 'net-next-6.15' of git://git.kernel..
> > > git tree:       upstream
> > > console output: https://syzkaller.appspot.com/x/log.txt?x=15503804580000
> > > kernel config:  https://syzkaller.appspot.com/x/.config?x=95c3bbe7ce8436a7
> > > dashboard link: https://syzkaller.appspot.com/bug?extid=377b71db585c9c705f8e
> > > compiler:       gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40
> > > syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=139a6bb0580000
> > > C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=16974a4c580000
> > >
> > > Downloadable assets:
> > > disk image (non-bootable): https://storage.googleapis.com/syzbot-assets/7feb34a89c2a/non_bootable_disk-1a9239bb.raw.xz
> > > vmlinux: https://storage.googleapis.com/syzbot-assets/bd56e2f824c3/vmlinux-1a9239bb.xz
> > > kernel image: https://storage.googleapis.com/syzbot-assets/19172b7f9497/bzImage-1a9239bb.xz
> > >
> > > IMPORTANT: if you fix the issue, please add the following tag to the commit:
> > > Reported-by: syzbot+377b71db585c9c705f8e@syzkaller.appspotmail.com
> > >
> > > ============================================
> > > WARNING: possible recursive locking detected
> > > 6.14.0-syzkaller-05877-g1a9239bb4253 #0 Not tainted
> > > --------------------------------------------
> > > dhcpcd/5649 is trying to acquire lock:
> > > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> > > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
> > > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
> > > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460
> > >
> > > but task is already holding lock:
> > > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> > > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
> > > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
> > > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67
> > >
> > > other info that might help us debug this:
> > >  Possible unsafe locking scenario:
> > >
> > >        CPU0
> > >        ----
> > >   lock(&dev->lock);
> > >   lock(&dev->lock);
> > >
> > >  *** DEADLOCK ***
> > >
> > >  May be due to missing lock nesting notation
> > >
> > > 2 locks held by dhcpcd/5649:
> > >  #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_net_lock include/linux/rtnetlink.h:130 [inline]
> > >  #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: devinet_ioctl+0x26d/0x1f50 net/ipv4/devinet.c:1121
> > >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> > >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
> > >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
> > >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67
> > >
> > > stack backtrace:
> > > CPU: 1 UID: 0 PID: 5649 Comm: dhcpcd Not tainted 6.14.0-syzkaller-05877-g1a9239bb4253 #0 PREEMPT(full)
> > > Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
> > > Call Trace:
> > >  <TASK>
> > >  __dump_stack lib/dump_stack.c:94 [inline]
> > >  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120
> > >  print_deadlock_bug+0x1e9/0x240 kernel/locking/lockdep.c:3042
> > >  check_deadlock kernel/locking/lockdep.c:3094 [inline]
> > >  validate_chain kernel/locking/lockdep.c:3896 [inline]
> > >  __lock_acquire+0xff7/0x1ba0 kernel/locking/lockdep.c:5235
> > >  lock_acquire kernel/locking/lockdep.c:5866 [inline]
> > >  lock_acquire+0x179/0x350 kernel/locking/lockdep.c:5823
> > >  __mutex_lock_common kernel/locking/mutex.c:587 [inline]
> > >  __mutex_lock+0x19a/0xb00 kernel/locking/mutex.c:732
> > >  netdev_lock include/linux/netdevice.h:2751 [inline]
> > >  netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
> > >  lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
> > >  lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460
> > >  notifier_call_chain+0xb9/0x410 kernel/notifier.c:85
> > >  call_netdevice_notifiers_info+0xbe/0x140 net/core/dev.c:2180
> > >  call_netdevice_notifiers_extack net/core/dev.c:2218 [inline]
> > >  call_netdevice_notifiers net/core/dev.c:2232 [inline]
> > >  __dev_notify_flags+0x12c/0x2e0 net/core/dev.c:9409
> > >  netif_change_flags+0x108/0x160 net/core/dev.c:9438
> > >  dev_change_flags+0xba/0x250 net/core/dev_api.c:68
> > >  devinet_ioctl+0x11d5/0x1f50 net/ipv4/devinet.c:1200
> > >  inet_ioctl+0x3a7/0x3f0 net/ipv4/af_inet.c:1001
> > >  sock_do_ioctl+0x115/0x280 net/socket.c:1190
> > >  sock_ioctl+0x227/0x6b0 net/socket.c:1311
> > >  vfs_ioctl fs/ioctl.c:51 [inline]
> > >  __do_sys_ioctl fs/ioctl.c:906 [inline]
> > >  __se_sys_ioctl fs/ioctl.c:892 [inline]
> > >  __x64_sys_ioctl+0x190/0x200 fs/ioctl.c:892
> > >  do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
> > >  do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94
> > >  entry_SYSCALL_64_after_hwframe+0x77/0x7f
> > > RIP: 0033:0x7effd384cd49
> > > Code: 5c c3 48 8d 44 24 08 48 89 54 24 e0 48 89 44 24 c0 48 8d 44 24 d0 48 89 44 24 c8 b8 10 00 00 00 c7 44 24 b8 10 00 00 00 0f 05 <41> 89 c0 3d 00 f0 ff ff 76 10 48 8b 15 ae 60 0d 00 f7 d8 41 83 c8
> > > RSP: 002b:00007ffedd440088 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > > RAX: ffffffffffffffda RBX: 00007effd377e6c0 RCX: 00007effd384cd49
> > > RDX: 00007ffedd450278 RSI: 0000000000008914 RDI: 000000000000001a
> > > RBP: 00007ffedd460438 R08: 00007ffedd450238 R09: 00007ffedd4501e8
> > > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > > R13: 00007ffedd450278 R14: 0000000000000028 R15: 0000000000008914
> > >  </TASK>
> > >
> > >
> > > ---
> > > If you want syzbot to run the reproducer, reply with:
> > > #syz test: git://repo/address.git branch-or-commit-hash
> > > If you attach or paste a git patch, syzbot will apply it before testing.
> >
> > #syz test
> >
> > diff --git a/drivers/net/wan/lapbether.c b/drivers/net/wan/lapbether.c
> > index 56326f38fe8a..a022e930bd8e 100644
> > --- a/drivers/net/wan/lapbether.c
> > +++ b/drivers/net/wan/lapbether.c
> > @@ -39,6 +39,7 @@
> >  #include <linux/lapb.h>
> >  #include <linux/init.h>
> >
> > +#include <net/netdev_lock.h>
> >  #include <net/x25device.h>
> >
> >  static const u8 bcast_addr[6] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
> > @@ -372,6 +373,7 @@ static void lapbeth_setup(struct net_device *dev)
> >         dev->hard_header_len = 0;
> >         dev->mtu             = 1000;
> >         dev->addr_len        = 0;
> > +       netdev_lockdep_set_classes(netdev);
> >  }
> >
> >  /*     Setup a new device.
> >
> 
> I can resubmit https://lore.kernel.org/netdev/Z84MME6rwU6q9aJa@mini-arch/T/

Ah, this was not pulled because of net vs net-next? Yes, please do!

^ permalink raw reply

* Re: [syzbot] [x25?] possible deadlock in lapbeth_device_event
From: Eric Dumazet @ 2025-03-27 14:38 UTC (permalink / raw)
  To: Stanislav Fomichev
  Cc: syzbot, andrew+netdev, andrew, davem, eric.dumazet, horms, kuba,
	linux-kernel, linux-x25, lkp, llvm, ms, netdev, oe-kbuild-all,
	pabeni, sdf, syzkaller-bugs
In-Reply-To: <Z-ViZoezAdjY8TC-@mini-arch>

On Thu, Mar 27, 2025 at 3:36 PM Stanislav Fomichev <stfomichev@gmail.com> wrote:
>
> On 03/27, syzbot wrote:
> > syzbot has found a reproducer for the following issue on:
> >
> > HEAD commit:    1a9239bb4253 Merge tag 'net-next-6.15' of git://git.kernel..
> > git tree:       upstream
> > console output: https://syzkaller.appspot.com/x/log.txt?x=15503804580000
> > kernel config:  https://syzkaller.appspot.com/x/.config?x=95c3bbe7ce8436a7
> > dashboard link: https://syzkaller.appspot.com/bug?extid=377b71db585c9c705f8e
> > compiler:       gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40
> > syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=139a6bb0580000
> > C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=16974a4c580000
> >
> > Downloadable assets:
> > disk image (non-bootable): https://storage.googleapis.com/syzbot-assets/7feb34a89c2a/non_bootable_disk-1a9239bb.raw.xz
> > vmlinux: https://storage.googleapis.com/syzbot-assets/bd56e2f824c3/vmlinux-1a9239bb.xz
> > kernel image: https://storage.googleapis.com/syzbot-assets/19172b7f9497/bzImage-1a9239bb.xz
> >
> > IMPORTANT: if you fix the issue, please add the following tag to the commit:
> > Reported-by: syzbot+377b71db585c9c705f8e@syzkaller.appspotmail.com
> >
> > ============================================
> > WARNING: possible recursive locking detected
> > 6.14.0-syzkaller-05877-g1a9239bb4253 #0 Not tainted
> > --------------------------------------------
> > dhcpcd/5649 is trying to acquire lock:
> > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
> > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
> > ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460
> >
> > but task is already holding lock:
> > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
> > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
> > ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67
> >
> > other info that might help us debug this:
> >  Possible unsafe locking scenario:
> >
> >        CPU0
> >        ----
> >   lock(&dev->lock);
> >   lock(&dev->lock);
> >
> >  *** DEADLOCK ***
> >
> >  May be due to missing lock nesting notation
> >
> > 2 locks held by dhcpcd/5649:
> >  #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_net_lock include/linux/rtnetlink.h:130 [inline]
> >  #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: devinet_ioctl+0x26d/0x1f50 net/ipv4/devinet.c:1121
> >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
> >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
> >  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67
> >
> > stack backtrace:
> > CPU: 1 UID: 0 PID: 5649 Comm: dhcpcd Not tainted 6.14.0-syzkaller-05877-g1a9239bb4253 #0 PREEMPT(full)
> > Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:94 [inline]
> >  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120
> >  print_deadlock_bug+0x1e9/0x240 kernel/locking/lockdep.c:3042
> >  check_deadlock kernel/locking/lockdep.c:3094 [inline]
> >  validate_chain kernel/locking/lockdep.c:3896 [inline]
> >  __lock_acquire+0xff7/0x1ba0 kernel/locking/lockdep.c:5235
> >  lock_acquire kernel/locking/lockdep.c:5866 [inline]
> >  lock_acquire+0x179/0x350 kernel/locking/lockdep.c:5823
> >  __mutex_lock_common kernel/locking/mutex.c:587 [inline]
> >  __mutex_lock+0x19a/0xb00 kernel/locking/mutex.c:732
> >  netdev_lock include/linux/netdevice.h:2751 [inline]
> >  netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
> >  lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
> >  lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460
> >  notifier_call_chain+0xb9/0x410 kernel/notifier.c:85
> >  call_netdevice_notifiers_info+0xbe/0x140 net/core/dev.c:2180
> >  call_netdevice_notifiers_extack net/core/dev.c:2218 [inline]
> >  call_netdevice_notifiers net/core/dev.c:2232 [inline]
> >  __dev_notify_flags+0x12c/0x2e0 net/core/dev.c:9409
> >  netif_change_flags+0x108/0x160 net/core/dev.c:9438
> >  dev_change_flags+0xba/0x250 net/core/dev_api.c:68
> >  devinet_ioctl+0x11d5/0x1f50 net/ipv4/devinet.c:1200
> >  inet_ioctl+0x3a7/0x3f0 net/ipv4/af_inet.c:1001
> >  sock_do_ioctl+0x115/0x280 net/socket.c:1190
> >  sock_ioctl+0x227/0x6b0 net/socket.c:1311
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:906 [inline]
> >  __se_sys_ioctl fs/ioctl.c:892 [inline]
> >  __x64_sys_ioctl+0x190/0x200 fs/ioctl.c:892
> >  do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
> >  do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94
> >  entry_SYSCALL_64_after_hwframe+0x77/0x7f
> > RIP: 0033:0x7effd384cd49
> > Code: 5c c3 48 8d 44 24 08 48 89 54 24 e0 48 89 44 24 c0 48 8d 44 24 d0 48 89 44 24 c8 b8 10 00 00 00 c7 44 24 b8 10 00 00 00 0f 05 <41> 89 c0 3d 00 f0 ff ff 76 10 48 8b 15 ae 60 0d 00 f7 d8 41 83 c8
> > RSP: 002b:00007ffedd440088 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007effd377e6c0 RCX: 00007effd384cd49
> > RDX: 00007ffedd450278 RSI: 0000000000008914 RDI: 000000000000001a
> > RBP: 00007ffedd460438 R08: 00007ffedd450238 R09: 00007ffedd4501e8
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffedd450278 R14: 0000000000000028 R15: 0000000000008914
> >  </TASK>
> >
> >
> > ---
> > If you want syzbot to run the reproducer, reply with:
> > #syz test: git://repo/address.git branch-or-commit-hash
> > If you attach or paste a git patch, syzbot will apply it before testing.
>
> #syz test
>
> diff --git a/drivers/net/wan/lapbether.c b/drivers/net/wan/lapbether.c
> index 56326f38fe8a..a022e930bd8e 100644
> --- a/drivers/net/wan/lapbether.c
> +++ b/drivers/net/wan/lapbether.c
> @@ -39,6 +39,7 @@
>  #include <linux/lapb.h>
>  #include <linux/init.h>
>
> +#include <net/netdev_lock.h>
>  #include <net/x25device.h>
>
>  static const u8 bcast_addr[6] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
> @@ -372,6 +373,7 @@ static void lapbeth_setup(struct net_device *dev)
>         dev->hard_header_len = 0;
>         dev->mtu             = 1000;
>         dev->addr_len        = 0;
> +       netdev_lockdep_set_classes(netdev);
>  }
>
>  /*     Setup a new device.
>

I can resubmit https://lore.kernel.org/netdev/Z84MME6rwU6q9aJa@mini-arch/T/

^ permalink raw reply

* Re: [syzbot] [x25?] possible deadlock in lapbeth_device_event
From: Stanislav Fomichev @ 2025-03-27 14:36 UTC (permalink / raw)
  To: syzbot
  Cc: andrew+netdev, andrew, davem, edumazet, eric.dumazet, horms, kuba,
	linux-kernel, linux-x25, lkp, llvm, ms, netdev, oe-kbuild-all,
	pabeni, sdf, syzkaller-bugs
In-Reply-To: <67e55c12.050a0220.2f068f.002c.GAE@google.com>

On 03/27, syzbot wrote:
> syzbot has found a reproducer for the following issue on:
> 
> HEAD commit:    1a9239bb4253 Merge tag 'net-next-6.15' of git://git.kernel..
> git tree:       upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=15503804580000
> kernel config:  https://syzkaller.appspot.com/x/.config?x=95c3bbe7ce8436a7
> dashboard link: https://syzkaller.appspot.com/bug?extid=377b71db585c9c705f8e
> compiler:       gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40
> syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=139a6bb0580000
> C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=16974a4c580000
> 
> Downloadable assets:
> disk image (non-bootable): https://storage.googleapis.com/syzbot-assets/7feb34a89c2a/non_bootable_disk-1a9239bb.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/bd56e2f824c3/vmlinux-1a9239bb.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/19172b7f9497/bzImage-1a9239bb.xz
> 
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+377b71db585c9c705f8e@syzkaller.appspotmail.com
> 
> ============================================
> WARNING: possible recursive locking detected
> 6.14.0-syzkaller-05877-g1a9239bb4253 #0 Not tainted
> --------------------------------------------
> dhcpcd/5649 is trying to acquire lock:
> ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
> ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
> ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460
> 
> but task is already holding lock:
> ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
> ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
> ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
> ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67
> 
> other info that might help us debug this:
>  Possible unsafe locking scenario:
> 
>        CPU0
>        ----
>   lock(&dev->lock);
>   lock(&dev->lock);
> 
>  *** DEADLOCK ***
> 
>  May be due to missing lock nesting notation
> 
> 2 locks held by dhcpcd/5649:
>  #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_net_lock include/linux/rtnetlink.h:130 [inline]
>  #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: devinet_ioctl+0x26d/0x1f50 net/ipv4/devinet.c:1121
>  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
>  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
>  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
>  #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67
> 
> stack backtrace:
> CPU: 1 UID: 0 PID: 5649 Comm: dhcpcd Not tainted 6.14.0-syzkaller-05877-g1a9239bb4253 #0 PREEMPT(full) 
> Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
> Call Trace:
>  <TASK>
>  __dump_stack lib/dump_stack.c:94 [inline]
>  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120
>  print_deadlock_bug+0x1e9/0x240 kernel/locking/lockdep.c:3042
>  check_deadlock kernel/locking/lockdep.c:3094 [inline]
>  validate_chain kernel/locking/lockdep.c:3896 [inline]
>  __lock_acquire+0xff7/0x1ba0 kernel/locking/lockdep.c:5235
>  lock_acquire kernel/locking/lockdep.c:5866 [inline]
>  lock_acquire+0x179/0x350 kernel/locking/lockdep.c:5823
>  __mutex_lock_common kernel/locking/mutex.c:587 [inline]
>  __mutex_lock+0x19a/0xb00 kernel/locking/mutex.c:732
>  netdev_lock include/linux/netdevice.h:2751 [inline]
>  netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
>  lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
>  lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460
>  notifier_call_chain+0xb9/0x410 kernel/notifier.c:85
>  call_netdevice_notifiers_info+0xbe/0x140 net/core/dev.c:2180
>  call_netdevice_notifiers_extack net/core/dev.c:2218 [inline]
>  call_netdevice_notifiers net/core/dev.c:2232 [inline]
>  __dev_notify_flags+0x12c/0x2e0 net/core/dev.c:9409
>  netif_change_flags+0x108/0x160 net/core/dev.c:9438
>  dev_change_flags+0xba/0x250 net/core/dev_api.c:68
>  devinet_ioctl+0x11d5/0x1f50 net/ipv4/devinet.c:1200
>  inet_ioctl+0x3a7/0x3f0 net/ipv4/af_inet.c:1001
>  sock_do_ioctl+0x115/0x280 net/socket.c:1190
>  sock_ioctl+0x227/0x6b0 net/socket.c:1311
>  vfs_ioctl fs/ioctl.c:51 [inline]
>  __do_sys_ioctl fs/ioctl.c:906 [inline]
>  __se_sys_ioctl fs/ioctl.c:892 [inline]
>  __x64_sys_ioctl+0x190/0x200 fs/ioctl.c:892
>  do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
>  do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94
>  entry_SYSCALL_64_after_hwframe+0x77/0x7f
> RIP: 0033:0x7effd384cd49
> Code: 5c c3 48 8d 44 24 08 48 89 54 24 e0 48 89 44 24 c0 48 8d 44 24 d0 48 89 44 24 c8 b8 10 00 00 00 c7 44 24 b8 10 00 00 00 0f 05 <41> 89 c0 3d 00 f0 ff ff 76 10 48 8b 15 ae 60 0d 00 f7 d8 41 83 c8
> RSP: 002b:00007ffedd440088 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> RAX: ffffffffffffffda RBX: 00007effd377e6c0 RCX: 00007effd384cd49
> RDX: 00007ffedd450278 RSI: 0000000000008914 RDI: 000000000000001a
> RBP: 00007ffedd460438 R08: 00007ffedd450238 R09: 00007ffedd4501e8
> R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> R13: 00007ffedd450278 R14: 0000000000000028 R15: 0000000000008914
>  </TASK>
> 
> 
> ---
> If you want syzbot to run the reproducer, reply with:
> #syz test: git://repo/address.git branch-or-commit-hash
> If you attach or paste a git patch, syzbot will apply it before testing.

#syz test

diff --git a/drivers/net/wan/lapbether.c b/drivers/net/wan/lapbether.c
index 56326f38fe8a..a022e930bd8e 100644
--- a/drivers/net/wan/lapbether.c
+++ b/drivers/net/wan/lapbether.c
@@ -39,6 +39,7 @@
 #include <linux/lapb.h>
 #include <linux/init.h>
 
+#include <net/netdev_lock.h>
 #include <net/x25device.h>
 
 static const u8 bcast_addr[6] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
@@ -372,6 +373,7 @@ static void lapbeth_setup(struct net_device *dev)
 	dev->hard_header_len = 0;
 	dev->mtu             = 1000;
 	dev->addr_len        = 0;
+	netdev_lockdep_set_classes(netdev);
 }
 
 /*	Setup a new device.


^ permalink raw reply related

* Re: [syzbot] [x25?] possible deadlock in lapbeth_device_event
From: syzbot @ 2025-03-27 14:09 UTC (permalink / raw)
  To: andrew+netdev, andrew, davem, edumazet, eric.dumazet, horms, kuba,
	linux-kernel, linux-x25, lkp, llvm, ms, netdev, oe-kbuild-all,
	pabeni, sdf, stfomichev, syzkaller-bugs
In-Reply-To: <67cd611c.050a0220.14db68.0073.GAE@google.com>

syzbot has found a reproducer for the following issue on:

HEAD commit:    1a9239bb4253 Merge tag 'net-next-6.15' of git://git.kernel..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=15503804580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=95c3bbe7ce8436a7
dashboard link: https://syzkaller.appspot.com/bug?extid=377b71db585c9c705f8e
compiler:       gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40
syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=139a6bb0580000
C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=16974a4c580000

Downloadable assets:
disk image (non-bootable): https://storage.googleapis.com/syzbot-assets/7feb34a89c2a/non_bootable_disk-1a9239bb.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/bd56e2f824c3/vmlinux-1a9239bb.xz
kernel image: https://storage.googleapis.com/syzbot-assets/19172b7f9497/bzImage-1a9239bb.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+377b71db585c9c705f8e@syzkaller.appspotmail.com

============================================
WARNING: possible recursive locking detected
6.14.0-syzkaller-05877-g1a9239bb4253 #0 Not tainted
--------------------------------------------
dhcpcd/5649 is trying to acquire lock:
ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
ffff888023ad4d28 (&dev->lock){+.+.}-{4:4}, at: lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460

but task is already holding lock:
ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67

other info that might help us debug this:
 Possible unsafe locking scenario:

       CPU0
       ----
  lock(&dev->lock);
  lock(&dev->lock);

 *** DEADLOCK ***

 May be due to missing lock nesting notation

2 locks held by dhcpcd/5649:
 #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_net_lock include/linux/rtnetlink.h:130 [inline]
 #0: ffffffff900fb268 (rtnl_mutex){+.+.}-{4:4}, at: devinet_ioctl+0x26d/0x1f50 net/ipv4/devinet.c:1121
 #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
 #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
 #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline]
 #1: ffff888029940d28 (&dev->lock){+.+.}-{4:4}, at: dev_change_flags+0xa7/0x250 net/core/dev_api.c:67

stack backtrace:
CPU: 1 UID: 0 PID: 5649 Comm: dhcpcd Not tainted 6.14.0-syzkaller-05877-g1a9239bb4253 #0 PREEMPT(full) 
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120
 print_deadlock_bug+0x1e9/0x240 kernel/locking/lockdep.c:3042
 check_deadlock kernel/locking/lockdep.c:3094 [inline]
 validate_chain kernel/locking/lockdep.c:3896 [inline]
 __lock_acquire+0xff7/0x1ba0 kernel/locking/lockdep.c:5235
 lock_acquire kernel/locking/lockdep.c:5866 [inline]
 lock_acquire+0x179/0x350 kernel/locking/lockdep.c:5823
 __mutex_lock_common kernel/locking/mutex.c:587 [inline]
 __mutex_lock+0x19a/0xb00 kernel/locking/mutex.c:732
 netdev_lock include/linux/netdevice.h:2751 [inline]
 netif_napi_add_weight include/linux/netdevice.h:2783 [inline]
 lapbeth_new_device drivers/net/wan/lapbether.c:415 [inline]
 lapbeth_device_event+0x586/0xbe0 drivers/net/wan/lapbether.c:460
 notifier_call_chain+0xb9/0x410 kernel/notifier.c:85
 call_netdevice_notifiers_info+0xbe/0x140 net/core/dev.c:2180
 call_netdevice_notifiers_extack net/core/dev.c:2218 [inline]
 call_netdevice_notifiers net/core/dev.c:2232 [inline]
 __dev_notify_flags+0x12c/0x2e0 net/core/dev.c:9409
 netif_change_flags+0x108/0x160 net/core/dev.c:9438
 dev_change_flags+0xba/0x250 net/core/dev_api.c:68
 devinet_ioctl+0x11d5/0x1f50 net/ipv4/devinet.c:1200
 inet_ioctl+0x3a7/0x3f0 net/ipv4/af_inet.c:1001
 sock_do_ioctl+0x115/0x280 net/socket.c:1190
 sock_ioctl+0x227/0x6b0 net/socket.c:1311
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:906 [inline]
 __se_sys_ioctl fs/ioctl.c:892 [inline]
 __x64_sys_ioctl+0x190/0x200 fs/ioctl.c:892
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7effd384cd49
Code: 5c c3 48 8d 44 24 08 48 89 54 24 e0 48 89 44 24 c0 48 8d 44 24 d0 48 89 44 24 c8 b8 10 00 00 00 c7 44 24 b8 10 00 00 00 0f 05 <41> 89 c0 3d 00 f0 ff ff 76 10 48 8b 15 ae 60 0d 00 f7 d8 41 83 c8
RSP: 002b:00007ffedd440088 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007effd377e6c0 RCX: 00007effd384cd49
RDX: 00007ffedd450278 RSI: 0000000000008914 RDI: 000000000000001a
RBP: 00007ffedd460438 R08: 00007ffedd450238 R09: 00007ffedd4501e8
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffedd450278 R14: 0000000000000028 R15: 0000000000008914
 </TASK>


---
If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

^ permalink raw reply

* gloria
From: Gloria @ 2025-03-27  9:13 UTC (permalink / raw)
  To: llvm

Hello.....


Good day to you I am writing this message to you to seek your
consent regarding onward investment plan,  in any country of yours.

My name is Ms Gloria Johson., I'm the CEO of AMP
Resources  LTD. We are involved in all sectors of oil and gas production.

Our operation range from crude extraction , transportation, retail and distribution. 
I am a Canadian born Russian resident in Saint Petersburg
Russia. 

Because of the war in Russia ,  I want to start moving my funds to a trusted person.
funds out of countries i mentioned as  I can't no longer stand the hard sanctions, over my funds in Holland and Paris and UK
Base on.russian sanctions  is facing as a result of Putin and his stubbornness. I
have deposits i would like to move, each of the deposit is 20m l need a trusted
person to manage the heritage.





Best regards,

Ms Gloria Johson.

^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, 1a9239bb)
From: cki-project @ 2025-03-27  8:23 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'net-next-6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1737535874

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1737535874-x86_64-kernel-debug
    We also see the following known issues which are not related to your changes:
          x86_64 - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1737535874-x86_64-kernel
                   Issue: Kernel build: arch/x86/tools/insn_decoder_test: error: malformed line
                          https://github.com/Rust-for-Linux/linux/issues/1134


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* [jfern:nova-gsp 25/48] error: cannot find macro `register` in this scope
From: kernel test robot @ 2025-03-27  7:21 UTC (permalink / raw)
  To: Alexandre Courbot; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jfern/linux.git nova-gsp
head:   8a5d4dee8e431c4d46aa04b30d0928d29a4d3522
commit: e8b2fbb30d806d93bbd9cede710958aa0b76a843 [25/48] [RFC] rust: add macros to define registers layout
config: x86_64-randconfig-072-20250327 (https://download.01.org/0day-ci/archive/20250327/202503271532.6ZuniB3h-lkp@intel.com/config)
compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1)
rustc: rustc 1.78.0 (9b00956e5 2024-04-29)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250327/202503271532.6ZuniB3h-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503271532.6ZuniB3h-lkp@intel.com/

All errors (new ones prefixed by >>):

>> error: cannot find macro `register` in this scope
   --> rust/doctests_kernel_generated.rs:3748:1
   |
   3748 | register!(Boot0@0x00000100, "Basic revision information about the chip";
   | ^^^^^^^^
   |
   help: consider importing this macro
   |
   3    + use kernel::register;
   |
--
>> error[E0425]: cannot find value `bar` in this scope
   --> rust/doctests_kernel_generated.rs:3799:26
   |
   3799 | let boot0 = Boot0::read(&bar);
   |                          ^^^ not found in this scope
--
>> error[E0425]: cannot find value `bar` in this scope
   --> rust/doctests_kernel_generated.rs:3807:49
   |
   3807 | boot0.set_major_rev(3).set_minor_rev(10).write(&bar);
   |                                                 ^^^ not found in this scope
--
>> error[E0425]: cannot find value `bar` in this scope
   --> rust/doctests_kernel_generated.rs:3810:15
   |
   3810 | Boot0::alter(&bar, |r| r.set_major_rev(3).set_minor_rev(10));
   |               ^^^ not found in this scope
--
>> error[E0433]: failed to resolve: use of undeclared type `Boot0`
   --> rust/doctests_kernel_generated.rs:3799:13
   |
   3799 | let boot0 = Boot0::read(&bar);
   |             ^^^^^ use of undeclared type `Boot0`
--
>> error[E0433]: failed to resolve: use of undeclared type `Boot0`
   --> rust/doctests_kernel_generated.rs:3810:1
   |
   3810 | Boot0::alter(&bar, |r| r.set_major_rev(3).set_minor_rev(10));
   | ^^^^^ use of undeclared type `Boot0`

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* [thomas-weissschuh:b4/kunit-kselftests 15/21] s390x-linux-ld: uapi.c:undefined reference to `kunit_fail_assert_format'
From: kernel test robot @ 2025-03-27  5:49 UTC (permalink / raw)
  To: Thomas Weißschuh; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/thomas.weissschuh/linux.git b4/kunit-kselftests
head:   c1f41508dfc38dc5750d2b2c5b29f1f819ae053a
commit: 926e32cf9160e7403dbe68341e15fc5e583c1aae [15/21] kunit: Introduce UAPI testing framework
config: s390-allmodconfig (https://download.01.org/0day-ci/archive/20250327/202503271314.y9TiWMiT-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250327/202503271314.y9TiWMiT-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503271314.y9TiWMiT-lkp@intel.com/

All errors (new ones prefixed by >>):

   s390x-linux-ld: lib/kunit/uapi.o: in function `kunit_uapi_run_kselftest':
   uapi.c:(.text+0x39e): undefined reference to `kunit_log_append'
>> s390x-linux-ld: uapi.c:(.text+0x5be): undefined reference to `kunit_fail_assert_format'
>> s390x-linux-ld: uapi.c:(.text+0x5f2): undefined reference to `__kunit_do_failed_assertion'
   s390x-linux-ld: uapi.c:(.text+0x63c): undefined reference to `kunit_fail_assert_format'
   s390x-linux-ld: uapi.c:(.text+0x670): undefined reference to `__kunit_do_failed_assertion'
   s390x-linux-ld: uapi.c:(.text+0x726): undefined reference to `kunit_fail_assert_format'
   s390x-linux-ld: uapi.c:(.text+0x77a): undefined reference to `kunit_fail_assert_format'
   s390x-linux-ld: uapi.c:(.text+0x7d2): undefined reference to `kunit_fail_assert_format'

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, 336b4dae)
From: cki-project @ 2025-03-27  5:43 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'iommu-updates-v6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1737428643

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1737428643-x86_64-kernel-debug
    We also see the following known issues which are not related to your changes:
          x86_64 - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1737428643-x86_64-kernel
                   Issue: Kernel build: arch/x86/tools/insn_decoder_test: error: malformed line
                          https://github.com/Rust-for-Linux/linux/issues/1134


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* Re: [net-next RFC PATCH v3 1/4] net: phy: pass PHY driver to .match_phy_device OP
From: kernel test robot @ 2025-03-27  4:31 UTC (permalink / raw)
  To: Christian Marangi; +Cc: llvm, oe-kbuild-all
In-Reply-To: <20250326233512.17153-2-ansuelsmth@gmail.com>

Hi Christian,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:

[auto build test ERROR on net-next/main]

url:    https://github.com/intel-lab-lkp/linux/commits/Christian-Marangi/net-phy-pass-PHY-driver-to-match_phy_device-OP/20250327-073812
base:   net-next/main
patch link:    https://lore.kernel.org/r/20250326233512.17153-2-ansuelsmth%40gmail.com
patch subject: [net-next RFC PATCH v3 1/4] net: phy: pass PHY driver to .match_phy_device OP
config: arm-randconfig-003-20250327 (https://download.01.org/0day-ci/archive/20250327/202503271208.yqdElxUG-lkp@intel.com/config)
compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project c2692afc0a92cd5da140dfcdfff7818a5b8ce997)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250327/202503271208.yqdElxUG-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503271208.yqdElxUG-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/net/phy/nxp-c45-tja11xx.c:2089:23: error: incompatible function pointer types initializing 'int (*)(struct phy_device *, const struct phy_driver *)' with an expression of type 'int (struct phy_device *)' [-Wincompatible-function-pointer-types]
    2089 |                 .match_phy_device       = tja1103_match_phy_device,
         |                                           ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/phy/nxp-c45-tja11xx.c:2113:23: error: incompatible function pointer types initializing 'int (*)(struct phy_device *, const struct phy_driver *)' with an expression of type 'int (struct phy_device *)' [-Wincompatible-function-pointer-types]
    2113 |                 .match_phy_device       = tja1104_match_phy_device,
         |                                           ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/phy/nxp-c45-tja11xx.c:2138:23: error: incompatible function pointer types initializing 'int (*)(struct phy_device *, const struct phy_driver *)' with an expression of type 'int (struct phy_device *)' [-Wincompatible-function-pointer-types]
    2138 |                 .match_phy_device       = tja1120_match_phy_device,
         |                                           ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/phy/nxp-c45-tja11xx.c:2163:23: error: incompatible function pointer types initializing 'int (*)(struct phy_device *, const struct phy_driver *)' with an expression of type 'int (struct phy_device *)' [-Wincompatible-function-pointer-types]
    2163 |                 .match_phy_device       = tja1121_match_phy_device,
         |                                           ^~~~~~~~~~~~~~~~~~~~~~~~
   4 errors generated.


vim +2089 drivers/net/phy/nxp-c45-tja11xx.c

f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2065) 
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2066) static struct phy_driver nxp_c45_driver[] = {
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2067) 	{
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2068) 		.name			= "NXP C45 TJA1103",
369da333569eb8 Radu Pirea (NXP OSS  2023-07-31  2069) 		.get_features		= nxp_c45_get_features,
6c0c85da044e92 Radu Pirea (NXP OSS  2023-07-31  2070) 		.driver_data		= &tja1103_phy_data,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2071) 		.probe			= nxp_c45_probe,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2072) 		.soft_reset		= nxp_c45_soft_reset,
ac0687e821cffa Radu Pirea (NXP OSS  2023-07-31  2073) 		.config_aneg		= genphy_c45_config_aneg,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2074) 		.config_init		= nxp_c45_config_init,
425c8348df7b86 Radu Pirea (NXP OSS  2023-07-31  2075) 		.config_intr		= tja1103_config_intr,
b2f0ca00e6b34b Radu Pirea (NXP OSS  2021-04-23  2076) 		.handle_interrupt	= nxp_c45_handle_interrupt,
ac0687e821cffa Radu Pirea (NXP OSS  2023-07-31  2077) 		.read_status		= genphy_c45_read_status,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2078) 		.suspend		= genphy_c45_pma_suspend,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2079) 		.resume			= genphy_c45_pma_resume,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2080) 		.get_sset_count		= nxp_c45_get_sset_count,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2081) 		.get_strings		= nxp_c45_get_strings,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2082) 		.get_stats		= nxp_c45_get_stats,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2083) 		.cable_test_start	= nxp_c45_cable_test_start,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2084) 		.cable_test_get_status	= nxp_c45_cable_test_get_status,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2085) 		.set_loopback		= genphy_c45_loopback,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2086) 		.get_sqi		= nxp_c45_get_sqi,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2087) 		.get_sqi_max		= nxp_c45_get_sqi_max,
a4506722dc39ca Radu Pirea (OSS      2023-04-06  2088) 		.remove			= nxp_c45_remove,
a06a868a0cd96b Andrei Botila        2025-02-28 @2089  		.match_phy_device	= tja1103_match_phy_device,
a06a868a0cd96b Andrei Botila        2025-02-28  2090  	},
a06a868a0cd96b Andrei Botila        2025-02-28  2091  	{
a06a868a0cd96b Andrei Botila        2025-02-28  2092  		.name			= "NXP C45 TJA1104",
a06a868a0cd96b Andrei Botila        2025-02-28  2093  		.get_features		= nxp_c45_get_features,
a06a868a0cd96b Andrei Botila        2025-02-28  2094  		.driver_data		= &tja1103_phy_data,
a06a868a0cd96b Andrei Botila        2025-02-28  2095  		.probe			= nxp_c45_probe,
a06a868a0cd96b Andrei Botila        2025-02-28  2096  		.soft_reset		= nxp_c45_soft_reset,
a06a868a0cd96b Andrei Botila        2025-02-28  2097  		.config_aneg		= genphy_c45_config_aneg,
a06a868a0cd96b Andrei Botila        2025-02-28  2098  		.config_init		= nxp_c45_config_init,
a06a868a0cd96b Andrei Botila        2025-02-28  2099  		.config_intr		= tja1103_config_intr,
a06a868a0cd96b Andrei Botila        2025-02-28  2100  		.handle_interrupt	= nxp_c45_handle_interrupt,
a06a868a0cd96b Andrei Botila        2025-02-28  2101  		.read_status		= genphy_c45_read_status,
a06a868a0cd96b Andrei Botila        2025-02-28  2102  		.suspend		= genphy_c45_pma_suspend,
a06a868a0cd96b Andrei Botila        2025-02-28  2103  		.resume			= genphy_c45_pma_resume,
a06a868a0cd96b Andrei Botila        2025-02-28  2104  		.get_sset_count		= nxp_c45_get_sset_count,
a06a868a0cd96b Andrei Botila        2025-02-28  2105  		.get_strings		= nxp_c45_get_strings,
a06a868a0cd96b Andrei Botila        2025-02-28  2106  		.get_stats		= nxp_c45_get_stats,
a06a868a0cd96b Andrei Botila        2025-02-28  2107  		.cable_test_start	= nxp_c45_cable_test_start,
a06a868a0cd96b Andrei Botila        2025-02-28  2108  		.cable_test_get_status	= nxp_c45_cable_test_get_status,
a06a868a0cd96b Andrei Botila        2025-02-28  2109  		.set_loopback		= genphy_c45_loopback,
a06a868a0cd96b Andrei Botila        2025-02-28  2110  		.get_sqi		= nxp_c45_get_sqi,
a06a868a0cd96b Andrei Botila        2025-02-28  2111  		.get_sqi_max		= nxp_c45_get_sqi_max,
a06a868a0cd96b Andrei Botila        2025-02-28  2112  		.remove			= nxp_c45_remove,
a06a868a0cd96b Andrei Botila        2025-02-28  2113  		.match_phy_device	= tja1104_match_phy_device,
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2114) 	},
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2115) 	{
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2116) 		.name			= "NXP C45 TJA1120",
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2117) 		.get_features		= nxp_c45_get_features,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2118) 		.driver_data		= &tja1120_phy_data,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2119) 		.probe			= nxp_c45_probe,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2120) 		.soft_reset		= nxp_c45_soft_reset,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2121) 		.config_aneg		= genphy_c45_config_aneg,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2122) 		.config_init		= nxp_c45_config_init,
425c8348df7b86 Radu Pirea (NXP OSS  2023-07-31  2123) 		.config_intr		= tja1120_config_intr,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2124) 		.handle_interrupt	= nxp_c45_handle_interrupt,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2125) 		.read_status		= genphy_c45_read_status,
68c6af72047ca7 Radu Pirea (NXP OSS  2023-07-31  2126) 		.link_change_notify	= tja1120_link_change_notify,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2127) 		.suspend		= genphy_c45_pma_suspend,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2128) 		.resume			= genphy_c45_pma_resume,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2129) 		.get_sset_count		= nxp_c45_get_sset_count,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2130) 		.get_strings		= nxp_c45_get_strings,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2131) 		.get_stats		= nxp_c45_get_stats,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2132) 		.cable_test_start	= nxp_c45_cable_test_start,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2133) 		.cable_test_get_status	= nxp_c45_cable_test_get_status,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2134) 		.set_loopback		= genphy_c45_loopback,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2135) 		.get_sqi		= nxp_c45_get_sqi,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2136) 		.get_sqi_max		= nxp_c45_get_sqi_max,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2137) 		.remove			= nxp_c45_remove,
7215e9375694db Andrei Botila        2025-02-28  2138  		.match_phy_device	= tja1120_match_phy_device,
7215e9375694db Andrei Botila        2025-02-28  2139  	},
7215e9375694db Andrei Botila        2025-02-28  2140  	{
7215e9375694db Andrei Botila        2025-02-28  2141  		.name			= "NXP C45 TJA1121",
7215e9375694db Andrei Botila        2025-02-28  2142  		.get_features		= nxp_c45_get_features,
7215e9375694db Andrei Botila        2025-02-28  2143  		.driver_data		= &tja1120_phy_data,
7215e9375694db Andrei Botila        2025-02-28  2144  		.probe			= nxp_c45_probe,
7215e9375694db Andrei Botila        2025-02-28  2145  		.soft_reset		= nxp_c45_soft_reset,
7215e9375694db Andrei Botila        2025-02-28  2146  		.config_aneg		= genphy_c45_config_aneg,
7215e9375694db Andrei Botila        2025-02-28  2147  		.config_init		= nxp_c45_config_init,
7215e9375694db Andrei Botila        2025-02-28  2148  		.config_intr		= tja1120_config_intr,
7215e9375694db Andrei Botila        2025-02-28  2149  		.handle_interrupt	= nxp_c45_handle_interrupt,
7215e9375694db Andrei Botila        2025-02-28  2150  		.read_status		= genphy_c45_read_status,
7215e9375694db Andrei Botila        2025-02-28  2151  		.link_change_notify	= tja1120_link_change_notify,
7215e9375694db Andrei Botila        2025-02-28  2152  		.suspend		= genphy_c45_pma_suspend,
7215e9375694db Andrei Botila        2025-02-28  2153  		.resume			= genphy_c45_pma_resume,
7215e9375694db Andrei Botila        2025-02-28  2154  		.get_sset_count		= nxp_c45_get_sset_count,
7215e9375694db Andrei Botila        2025-02-28  2155  		.get_strings		= nxp_c45_get_strings,
7215e9375694db Andrei Botila        2025-02-28  2156  		.get_stats		= nxp_c45_get_stats,
7215e9375694db Andrei Botila        2025-02-28  2157  		.cable_test_start	= nxp_c45_cable_test_start,
7215e9375694db Andrei Botila        2025-02-28  2158  		.cable_test_get_status	= nxp_c45_cable_test_get_status,
7215e9375694db Andrei Botila        2025-02-28  2159  		.set_loopback		= genphy_c45_loopback,
7215e9375694db Andrei Botila        2025-02-28  2160  		.get_sqi		= nxp_c45_get_sqi,
7215e9375694db Andrei Botila        2025-02-28  2161  		.get_sqi_max		= nxp_c45_get_sqi_max,
7215e9375694db Andrei Botila        2025-02-28  2162  		.remove			= nxp_c45_remove,
7215e9375694db Andrei Botila        2025-02-28  2163  		.match_phy_device	= tja1121_match_phy_device,
f1fe5dff2b8aa8 Radu Pirea (NXP OSS  2023-07-31  2164) 	},
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2165) };
b050f2f15e04f0 Radu Pirea (NXP OSS  2021-04-19  2166) 

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* Re: [PATCH v8 06/16] CXL/PCI: Introduce CXL uncorrectable protocol error 'recovery'
From: kernel test robot @ 2025-03-27  4:19 UTC (permalink / raw)
  To: Terry Bowman, linux-cxl, linux-kernel, linux-pci, nifan.cxl, dave,
	jonathan.cameron, dave.jiang, alison.schofield, vishal.l.verma,
	dan.j.williams, bhelgaas, mahesh, ira.weiny, oohall,
	Benjamin.Cheatham, rrichter, nathan.fontenot,
	Smita.KoralahalliChannabasappa, lukas, ming.li,
	PradeepVineshReddy.Kodamati
  Cc: llvm, oe-kbuild-all
In-Reply-To: <20250327014717.2988633-7-terry.bowman@amd.com>

Hi Terry,

kernel test robot noticed the following build warnings:

[auto build test WARNING on aae0594a7053c60b82621136257c8b648c67b512]

url:    https://github.com/intel-lab-lkp/linux/commits/Terry-Bowman/PCI-CXL-Introduce-PCIe-helper-function-pcie_is_cxl/20250327-095738
base:   aae0594a7053c60b82621136257c8b648c67b512
patch link:    https://lore.kernel.org/r/20250327014717.2988633-7-terry.bowman%40amd.com
patch subject: [PATCH v8 06/16] CXL/PCI: Introduce CXL uncorrectable protocol error 'recovery'
config: arm-mv78xx0_defconfig (https://download.01.org/0day-ci/archive/20250327/202503271128.zMRuNISx-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250327/202503271128.zMRuNISx-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503271128.zMRuNISx-lkp@intel.com/

All warnings (new ones prefixed by >>):

   In file included from drivers/pci/access.c:2:
>> include/linux/pci.h:1873:6: warning: no previous prototype for function 'pci_aer_clear_fatal_status' [-Wmissing-prototypes]
    1873 | void pci_aer_clear_fatal_status(struct pci_dev *dev) { };
         |      ^
   include/linux/pci.h:1873:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    1873 | void pci_aer_clear_fatal_status(struct pci_dev *dev) { };
         | ^
         | static 
   1 warning generated.
--
   In file included from drivers/pci/probe.c:9:
>> include/linux/pci.h:1873:6: warning: no previous prototype for function 'pci_aer_clear_fatal_status' [-Wmissing-prototypes]
    1873 | void pci_aer_clear_fatal_status(struct pci_dev *dev) { };
         |      ^
   include/linux/pci.h:1873:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    1873 | void pci_aer_clear_fatal_status(struct pci_dev *dev) { };
         | ^
         | static 
   In file included from drivers/pci/probe.c:16:
   include/linux/aer.h:76:20: error: static declaration of 'pci_aer_clear_fatal_status' follows non-static declaration
      76 | static inline void pci_aer_clear_fatal_status(struct pci_dev *dev) { }
         |                    ^
   include/linux/pci.h:1873:6: note: previous definition is here
    1873 | void pci_aer_clear_fatal_status(struct pci_dev *dev) { };
         |      ^
   1 warning and 1 error generated.


vim +/pci_aer_clear_fatal_status +1873 include/linux/pci.h

  1867	
  1868	#ifdef CONFIG_PCIEAER
  1869	bool pci_aer_available(void);
  1870	void pci_aer_clear_fatal_status(struct pci_dev *dev);
  1871	#else
  1872	static inline bool pci_aer_available(void) { return false; }
> 1873	void pci_aer_clear_fatal_status(struct pci_dev *dev) { };
  1874	#endif
  1875	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* ❌ FAIL: Test report for master (6.14.0, upstream-mainline, 1e1ba8d2)
From: cki-project @ 2025-03-27  2:43 UTC (permalink / raw)
  To: llvm

Hi, we tested your kernel and here are the results:

    Overall result: FAILED
             Merge: OK
           Compile: FAILED


Kernel information:
    Commit message: Merge tag 'timers-clocksource-2025-03-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

You can find all the details about the test run at
    https://datawarehouse.cki-project.org/kcidb/checkouts/redhat:1737298896

One or more kernel builds failed:
    Unrecognized or new issues:
          x86_64 (debug) - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1737298896-x86_64-kernel-debug
    We also see the following known issues which are not related to your changes:
          x86_64 - https://datawarehouse.cki-project.org/kcidb/builds/redhat:1737298896-x86_64-kernel
                   Issue: Kernel build: arch/x86/tools/insn_decoder_test: error: malformed line
                          https://github.com/Rust-for-Linux/linux/issues/1134


If you find a failure unrelated to your changes, please ask the test maintainer to review it.
This will prevent the failures from being incorrectly reported in the future.

Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.

        ,-.   ,-.
       ( C ) ( K )  Continuous
        `-',-.`-'   Kernel
          ( I )     Integration
           `-'
______________________________________________________________________________


^ permalink raw reply

* [linux-next:master 9215/13775] drivers/net/wireless/intel/iwlwifi/mld/mac80211.c:513:16: warning: variable 'ret' is uninitialized when used here
From: kernel test robot @ 2025-03-27  1:16 UTC (permalink / raw)
  To: Miri Korenblit; +Cc: llvm, oe-kbuild-all, Johannes Berg, Emmanuel Grumbach

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   0e871365f7f9aeb9b590e345458b2083e067cd13
commit: 834bfc698bf7cee3bf61c0209b410c7f97a54108 [9215/13775] wifi: iwlwifi: mld: fix build with CONFIG_PM_SLEEP undefined
config: x86_64-randconfig-004-20250327 (https://download.01.org/0day-ci/archive/20250327/202503271133.8XFKhu8E-lkp@intel.com/config)
compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250327/202503271133.8XFKhu8E-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503271133.8XFKhu8E-lkp@intel.com/

All warnings (new ones prefixed by >>):

   In file included from drivers/net/wireless/intel/iwlwifi/mld/mac80211.c:12:
   drivers/net/wireless/intel/iwlwifi/mld/iface.h:170:5: warning: 'CONFIG_PM_SLEEP' is not defined, evaluates to 0 [-Wundef]
     170 | #if CONFIG_PM_SLEEP
         |     ^
>> drivers/net/wireless/intel/iwlwifi/mld/mac80211.c:513:16: warning: variable 'ret' is uninitialized when used here [-Wuninitialized]
     513 |         if (!in_d3 || ret) {
         |                       ^~~
   drivers/net/wireless/intel/iwlwifi/mld/mac80211.c:487:9: note: initialize the variable 'ret' to silence this warning
     487 |         int ret;
         |                ^
         |                 = 0
   drivers/net/wireless/intel/iwlwifi/mld/mac80211.c:1942:13: warning: unused function 'iwl_mld_set_wakeup' [-Wunused-function]
    1942 | static void iwl_mld_set_wakeup(struct ieee80211_hw *hw, bool enabled)
         |             ^~~~~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlwifi/mld/mac80211.c:1956:1: warning: unused function 'iwl_mld_suspend' [-Wunused-function]
    1956 | iwl_mld_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
         | ^~~~~~~~~~~~~~~
   drivers/net/wireless/intel/iwlwifi/mld/mac80211.c:1978:12: warning: unused function 'iwl_mld_resume' [-Wunused-function]
    1978 | static int iwl_mld_resume(struct ieee80211_hw *hw)
         |            ^~~~~~~~~~~~~~
   5 warnings generated.


vim +/ret +513 drivers/net/wireless/intel/iwlwifi/mld/mac80211.c

d1e879ec600f9b3 Miri Korenblit 2025-02-16  507  
d1e879ec600f9b3 Miri Korenblit 2025-02-16  508  	if (mld->fw_status.in_hw_restart) {
d1e879ec600f9b3 Miri Korenblit 2025-02-16  509  		iwl_mld_stop_fw(mld);
d1e879ec600f9b3 Miri Korenblit 2025-02-16  510  		iwl_mld_restart_cleanup(mld);
d1e879ec600f9b3 Miri Korenblit 2025-02-16  511  	}
d1e879ec600f9b3 Miri Korenblit 2025-02-16  512  
d1e879ec600f9b3 Miri Korenblit 2025-02-16 @513  	if (!in_d3 || ret) {
d1e879ec600f9b3 Miri Korenblit 2025-02-16  514  		ret = iwl_mld_start_fw(mld);
d1e879ec600f9b3 Miri Korenblit 2025-02-16  515  		if (ret)
d1e879ec600f9b3 Miri Korenblit 2025-02-16  516  			goto error;
d1e879ec600f9b3 Miri Korenblit 2025-02-16  517  	}
d1e879ec600f9b3 Miri Korenblit 2025-02-16  518  
d1e879ec600f9b3 Miri Korenblit 2025-02-16  519  	mld->scan.last_start_time_jiffies = jiffies;
d1e879ec600f9b3 Miri Korenblit 2025-02-16  520  
d1e879ec600f9b3 Miri Korenblit 2025-02-16  521  	iwl_dbg_tlv_time_point(&mld->fwrt, IWL_FW_INI_TIME_POINT_POST_INIT,
d1e879ec600f9b3 Miri Korenblit 2025-02-16  522  			       NULL);
d1e879ec600f9b3 Miri Korenblit 2025-02-16  523  	iwl_dbg_tlv_time_point(&mld->fwrt, IWL_FW_INI_TIME_POINT_PERIODIC,
d1e879ec600f9b3 Miri Korenblit 2025-02-16  524  			       NULL);
d1e879ec600f9b3 Miri Korenblit 2025-02-16  525  
d1e879ec600f9b3 Miri Korenblit 2025-02-16  526  	return 0;
d1e879ec600f9b3 Miri Korenblit 2025-02-16  527  
d1e879ec600f9b3 Miri Korenblit 2025-02-16  528  error:
d1e879ec600f9b3 Miri Korenblit 2025-02-16  529  	/* If we failed to restart the hw, there is nothing useful
d1e879ec600f9b3 Miri Korenblit 2025-02-16  530  	 * we can do but indicate we are no longer in restart.
d1e879ec600f9b3 Miri Korenblit 2025-02-16  531  	 */
d1e879ec600f9b3 Miri Korenblit 2025-02-16  532  	mld->fw_status.in_hw_restart = false;
d1e879ec600f9b3 Miri Korenblit 2025-02-16  533  
d1e879ec600f9b3 Miri Korenblit 2025-02-16  534  	return ret;
d1e879ec600f9b3 Miri Korenblit 2025-02-16  535  }
d1e879ec600f9b3 Miri Korenblit 2025-02-16  536  

:::::: The code at line 513 was first introduced by commit
:::::: d1e879ec600f9b3bdd253167533959facfefb17b wifi: iwlwifi: add iwlmld sub-driver

:::::: TO: Miri Korenblit <miriam.rachel.korenblit@intel.com>
:::::: CC: Johannes Berg <johannes.berg@intel.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply

* [cilium:pr/netkit-xdp 6/8] drivers/net/netkit.c:218:40: error: no member named 'pool' in 'struct netdev_rx_queue'
From: kernel test robot @ 2025-03-26 22:57 UTC (permalink / raw)
  To: Daniel Borkmann; +Cc: llvm, oe-kbuild-all, Daniel Borkmann

tree:   https://github.com/cilium/linux.git pr/netkit-xdp
head:   6f1df43931ef06ffe83eaa6a0d3df5d4c9a53786
commit: 65332eb9360ea7f0f0bcea9de6c4b2ec7a8ca936 [6/8] netkit: implement ndos
config: i386-randconfig-004-20250327 (https://download.01.org/0day-ci/archive/20250327/202503270659.vCkBxrBF-lkp@intel.com/config)
compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250327/202503270659.vCkBxrBF-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503270659.vCkBxrBF-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/net/netkit.c:218:40: error: no member named 'pool' in 'struct netdev_rx_queue'
     218 |                 return nk->lower->dev->_rx[queue_id].pool;
         |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
>> drivers/net/netkit.c:220:40: error: no member named 'pool' in 'struct netdev_queue'
     220 |                 return nk->lower->dev->_tx[queue_id].pool;
         |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
   drivers/net/netkit.c:245:33: error: no member named 'pool' in 'struct netdev_rx_queue'
     245 |                 nk->lower->dev->_rx[queue_id].pool = pool;
         |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
   drivers/net/netkit.c:247:33: error: no member named 'pool' in 'struct netdev_queue'
     247 |                 nk->lower->dev->_tx[queue_id].pool = pool;
         |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
   drivers/net/netkit.c:261:33: error: no member named 'pool' in 'struct netdev_rx_queue'
     261 |                 nk->lower->dev->_rx[queue_id].pool = NULL;
         |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
   drivers/net/netkit.c:263:33: error: no member named 'pool' in 'struct netdev_queue'
     263 |                 nk->lower->dev->_tx[queue_id].pool = NULL;
         |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
   6 errors generated.


vim +218 drivers/net/netkit.c

   207	
   208	static struct xsk_buff_pool *
   209	netkit_xsk_get_pool_from_qid(struct net_device *dev, u16 queue_id)
   210	{
   211		struct netkit *nk = netkit_priv(dev);
   212	
   213		if (!nk->lower || nk->primary)
   214			return NULL;
   215		if (!netkit_queue_valid(dev, queue_id))
   216			return NULL;
   217		if (queue_id < nk->lower->dev->real_num_rx_queues)
 > 218			return nk->lower->dev->_rx[queue_id].pool;
   219		if (queue_id < nk->lower->dev->real_num_tx_queues)
 > 220			return nk->lower->dev->_tx[queue_id].pool;
   221		return NULL;
   222	}
   223	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox