All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/irqchip/irq-econet-en751221.c:477 econet_intc_of_init() warn: 'res.start' from __request_region() not released on lines: 462.
@ 2026-10-24  8:48 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-10-24  8:48 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

Unfiltered warning: this smatch report is sent as-is and has not been
reviewed for false positives, so please treat it with due skepticism.

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Caleb James DeLisle <cjd@cjdns.fr>
CC: Thomas Bogendoerfer <tsbogend@alpha.franken.de>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   5b0764a53235d3c77e1ed674e836e1b3fe1a4b1f
commit: 8ae6e79ee0ce7a533c005d12c9a230b273f32ef1 mips: econet: add multi-vpe capability to EN751221
date:   3 months ago
:::::: branch date: 4 hours ago
:::::: commit date: 3 months ago
config: mips-randconfig-r2201-20261024 (https://download.01.org/0day-ci/archive/20261024/202610241045.m7Gq1xEm-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project a808f8ea7fdc61ead417bfe55e8ef5f728776aeb)
smatch: v0.5.0-9187-g5189e3fb

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
| Fixes: 8ae6e79ee0ce ("mips: econet: add multi-vpe capability to EN751221")
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202610241045.m7Gq1xEm-lkp@intel.com/

New smatch warnings:
drivers/irqchip/irq-econet-en751221.c:477 econet_intc_of_init() warn: 'res.start' from __request_region() not released on lines: 462.

Old smatch warnings:
drivers/irqchip/irq-econet-en751221.c:299 get_shadow_interrupts() error: buffer overflow 'econet_intc.interrupt_shadows' 40 <= 40
drivers/irqchip/irq-econet-en751221.c:306 get_shadow_interrupts() error: buffer overflow 'econet_intc.interrupt_shadows' 40 <= 40

vim +477 drivers/irqchip/irq-econet-en751221.c

2ee2a685ee838f Caleb James DeLisle 2026-04-30  405  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  406  static int __init econet_intc_of_init(struct device_node *node, struct device_node *parent)
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  407  {
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  408  	struct irq_domain *domain;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  409  	struct resource res;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  410  	int ret, irq;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  411  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  412  	ret = get_shadow_interrupts(node);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  413  	if (ret)
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  414  		return ret;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  415  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  416  	irq = irq_of_parse_and_map(node, 0);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  417  	if (!irq) {
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  418  		pr_err("%pOF: DT: Failed to get IRQ from 'interrupts'\n", node);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  419  		return -EINVAL;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  420  	}
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  421  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  422  	if (of_address_to_resource(node, 0, &res)) {
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  423  		pr_err("%pOF: DT: Failed to get 'reg'\n", node);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  424  		ret = -EINVAL;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  425  		goto err_dispose_mapping;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  426  	}
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  427  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  428  	if (!request_mem_region(res.start, resource_size(&res), res.name)) {
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  429  		pr_err("%pOF: Failed to request memory\n", node);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  430  		ret = -EBUSY;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  431  		goto err_dispose_mapping;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  432  	}
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  433  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  434  	econet_intc.membase = ioremap(res.start, resource_size(&res));
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  435  	if (!econet_intc.membase) {
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  436  		pr_err("%pOF: Failed to remap membase\n", node);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  437  		ret = -ENOMEM;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  438  		goto err_release;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  439  	}
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  440  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  441  	econet_mask_all();
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  442  
96a8cb6d28cebd Jiri Slaby (SUSE    2025-05-13  443) 	domain = irq_domain_create_linear(of_fwnode_handle(node), IRQ_COUNT,
85cf5c63d32f39 Thomas Gleixner     2025-05-06  444  					  &econet_domain_ops, NULL);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  445  	if (!domain) {
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  446  		pr_err("%pOF: Failed to add irqdomain\n", node);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  447  		ret = -ENOMEM;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  448  		goto err_unmap;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  449  	}
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  450  
2ee2a685ee838f Caleb James DeLisle 2026-04-30  451  	/*
2ee2a685ee838f Caleb James DeLisle 2026-04-30  452  	 * 34K Manual (MD00534) Section 6.3.1.3 rev 1.13 page 136:
2ee2a685ee838f Caleb James DeLisle 2026-04-30  453  	 * In VEIC mode, IP2 ... IP7 are repurposed as Interrupt Priority Level. The controller
2ee2a685ee838f Caleb James DeLisle 2026-04-30  454  	 * will filter incoming interrupts whose priority is lower than the IPL number. Therefore
2ee2a685ee838f Caleb James DeLisle 2026-04-30  455  	 * we must not set any of these bits. We avoid setting IP2 by not actually chaining this
2ee2a685ee838f Caleb James DeLisle 2026-04-30  456  	 * intc to the CPU intc.
2ee2a685ee838f Caleb James DeLisle 2026-04-30  457  	 */
2ee2a685ee838f Caleb James DeLisle 2026-04-30  458  	if (cpu_has_veic) {
2ee2a685ee838f Caleb James DeLisle 2026-04-30  459  		ret = econet_cpu_init(node);
2ee2a685ee838f Caleb James DeLisle 2026-04-30  460  
2ee2a685ee838f Caleb James DeLisle 2026-04-30  461  		if (ret)
2ee2a685ee838f Caleb James DeLisle 2026-04-30  462  			return ret;
2ee2a685ee838f Caleb James DeLisle 2026-04-30  463  	} else {
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  464  		irq_set_chained_handler_and_data(irq, econet_intc_from_parent, domain);
2ee2a685ee838f Caleb James DeLisle 2026-04-30  465  	}
2ee2a685ee838f Caleb James DeLisle 2026-04-30  466  
2ee2a685ee838f Caleb James DeLisle 2026-04-30  467  	econet_intc.domain = domain;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  468  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  469  	return 0;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  470  
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  471  err_unmap:
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  472  	iounmap(econet_intc.membase);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  473  err_release:
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  474  	release_mem_region(res.start, resource_size(&res));
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  475  err_dispose_mapping:
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  476  	irq_dispose_mapping(irq);
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30 @477  	return ret;
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  478  }
1902a59cf5f9d8 Caleb James DeLisle 2025-03-30  479  

:::::: The code at line 477 was first introduced by commit
:::::: 1902a59cf5f9d8b99ecf0cb8f122cb00ef7a3f13 irqchip: Add EcoNet EN751221 INTC

:::::: TO: Caleb James DeLisle <cjd@cjdns.fr>
:::::: CC: Thomas Gleixner <tglx@linutronix.de>

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

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

only message in thread, other threads:[~2026-10-24  8:49 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-24  8:48 drivers/irqchip/irq-econet-en751221.c:477 econet_intc_of_init() warn: 'res.start' from __request_region() not released on lines: 462 kernel test robot

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