Message ID | cover.1581478323.git.afzal.mohd.ma@gmail.com (mailing list archive) |
---|---|
Headers | show |
Series | genirq: Remove setup_irq() | expand |
Afzal, afzal mohammed <afzal.mohd.ma@gmail.com> writes: > While trying to understand internals of irq handling, came across a > thread [1] in which tglx was referring to avoid usage of setup_irq(). > Existing callers of setup_irq() reached mostly via 'init_IRQ()' & > 'time_init()', while memory allocators are ready by 'mm_init()'. > > Hence instances of setup_irq() is replaced by request_irq() & > setup_irq() (along with remove_irq()) definition deleted in the last > patch. > > Seldom remove_irq() usage has been observed coupled with setup_irq(), > wherever that has been found, it too has been replaced by free_irq(). thanks a lot for tackling this! Vs. merging this series, I suggest the following approach: - Resubmit the individual changes as single patches or small series to the relevant maintainers and subsystem mailing lists. They have no dependency on a core change and can be applied where they belong to. - After 5.6-rc6, verify which parts have made their way into linux-next and resubmit the ignored ones as a series to me along with the removal of the core parts. That way we can avoid conflicting changes between subsystems and the tip irq/core branch as much as possible. Thanks, tglx
Hi Thomas, On Thu, Feb 27, 2020 at 11:31:15AM +0100, Thomas Gleixner wrote: > Vs. merging this series, I suggest the following approach: > > - Resubmit the individual changes as single patches or small series > to the relevant maintainers and subsystem mailing lists. They have > no dependency on a core change and can be applied where they belong > to. > > - After 5.6-rc6, verify which parts have made their way into > linux-next and resubmit the ignored ones as a series to me along > with the removal of the core parts. > > That way we can avoid conflicting changes between subsystems and the tip > irq/core branch as much as possible. Okay, i will do accordingly. [ your mail crossed my v3 (only one patch) posting ] Regards afzal
Hi Thomas, On Thu, Feb 27, 2020 at 04:37:13PM +0530, afzal mohammed wrote: > On Thu, Feb 27, 2020 at 11:31:15AM +0100, Thomas Gleixner wrote: > > Vs. merging this series, I suggest the following approach: > > > > - Resubmit the individual changes as single patches or small series > > to the relevant maintainers and subsystem mailing lists. They have > > no dependency on a core change and can be applied where they belong > > to. > > > > - After 5.6-rc6, verify which parts have made their way into > > linux-next and resubmit the ignored ones as a series to me along > > with the removal of the core parts. > > > > That way we can avoid conflicting changes between subsystems and the tip > > irq/core branch as much as possible. > > Okay, i will do accordingly. i am on it, is delayed due to the reason as mentioned at, https://lkml.kernel.org/r/20200321172626.GA6323@afzalpc [ not repeating contents here since other mail was sent just now, cc'ing you ] Regards afzal
Hi Thomas, As compared to the situation mentioned earlier[1], now powerpc patch is also in -next, and the pending ARM patches has been picked up by ARM SoC maintainers today and is expected to show up in next -next. All other subsytem patches has been picked by relevant maintainers & are already in -next except alpha, c6x, hexagon, unicore32 & sh. As it is the case, i am sending you patches for the above 5 architecture's plus the core removal patch. Status of 5 arch's: ------------------- alpha: received ack from Matt Turner, build test success c6x: did receive ack from Mark Salter in v1, the final version (v3) was with minor changes, hence removed his ack & cc'ed him, build test success hexagon: build test success unicore32: couldn't get toolchain from kernel.org, 0day test robot or Segher's buildall sh: To compile the relevant changes sh64 compiler is required, couldn't get it from above mentioned 3 sources. Note 1: sh toolchain is available, but that will not make the relevant changes compile as it has dependency of 64bit arch toolchain, did try a Kconfig hack to make it compile w/ 32bit sh toolchain, but it failed due to other reasons (unknown operands), so gave up on that. Note 2: hexagon final image creation fails even w/o my patch, but it has been ensured that w/ my changes relevant object files are getting built w/o warnings. Regards afzal [1] https://lkml.kernel.org/r/20200321172626.GA6323@afzalpc afzal mohammed (6): alpha: Replace setup_irq() by request_irq() c6x: replace setup_irq() by request_irq() hexagon: replace setup_irq() by request_irq() sh: replace setup_irq() by request_irq() unicore32: replace setup_irq() by request_irq() genirq: Remove setup_irq() and remove_irq() arch/alpha/kernel/irq_alpha.c | 29 ++++---------------- arch/alpha/kernel/irq_i8259.c | 8 ++---- arch/alpha/kernel/irq_impl.h | 7 +---- arch/alpha/kernel/irq_pyxis.c | 3 ++- arch/alpha/kernel/sys_alcor.c | 3 ++- arch/alpha/kernel/sys_cabriolet.c | 3 ++- arch/alpha/kernel/sys_eb64p.c | 3 ++- arch/alpha/kernel/sys_marvel.c | 2 +- arch/alpha/kernel/sys_miata.c | 6 +++-- arch/alpha/kernel/sys_ruffian.c | 3 ++- arch/alpha/kernel/sys_rx164.c | 3 ++- arch/alpha/kernel/sys_sx164.c | 3 ++- arch/alpha/kernel/sys_wildfire.c | 7 ++--- arch/alpha/kernel/time.c | 6 ++--- arch/c6x/platforms/timer64.c | 11 +++----- arch/hexagon/kernel/smp.c | 22 ++++++++-------- arch/hexagon/kernel/time.c | 11 +++----- arch/sh/boards/mach-cayman/irq.c | 18 +++++-------- arch/sh/drivers/dma/dma-pvr2.c | 9 +++---- arch/unicore32/kernel/time.c | 11 +++----- include/linux/irq.h | 2 -- kernel/irq/manage.c | 44 ------------------------------- 22 files changed, 60 insertions(+), 154 deletions(-)
> -----Original Message----- > From: linux-hexagon-owner@vger.kernel.org <linux-hexagon- > owner@vger.kernel.org> On Behalf Of afzal mohammed > Sent: Friday, March 27, 2020 11:08 AM > To: Thomas Gleixner <tglx@linutronix.de> > Cc: linux-kernel@vger.kernel.org; linux-arm-kernel@lists.infradead.org; > linux-samsung-soc@vger.kernel.org; x86@kernel.org; linux- > sh@vger.kernel.org; linux-s390@vger.kernel.org; linuxppc- > dev@lists.ozlabs.org; linux-parisc@vger.kernel.org; linux- > mips@vger.kernel.org; linux-m68k@lists.linux-m68k.org; linux- > ia64@vger.kernel.org; linux-hexagon@vger.kernel.org; linux-c6x-dev@linux- > c6x.org; linux-omap@vger.kernel.org; linux-alpha@vger.kernel.org > Subject: [PATCH 0/6] Kill setup_irq() ... > Note 1: sh toolchain is available, but that will not make the relevant changes > compile as it has dependency of 64bit arch toolchain, did try a Kconfig hack > to make it compile w/ 32bit sh toolchain, but it failed due to other reasons > (unknown operands), so gave up on that. > Note 2: hexagon final image creation fails even w/o my patch, but it has > been ensured that w/ my changes relevant object files are getting built w/o > warnings. Afzal, What's the nature of the failure in "Note 2"? -Brian
Hi Brian, On Fri, Mar 27, 2020 at 09:48:38PM -0500, Brian Cain wrote: > > Note 2: hexagon final image creation fails even w/o my patch > What's the nature of the failure in "Note 2"? drivers/base/firmware_loader/main.o: In function `fw_is_builtin_firmware': /devel/src/kernel6/drivers/base/firmware_loader/main.c:132:(.text+0xc8): relocation truncated to fit: R_HEX_16_X against symbol `__start_builtin_fw' defined in .modinfo section in .tmp_vmlinux1 Makefile:1077: recipe for target 'vmlinux' failed make: *** [vmlinux] Error 1 [ i had deleted the toolchain earlier, since you asked, download again & checked ] Regards afzal
> -----Original Message----- > From: linux-hexagon-owner@vger.kernel.org <linux-hexagon- > owner@vger.kernel.org> On Behalf Of afzal mohammed ... > On Fri, Mar 27, 2020 at 09:48:38PM -0500, Brian Cain wrote: > > > > Note 2: hexagon final image creation fails even w/o my patch > > > What's the nature of the failure in "Note 2"? > > drivers/base/firmware_loader/main.o: In function `fw_is_builtin_firmware': > /devel/src/kernel6/drivers/base/firmware_loader/main.c:132:(.text+0xc8): > relocation truncated to fit: R_HEX_16_X against symbol `__start_builtin_fw' > defined in .modinfo section in .tmp_vmlinux1 > Makefile:1077: recipe for target 'vmlinux' failed > make: *** [vmlinux] Error 1 Thanks for reporting it -- I will make a patch to fix it. -Brian