lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202601152104.pBPeNPHR-lkp@intel.com>
Date: Thu, 15 Jan 2026 22:11:30 +0800
From: kernel test robot <lkp@...el.com>
To: Ciju Rajan K <crajank@...dia.com>, hdegoede@...hat.com,
	ilpo.jarvinen@...ux.intel.com, tglx@...utronix.de
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
	christophe.jaillet@...adoo.fr, andriy.shevchenko@...ux.intel.com,
	vadimp@...dia.com, platform-driver-x86@...r.kernel.org,
	linux-kernel@...r.kernel.org, Ciju Rajan K <crajank@...dia.com>
Subject: Re: [PATCH platform-next v4 1/2] kernel/irq: Add generic interrupt
 storm detection mechanism

Hi Ciju,

kernel test robot noticed the following build warnings:

[auto build test WARNING on linus/master]
[also build test WARNING on v6.19-rc5]
[cannot apply to tip/irq/core next-20260115]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Ciju-Rajan-K/kernel-irq-Add-generic-interrupt-storm-detection-mechanism/20260115-155438
base:   linus/master
patch link:    https://lore.kernel.org/r/20260115074909.245852-2-crajank%40nvidia.com
patch subject: [PATCH platform-next v4 1/2] kernel/irq: Add generic interrupt storm detection mechanism
config: arm-allnoconfig (https://download.01.org/0day-ci/archive/20260115/202601152104.pBPeNPHR-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 9b8addffa70cee5b2acc5454712d9cf78ce45710)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260115/202601152104.pBPeNPHR-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202601152104.pBPeNPHR-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> kernel/irq/spurious.c:41:6: warning: no previous prototype for function 'irq_register_storm_detection' [-Wmissing-prototypes]
      41 | bool irq_register_storm_detection(unsigned int irq, unsigned int max_freq,
         |      ^
   kernel/irq/spurious.c:41:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
      41 | bool irq_register_storm_detection(unsigned int irq, unsigned int max_freq,
         | ^
         | static 
>> kernel/irq/spurious.c:79:6: warning: no previous prototype for function 'irq_unregister_storm_detection' [-Wmissing-prototypes]
      79 | void irq_unregister_storm_detection(unsigned int irq)
         |      ^
   kernel/irq/spurious.c:79:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
      79 | void irq_unregister_storm_detection(unsigned int irq)
         | ^
         | static 
   2 warnings generated.


vim +/irq_register_storm_detection +41 kernel/irq/spurious.c

    30	
    31	
    32	/**
    33	 * irq_register_storm_detection - register interrupt storm detection for an IRQ
    34	 * @irq: interrupt number
    35	 * @max_freq: maximum allowed frequency (interrupts per second)
    36	 * @cb: callback function to invoke when storm is detected
    37	 * @dev_id: device identifier passed to callback
    38	 *
    39	 * Returns: true on success, false on failure
    40	 */
  > 41	bool irq_register_storm_detection(unsigned int irq, unsigned int max_freq,
    42					  irq_storm_cb_t cb, void *dev_id)
    43	{
    44		struct irq_storm *storm;
    45		bool ret = false;
    46	
    47		if (max_freq < IRQ_STORM_MIN_FREQ_HZ || !cb)
    48			return false;
    49	
    50		storm = kzalloc(sizeof(*storm), GFP_KERNEL);
    51		if (!storm)
    52			return false;
    53	
    54		/* Adjust to count per 10ms */
    55		storm->max_cnt = max_freq / (IRQ_STORM_MAX_FREQ_SCALE);
    56		storm->cb = cb;
    57		storm->dev_id = dev_id;
    58	
    59		scoped_irqdesc_get_and_buslock(irq, IRQ_GET_DESC_CHECK_GLOBAL) {
    60			if (scoped_irqdesc->action && !scoped_irqdesc->irq_storm) {
    61				storm->last_cnt = scoped_irqdesc->tot_count;
    62				storm->next_period = jiffies + msecs_to_jiffies(IRQ_STORM_PERIOD_WINDOW_MS);
    63				scoped_irqdesc->irq_storm = storm;
    64				ret = true;
    65			}
    66		}
    67	
    68		if (!ret)
    69			kfree(storm);
    70	
    71		return ret;
    72	}
    73	EXPORT_SYMBOL_GPL(irq_register_storm_detection);
    74	
    75	/**
    76	 * irq_unregister_storm_detection - unregister interrupt storm detection
    77	 * @irq: interrupt number
    78	 */
  > 79	void irq_unregister_storm_detection(unsigned int irq)
    80	{
    81		scoped_irqdesc_get_and_buslock(irq, IRQ_GET_DESC_CHECK_GLOBAL) {
    82			if (scoped_irqdesc->irq_storm) {
    83				kfree(scoped_irqdesc->irq_storm);
    84				scoped_irqdesc->irq_storm = NULL;
    85			}
    86		}
    87	}
    88	EXPORT_SYMBOL_GPL(irq_unregister_storm_detection);
    89	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ