<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/source/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Makefile</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>26f6b6357b1b06e6aaa9b8d796989cca785d8e1d - irq: Make refcount_interrupt kunit test selectable</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#26f6b6357b1b06e6aaa9b8d796989cca785d8e1d</link>
        <description>irq: Make refcount_interrupt kunit test selectableCurrently, refcount_interrupt_test is built unconditionally whenCONFIG_KUNIT is enabled, causing it to run unexpectedly during boot.Fix this by introducing CONFIG_REFCOUNT_INTERRUPT_KUNIT_TEST so thetest can be configured independently, following standard kunitpractices.Fixes: 07a88e2bcd5b (&quot;irq: Add KUnit test for refcounted interrupt enable/disable&quot;)Signed-off-by: Kuan-Wei Chiu &lt;visitorckw@gmail.com&gt;Signed-off-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;Reviewed-by: Lyude Paul &lt;lyude@redhat.com&gt;Reviewed-by: Radu Rendec &lt;radu@rendec.net&gt;Reviewed-by: Boqun Feng &lt;boqun@kernel.org&gt;Link: https://patch.msgid.link/20261001082519.16195-2-boqun@kernel.org

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Thu, 01 Oct 2026 10:25:15 +0200</pubDate>
        <dc:creator>Kuan-Wei Chiu &lt;visitorckw@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>07a88e2bcd5b5bd7881b2e12b6aad1897a7ee1de - irq: Add KUnit test for refcounted interrupt enable/disable</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#07a88e2bcd5b5bd7881b2e12b6aad1897a7ee1de</link>
        <description>irq: Add KUnit test for refcounted interrupt enable/disableWhile making changes to the refcounted interrupt patch series, at somepoint on my local branch I broke something and ended up writing some kunittests for testing refcounted interrupts as a result. So, let&apos;s includethese tests now that we have refcounted interrupts.Signed-off-by: Lyude Paul &lt;lyude@redhat.com&gt;Signed-off-by: Boqun Feng &lt;boqun@kernel.org&gt;Signed-off-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;Link: https://patch.msgid.link/20260804161447.84806-7-boqun@kernel.org

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Tue, 04 Aug 2026 18:14:28 +0200</pubDate>
        <dc:creator>Lyude Paul &lt;lyude@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>c119e6685311cef0e4a4e0b7752293bea056bac7 - genirq: Remove IRQ timing tracking infrastructure</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#c119e6685311cef0e4a4e0b7752293bea056bac7</link>
        <description>genirq: Remove IRQ timing tracking infrastructureThe IRQ timing tracking infrastructure was merged in 2019, but was neverplumbed in, is not selectable, and is therefore never used.As Daniel agrees that there is little hope for this infrastructure to becompleted in the near term, drop it altogether.Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Reviewed-by: Jinjie Ruan &lt;ruanjinjie@huawei.com&gt;Link: https://lore.kernel.org/r/87zf7vex6h.wl-maz@kernel.orgLink: https://patch.msgid.link/20251210082242.360936-2-maz@kernel.org

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Wed, 10 Dec 2025 09:22:37 +0100</pubDate>
        <dc:creator>Marc Zyngier &lt;maz@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>66067c3c8a1ee097e9c30e8bbd643b12ba54a6b0 - genirq: Add kunit tests for depth counts</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#66067c3c8a1ee097e9c30e8bbd643b12ba54a6b0</link>
        <description>genirq: Add kunit tests for depth countsThere have been a few bugs and/or misunderstandings about the referencecounting, and startup/shutdown behaviors in the IRQ core and related CPUhotplug code. These 4 test cases try to capture a few interesting cases. * irq_disable_depth_test: basic request/disable/enable sequence * irq_free_disabled_test: request/disable/free/re-request sequence -   this catches errors on previous revisions of my work * irq_cpuhotplug_test: exercises managed-affinity IRQ + CPU hotplug.   This captures a problematic test case which was fixed recently.   This test requires CONFIG_SMP and a hotpluggable CPU#1. * irq_shutdown_depth_test: exercises similar behavior from   irq_cpuhotplug_test, but directly using irq_*() APIs instead of going   through CPU hotplug. This still requires CONFIG_SMP, because   managed-affinity is stubbed out (and not all APIs are even present)   without it.Note the use of &apos;imply SMP&apos;: ARCH=um doesn&apos;t support SMP, and kunit isoften exercised there. Thus, &apos;imply&apos; will force SMP on where possible(such as ARCH=x86_64), but leave it off where it&apos;s not.Behavior on various SMP and ARCH configurations:  $ tools/testing/kunit/kunit.py run &apos;irq_test_cases*&apos; --arch x86_64 --qemu_args &apos;-smp 2&apos;  [...]  [11:12:24] Testing complete. Ran 4 tests: passed: 4  $ tools/testing/kunit/kunit.py run &apos;irq_test_cases*&apos; --arch x86_64  [...]  [11:13:27] [SKIPPED] irq_cpuhotplug_test  [11:13:27] ================= [PASSED] irq_test_cases ==================  [11:13:27] ============================================================  [11:13:27] Testing complete. Ran 4 tests: passed: 3, skipped: 1  # default: ARCH=um  $ tools/testing/kunit/kunit.py run &apos;irq_test_cases*&apos;  [11:14:26] [SKIPPED] irq_shutdown_depth_test  [11:14:26] [SKIPPED] irq_cpuhotplug_test  [11:14:26] ================= [PASSED] irq_test_cases ==================  [11:14:26] ============================================================  [11:14:26] Testing complete. Ran 4 tests: passed: 2, skipped: 2Without commit 788019eb559f (&quot;genirq: Retain disable depth for managedinterrupts across CPU hotplug&quot;), this fails as follows:  [11:18:55] =============== irq_test_cases (4 subtests) ================  [11:18:55] [PASSED] irq_disable_depth_test  [11:18:55] [PASSED] irq_free_disabled_test  [11:18:55]     # irq_shutdown_depth_test: EXPECTATION FAILED at kernel/irq/irq_test.c:147  [11:18:55]     Expected desc-&gt;depth == 1, but  [11:18:55]         desc-&gt;depth == 0 (0x0)  [11:18:55] ------------[ cut here ]------------  [11:18:55] Unbalanced enable for IRQ 26  [11:18:55] WARNING: CPU: 1 PID: 36 at kernel/irq/manage.c:792 __enable_irq+0x36/0x60  ...  [11:18:55] [FAILED] irq_shutdown_depth_test  [11:18:55]  #1  [11:18:55]     # irq_cpuhotplug_test: EXPECTATION FAILED at kernel/irq/irq_test.c:202  [11:18:55]     Expected irqd_is_activated(data) to be false, but is true  [11:18:55]     # irq_cpuhotplug_test: EXPECTATION FAILED at kernel/irq/irq_test.c:203  [11:18:55]     Expected irqd_is_started(data) to be false, but is true  [11:18:55]     # irq_cpuhotplug_test: EXPECTATION FAILED at kernel/irq/irq_test.c:204  [11:18:55]     Expected desc-&gt;depth == 1, but  [11:18:55]         desc-&gt;depth == 0 (0x0)  [11:18:55] ------------[ cut here ]------------  [11:18:55] Unbalanced enable for IRQ 27  [11:18:55] WARNING: CPU: 0 PID: 38 at kernel/irq/manage.c:792 __enable_irq+0x36/0x60  ...  [11:18:55] [FAILED] irq_cpuhotplug_test  [11:18:55]     # module: irq_test  [11:18:55] # irq_test_cases: pass:2 fail:2 skip:0 total:4  [11:18:55] # Totals: pass:2 fail:2 skip:0 total:4  [11:18:55] ================= [FAILED] irq_test_cases ==================  [11:18:55] ============================================================  [11:18:55] Testing complete. Ran 4 tests: passed: 2, failed: 2Signed-off-by: Brian Norris &lt;briannorris@chromium.org&gt;Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Link: https://lore.kernel.org/all/20250522210837.4135244-1-briannorris@chromium.org

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Thu, 22 May 2025 23:08:01 +0200</pubDate>
        <dc:creator>Brian Norris &lt;briannorris@chromium.org&gt;</dc:creator>
    </item>
<item>
        <title>bad6722e478f5b17a5ceb039dfb4c680cf2c0b48 - kexec: Consolidate machine_kexec_mask_interrupts() implementation</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#bad6722e478f5b17a5ceb039dfb4c680cf2c0b48</link>
        <description>kexec: Consolidate machine_kexec_mask_interrupts() implementationConsolidate the machine_kexec_mask_interrupts implementation into a commonfunction located in a new file: kernel/irq/kexec.c. This removes duplicateimplementations from architecture-specific files in arch/arm, arch/arm64,arch/powerpc, and arch/riscv, reducing code duplication and improvingmaintainability.The new implementation retains architecture-specific behavior forCONFIG_GENERIC_IRQ_KEXEC_CLEAR_VM_FORWARD, which was previously implementedfor ARM64. When enabled (currently for ARM64), it clears the active stateof interrupts forwarded to virtual machines (VMs) before handling otherinterrupt masking operations.Signed-off-by: Eliav Farber &lt;farbere@amazon.com&gt;Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Link: https://lore.kernel.org/all/20241204142003.32859-2-farbere@amazon.com

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Wed, 04 Dec 2024 15:20:02 +0100</pubDate>
        <dc:creator>Eliav Farber &lt;farbere@amazon.com&gt;</dc:creator>
    </item>
<item>
        <title>835a486cd9f55790dee9f6b67ce0057d49f15da5 - genirq: Add mechanism to multiplex a single HW IPI</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#835a486cd9f55790dee9f6b67ce0057d49f15da5</link>
        <description>genirq: Add mechanism to multiplex a single HW IPIAll RISC-V platforms have a single HW IPI provided by the INTC localinterrupt controller. The HW method to trigger INTC IPI can be throughexternal irqchip (e.g. RISC-V AIA), through platform specific device(e.g. SiFive CLINT timer), or through firmware (e.g. SBI IPI call).To support multiple IPIs on RISC-V, add a generic IPI multiplexingmechanism which help us create multiple virtual IPIs using a singleHW IPI. This generic IPI multiplexing is inspired by the Apple AICirqchip driver and it is shared by various RISC-V irqchip drivers.Signed-off-by: Anup Patel &lt;apatel@ventanamicro.com&gt;Reviewed-by: Hector Martin &lt;marcan@marcan.st&gt;Tested-by: Hector Martin &lt;marcan@marcan.st&gt;Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;Link: https://lore.kernel.org/r/20230103141221.772261-4-apatel@ventanamicro.com

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Tue, 03 Jan 2023 15:12:15 +0100</pubDate>
        <dc:creator>Anup Patel &lt;apatel@ventanamicro.com&gt;</dc:creator>
    </item>
<item>
        <title>6aed82de719b424bd5548aa4179e95f34fd779ab - genirq/timings: Add selftest for circular array</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#6aed82de719b424bd5548aa4179e95f34fd779ab</link>
        <description>genirq/timings: Add selftest for circular arrayDue to the complexity of the code and the difficulty to debug it, add someselftests to the framework in order to spot issues or regression at boottime when the runtime testing is enabled for this subsystem.This tests the circular buffer at the limits and validates: - the encoding / decoding of the values - the macro to browse the irq timings circular buffer - the function to push data in the circular bufferSigned-off-by: Daniel Lezcano &lt;daniel.lezcano@linaro.org&gt;Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Cc: andriy.shevchenko@linux.intel.comLink: https://lkml.kernel.org/r/20190527205521.12091-7-daniel.lezcano@linaro.org

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Mon, 27 May 2019 22:55:19 +0200</pubDate>
        <dc:creator>Daniel Lezcano &lt;daniel.lezcano@linaro.org&gt;</dc:creator>
    </item>
<item>
        <title>670310dfbae0eefe7318ff6a61e29e67a7a7bbce - Merge branch &apos;irq-core-for-linus&apos; of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#670310dfbae0eefe7318ff6a61e29e67a7a7bbce</link>
        <description>Merge branch &apos;irq-core-for-linus&apos; of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tipPull irq core updates from Thomas Gleixner: &quot;A rather large update for the interrupt core code and the irq chip drivers:   - Add a new bitmap matrix allocator and supporting changes, which is     used to replace the x86 vector allocator which comes with separate     pull request. This allows to replace the convoluted nested loop     allocation function in x86 with a facility which supports the     recently added property of managed interrupts proper and allows to     switch to a best effort vector reservation scheme, which addresses     problems with vector exhaustion.   - A large update to the ARM GIC-V3-ITS driver adding support for     range selectors.   - New interrupt controllers:       - Meson and Meson8 GPIO       - BCM7271 L2       - Socionext EXIU     If you expected that this will stop at some point, I have to     disappoint you. There are new ones posted already. Sigh!   - STM32 interrupt controller support for new platforms.   - A pile of fixes, cleanups and updates to the MIPS GIC driver   - The usual small fixes, cleanups and updates all over the place.     Most visible one is to move the irq chip drivers Kconfig switches     into a separate Kconfig menu&quot;* &apos;irq-core-for-linus&apos; of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (70 commits)  genirq: Fix type of shifting literal 1 in __setup_irq()  irqdomain: Drop pointless NULL check in virq_debug_show_one  genirq/proc: Return proper error code when irq_set_affinity() fails  irq/work: Use llist_for_each_entry_safe  irqchip: mips-gic: Print warning if inherited GIC base is used  irqchip/mips-gic: Add pr_fmt and reword pr_* messages  irqchip/stm32: Move the wakeup on interrupt mask  irqchip/stm32: Fix initial values  irqchip/stm32: Add stm32h7 support  dt-bindings/interrupt-controllers: Add compatible string for stm32h7  irqchip/stm32: Add multi-bank management  irqchip/stm32: Select GENERIC_IRQ_CHIP  irqchip/exiu: Add support for Socionext Synquacer EXIU controller  dt-bindings: Add description of Socionext EXIU interrupt controller  irqchip/gic-v3-its: Fix VPE activate callback return value  irqchip: mips-gic: Make IPI bitmaps static  irqchip: mips-gic: Share register writes in gic_set_type()  irqchip: mips-gic: Remove gic_vpes variable  irqchip: mips-gic: Use num_possible_cpus() to reserve IPIs  irqchip: mips-gic: Configure EIC when CPUs come online  ...

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Tue, 14 Nov 2017 02:33:11 +0100</pubDate>
        <dc:creator>Linus Torvalds &lt;torvalds@linux-foundation.org&gt;</dc:creator>
    </item>
<item>
        <title>b24413180f5600bcb3bb70fbed5cf186b60864bd - License cleanup: add SPDX GPL-2.0 license identifier to files with no license</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#b24413180f5600bcb3bb70fbed5cf186b60864bd</link>
        <description>License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseMany source files in the tree are missing licensing information, whichmakes it harder for compliance tools to determine the correct license.By default all files without license information are under the defaultlicense of the kernel, which is GPL version 2.Update the files which contain no license information with the &apos;GPL-2.0&apos;SPDX license identifier.  The SPDX identifier is a legally bindingshorthand, which can be used instead of the full boiler plate text.This patch is based on work done by Thomas Gleixner and Kate Stewart andPhilippe Ombredanne.How this work was done:Patches were generated and checked against linux-4.14-rc6 for a subset ofthe use cases: - file had no licensing information it it. - file was a */uapi/* one with no licensing information in it, - file was a */uapi/* one with existing licensing information,Further patches will be generated in subsequent months to fix up caseswhere non-standard license headers were used, and references to licensehad to be inferred by heuristics based on keywords.The analysis to determine which SPDX License Identifier to be applied toa file was done in a spreadsheet of side by side results from of theoutput of two independent scanners (ScanCode &amp; Windriver) producing SPDXtag:value files created by Philippe Ombredanne.  Philippe prepared thebase worksheet, and did an initial spot review of a few 1000 files.The 4.13 kernel was the starting point of the analysis with 60,537 filesassessed.  Kate Stewart did a file by file comparison of the scannerresults in the spreadsheet to determine which SPDX license identifier(s)to be applied to the file. She confirmed any determination that was notimmediately clear with lawyers working with the Linux Foundation.Criteria used to select files for SPDX license identifier tagging was: - Files considered eligible had to be source code files. - Make and config files were included as candidates if they contained &gt;5   lines of source - File already had some variant of a license header in it (even if &lt;5   lines).All documentation files were explicitly excluded.The following heuristics were used to determine which SPDX licenseidentifiers to apply. - when both scanners couldn&apos;t find any license traces, file was   considered to have no license information in it, and the top level   COPYING file license applied.   For non */uapi/* files that summary was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0                                              11139   and resulted in the first patch in this series.   If that file was a */uapi/* path one, it was &quot;GPL-2.0 WITH   Linux-syscall-note&quot; otherwise it was &quot;GPL-2.0&quot;.  Results of that was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0 WITH Linux-syscall-note                        930   and resulted in the second patch in this series. - if a file had some form of licensing information in it, and was one   of the */uapi/* ones, it was denoted with the Linux-syscall-note if   any GPL family license was found in the file or had no licensing in   it (per prior point).  Results summary:   SPDX license identifier                            # files   ---------------------------------------------------|------   GPL-2.0 WITH Linux-syscall-note                       270   GPL-2.0+ WITH Linux-syscall-note                      169   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause)    21   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)    17   LGPL-2.1+ WITH Linux-syscall-note                      15   GPL-1.0+ WITH Linux-syscall-note                       14   ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause)    5   LGPL-2.0+ WITH Linux-syscall-note                       4   LGPL-2.1 WITH Linux-syscall-note                        3   ((GPL-2.0 WITH Linux-syscall-note) OR MIT)              3   ((GPL-2.0 WITH Linux-syscall-note) AND MIT)             1   and that resulted in the third patch in this series. - when the two scanners agreed on the detected license(s), that became   the concluded license(s). - when there was disagreement between the two scanners (one detected a   license but the other didn&apos;t, or they both detected different   licenses) a manual inspection of the file occurred. - In most cases a manual inspection of the information in the file   resulted in a clear resolution of the license that should apply (and   which scanner probably needed to revisit its heuristics). - When it was not immediately clear, the license identifier was   confirmed with lawyers working with the Linux Foundation. - If there was any question as to the appropriate license identifier,   the file was flagged for further research and to be revisited later   in time.In total, over 70 hours of logged manual review was done on thespreadsheet to determine the SPDX license identifiers to apply to thesource files by Kate, Philippe, Thomas and, in some cases, confirmationby lawyers working with the Linux Foundation.Kate also obtained a third independent scan of the 4.13 code base fromFOSSology, and compared selected files where the other two scannersdisagreed against that SPDX file, to see if there was new insights.  TheWindriver scanner is based on an older version of FOSSology in part, sothey are related.Thomas did random spot checks in about 500 files from the spreadsheetsfor the uapi headers and agreed with SPDX license identifier in thefiles he inspected. For the non-uapi files Thomas did random spot checksin about 15000 files.In initial set of patches against 4.14-rc6, 3 files were found to havecopy/paste license identifier errors, and have been fixed to reflect thecorrect identifier.Additionally Philippe spent 10 hours this week doing a detailed manualinspection and review of the 12,461 patched files from the initial patchversion early this week with: - a full scancode scan run, collecting the matched texts, detected   license ids and scores - reviewing anything where there was a license detected (about 500+   files) to ensure that the applied SPDX license was correct - reviewing anything where there was no detection but the patch license   was not GPL-2.0 WITH Linux-syscall-note to ensure that the applied   SPDX license was correctThis produced a worksheet with 20 files needing minor correction.  Thisworksheet was then exported into 3 different .csv files for thedifferent types of files to be modified.These .csv files were then reviewed by Greg.  Thomas wrote a script toparse the csv files and add the proper SPDX tag to the file, in theformat that the file expected.  This script was further refined by Gregbased on the output to detect more types of files automatically and todistinguish between header and source .c files (which need differentcomment types.)  Finally Greg ran the script using the .csv files togenerate the patches.Reviewed-by: Kate Stewart &lt;kstewart@linuxfoundation.org&gt;Reviewed-by: Philippe Ombredanne &lt;pombredanne@nexb.com&gt;Reviewed-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Wed, 01 Nov 2017 15:07:57 +0100</pubDate>
        <dc:creator>Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;</dc:creator>
    </item>
<item>
        <title>2f75d9e1c90511bff6d1ce4de94503cc28fec032 - genirq: Implement bitmap matrix allocator</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#2f75d9e1c90511bff6d1ce4de94503cc28fec032</link>
        <description>genirq: Implement bitmap matrix allocatorImplement the infrastructure for a simple bitmap based allocator, whichwill replace the x86 vector allocator. It&apos;s in the core code as otherarchitectures might be able to reuse/extend it. For now it only implementsallocations for single CPUs, but it&apos;s simple to add multi CPU allocationsupport if required.The concept is rather simple: Global information: 	system_vector bitmap	global accounting PerCPU information: 	allocation bitmap	managed allocation bitmap	local accountingThe system vector bitmap is used to exclude vectors system wide from theallocation space.The allocation bitmap is used to keep track of per cpu used vectors.The managed allocation bitmap is used to reserve vectors for managedinterrupts.When a regular (non managed) interrupt allocation happens then thefollowing rule applies:      tmpmap = system_map | alloc_map | managed_map      find_zero_bit(tmpmap)Oring the bitmaps together gives the real available space. The same ruleapplies for reserving a managed interrupt vector. But contrary to theregular interrupts the reservation only marks the bit in the managed mapand therefor excludes it from the regular allocations. The managed map isonly cleaned out when the a managed interrupt is completely released and itstays alive accross CPU offline/online operations.For managed interrupt allocations the rule is:      tmpmap = managed_map &amp; ~alloc_map      find_first_bit(tmpmap)This returns the first bit which is in the managed map, but not yetallocated in the allocation map. The allocation marks it in the allocationmap and hands it back to the caller for use.The rest of the code are helper functions to handle the variousrequirements and the accounting which are necessary to replace the x86vector allocation code. The result is a single patch as the evolution ofthis infrastructure cannot be represented in bits and pieces.Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Tested-by: Juergen Gross &lt;jgross@suse.com&gt;Tested-by: Yu Chen &lt;yu.c.chen@intel.com&gt;Acked-by: Juergen Gross &lt;jgross@suse.com&gt;Cc: Boris Ostrovsky &lt;boris.ostrovsky@oracle.com&gt;Cc: Tony Luck &lt;tony.luck@intel.com&gt;Cc: Marc Zyngier &lt;marc.zyngier@arm.com&gt;Cc: Alok Kataria &lt;akataria@vmware.com&gt;Cc: Joerg Roedel &lt;joro@8bytes.org&gt;Cc: &quot;Rafael J. Wysocki&quot; &lt;rjw@rjwysocki.net&gt;Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;Cc: Christoph Hellwig &lt;hch@lst.de&gt;Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;Cc: Borislav Petkov &lt;bp@alien8.de&gt;Cc: Paolo Bonzini &lt;pbonzini@redhat.com&gt;Cc: Rui Zhang &lt;rui.zhang@intel.com&gt;Cc: &quot;K. Y. Srinivasan&quot; &lt;kys@microsoft.com&gt;Cc: Arjan van de Ven &lt;arjan@linux.intel.com&gt;Cc: Dan Williams &lt;dan.j.williams@intel.com&gt;Cc: Chris Metcalf &lt;cmetcalf@mellanox.com&gt;Cc: Len Brown &lt;lenb@kernel.org&gt;Link: https://lkml.kernel.org/r/20170913213153.185437174@linutronix.de

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Wed, 13 Sep 2017 23:29:14 +0200</pubDate>
        <dc:creator>Thomas Gleixner &lt;tglx@linutronix.de&gt;</dc:creator>
    </item>
<item>
        <title>b19af510e67e6ca696b8721f45c148119437307c - genirq/irq_sim: Add a simple interrupt simulator framework</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#b19af510e67e6ca696b8721f45c148119437307c</link>
        <description>genirq/irq_sim: Add a simple interrupt simulator frameworkImplement a simple, irq_work-based framework for simulatinginterrupts. Currently the API exposes routines for initializing anddeinitializing the simulator object, enqueueing the interrupts andretrieving the allocated interrupt numbers based on the offset of thedummy interrupt in the simulator struct.Signed-off-by: Bartosz Golaszewski &lt;brgl@bgdev.pl&gt;Reviewed-by: Jonathan Cameron &lt;Jonathan.Cameron@huawei.com&gt;Cc: Lars-Peter Clausen &lt;lars@metafoo.de&gt;Cc: Jonathan Corbet &lt;corbet@lwn.net&gt;Cc: Marc Zyngier &lt;marc.zyngier@arm.com&gt;Cc: Linus Walleij &lt;linus.walleij@linaro.org&gt;Cc: linux-doc@vger.kernel.orgCc: linux-gpio@vger.kernel.orgCc: Bamvor Jian Zhang &lt;bamvor.zhangjian@linaro.org&gt;Cc: Jonathan Cameron &lt;jic23@kernel.org&gt;Link: http://lkml.kernel.org/r/20170814145318.6495-2-brgl@bgdev.plSigned-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Mon, 14 Aug 2017 16:53:16 +0200</pubDate>
        <dc:creator>Bartosz Golaszewski &lt;brgl@bgdev.pl&gt;</dc:creator>
    </item>
<item>
        <title>b2d3d61adb7b73cfe5f82404f7a130a76fc64232 - genirq/timings: Add infrastructure to track the interrupt timings</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#b2d3d61adb7b73cfe5f82404f7a130a76fc64232</link>
        <description>genirq/timings: Add infrastructure to track the interrupt timingsThe interrupt framework gives a lot of information about each interrupt. Itdoes not keep track of when those interrupts occur though, which is aprerequisite for estimating the next interrupt arrival for power managementpurposes.Add a mechanism to record the timestamp for each interrupt occurrences in aper-CPU circular buffer to help with the prediction of the next occurrenceusing a statistical model.Each CPU can store up to IRQ_TIMINGS_SIZE events &lt;irq, timestamp&gt;, thecurrent value of IRQ_TIMINGS_SIZE is 32.Each event is encoded into a single u64, where the high 48 bits are usedfor the timestamp and the low 16 bits are for the irq number.A static key is introduced so when the irq prediction is switched off atruntime, the overhead is near to zero.It results in most of the code in internals.h for inline reasons and a veryfew in the new file timings.c. The latter will contain more in the next patchwhich will provide the statistical model for the next event prediction.Signed-off-by: Daniel Lezcano &lt;daniel.lezcano@linaro.org&gt;Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Acked-by: Nicolas Pitre &lt;nicolas.pitre@linaro.org&gt;Cc: Jens Axboe &lt;axboe@kernel.dk&gt;Cc: Hannes Reinecke &lt;hare@suse.com&gt;Cc: Vincent Guittot &lt;vincent.guittot@linaro.org&gt;Cc: &quot;Rafael J . Wysocki&quot; &lt;rafael@kernel.org&gt;Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;Cc: Bjorn Helgaas &lt;bhelgaas@google.com&gt;Link: http://lkml.kernel.org/r/1498227072-5980-1-git-send-email-daniel.lezcano@linaro.org

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Fri, 23 Jun 2017 16:11:07 +0200</pubDate>
        <dc:creator>Daniel Lezcano &lt;daniel.lezcano@linaro.org&gt;</dc:creator>
    </item>
<item>
        <title>087cdfb662ae50e3826e7cd2e54b6519d07b60f0 - genirq/debugfs: Add proper debugfs interface</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#087cdfb662ae50e3826e7cd2e54b6519d07b60f0</link>
        <description>genirq/debugfs: Add proper debugfs interfaceDebugging (hierarchical) interupt domains is tedious as there is noinformation about the hierarchy and no information about states ofinterrupts in the various domain levels.Add a debugfs directory &apos;irq&apos; and subdirectories &apos;domains&apos; and &apos;irqs&apos;.The domains directory contains the domain files. The content is informationabout the domain. If the domain is part of a hierarchy then the parentdomains are printed as well.# ls /sys/kernel/debug/irq/domains/default     INTEL-IR-2	    INTEL-IR-MSI-2  IO-APIC-IR-2  PCI-MSIDMAR-MSI    INTEL-IR-3	    INTEL-IR-MSI-3  IO-APIC-IR-3  unknown-1INTEL-IR-0  INTEL-IR-MSI-0  IO-APIC-IR-0    IO-APIC-IR-4  VECTORINTEL-IR-1  INTEL-IR-MSI-1  IO-APIC-IR-1    PCI-HT# cat /sys/kernel/debug/irq/domains/VECTOR name:   VECTOR size:   0 mapped: 216 flags:  0x00000041# cat /sys/kernel/debug/irq/domains/IO-APIC-IR-0 name:   IO-APIC-IR-0 size:   24 mapped: 19 flags:  0x00000041 parent: INTEL-IR-3    name:   INTEL-IR-3     size:   65536     mapped: 167     flags:  0x00000041     parent: VECTOR        name:   VECTOR         size:   0         mapped: 216         flags:  0x00000041Unfortunately there is no per cpu information about the VECTOR domain (yet).The irqs directory contains detailed information about mapped interrupts.# cat /sys/kernel/debug/irq/irqs/3handler:  handle_edge_irqstatus:   0x00004000istate:   0x00000000ddepth:   1wdepth:   0dstate:   0x01018000            IRQD_IRQ_DISABLED            IRQD_SINGLE_TARGET            IRQD_MOVE_PCNTXTnode:     0affinity: 0-143effectiv: 0pending:  domain:  IO-APIC-IR-0 hwirq:   0x3 chip:    IR-IO-APIC  flags:   0x10             IRQCHIP_SKIP_SET_WAKE parent:    domain:  INTEL-IR-3     hwirq:   0x20000     chip:    INTEL-IR      flags:   0x0     parent:        domain:  VECTOR         hwirq:   0x3         chip:    APIC          flags:   0x0This was developed to simplify the debugging of the managed affinitychanges.Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Acked-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;Cc: Jens Axboe &lt;axboe@kernel.dk&gt;Cc: Michael Ellerman &lt;mpe@ellerman.id.au&gt;Cc: Keith Busch &lt;keith.busch@intel.com&gt;Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;Cc: Christoph Hellwig &lt;hch@lst.de&gt;Link: http://lkml.kernel.org/r/20170619235444.537566163@linutronix.deSigned-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Tue, 20 Jun 2017 01:37:17 +0200</pubDate>
        <dc:creator>Thomas Gleixner &lt;tglx@linutronix.de&gt;</dc:creator>
    </item>
<item>
        <title>5e385a6ef31fbbf2acbda770aecc2bc2ff933d17 - genirq: Add a helper to spread an affinity mask for MSI/MSI-X vectors</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#5e385a6ef31fbbf2acbda770aecc2bc2ff933d17</link>
        <description>genirq: Add a helper to spread an affinity mask for MSI/MSI-X vectorsThis is lifted from the blk-mq code and adopted to use the affinity maskconcept just introduced in the irq handling code.  It tries to keep thealgorithm the same as the one current used by blk-mq, but improvementslike assining vectors on a per-node basis instead of just per siblingare possible with this simple move and refactoring.Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;Cc: linux-block@vger.kernel.orgCc: linux-pci@vger.kernel.orgCc: linux-nvme@lists.infradead.orgCc: axboe@fb.comCc: agordeev@redhat.comLink: http://lkml.kernel.org/r/1467621574-8277-7-git-send-email-hch@lst.deSigned-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Mon, 04 Jul 2016 10:39:27 +0200</pubDate>
        <dc:creator>Christoph Hellwig &lt;hch@lst.de&gt;</dc:creator>
    </item>
<item>
        <title>d17bf24e695290d3fe7943aca52ab48098a10653 - genirq: Add a new generic IPI reservation code to irq core</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#d17bf24e695290d3fe7943aca52ab48098a10653</link>
        <description>genirq: Add a new generic IPI reservation code to irq coreAdd a generic mechanism to dynamically allocate an IPI. Depending on theunderlying implementation this creates either a single Linux irq or aconsective range of Linux irqs. The Linux irq is used later to send IPIs toother CPUs.[ tglx: Massaged the code and removed the &apos;consecutive mask&apos; restriction for  	the single IRQ case ]Signed-off-by: Qais Yousef &lt;qais.yousef@imgtec.com&gt;Cc: &lt;jason@lakedaemon.net&gt;Cc: &lt;marc.zyngier@arm.com&gt;Cc: &lt;jiang.liu@linux.intel.com&gt;Cc: &lt;ralf@linux-mips.org&gt;Cc: &lt;linux-mips@linux-mips.org&gt;Cc: &lt;lisa.parratt@imgtec.com&gt;Cc: Qais Yousef &lt;qsyousef@gmail.com&gt;Link: http://lkml.kernel.org/r/1449580830-23652-9-git-send-email-qais.yousef@imgtec.comSigned-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Tue, 08 Dec 2015 14:20:19 +0100</pubDate>
        <dc:creator>Qais Yousef &lt;qais.yousef@imgtec.com&gt;</dc:creator>
    </item>
<item>
        <title>f1e0bb0ad473a32d1b7e6d285ae9f7e47710bb5e - genirq: Introduce generic irq migration for cpu hotunplug</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#f1e0bb0ad473a32d1b7e6d285ae9f7e47710bb5e</link>
        <description>genirq: Introduce generic irq migration for cpu hotunplugARM and ARM64 have almost identical code for migrating interrupts oncpu hotunplug. Provide a generic version which can be used by both.The new code addresses a shortcoming in the ARM[64] variants whichfails to update the affinity change in some cases. The solution forthis is to use the core function irq_do_set_affinity() instead of opencoding it.[ tglx: Added copyright notice and license boilerplate. Rewrote  	subject and changelog. ]Signed-off-by: Yang Yingliang &lt;yangyingliang@huawei.com&gt;Acked-by: Russell King - ARM Linux &lt;linux@arm.linux.org.uk&gt;Cc: Jiang Liu &lt;jiang.liu@linux.intel.com&gt;Cc: Marc Zyngier &lt;marc.zyngier@arm.com&gt;Cc: Mark Rutland &lt;mark.rutland@arm.com&gt;Cc: Will Deacon &lt;will.deacon@arm.com&gt;Cc: Hanjun Guo &lt;hanjun.guo@linaro.org&gt;Cc: &lt;linux-arm-kernel@lists.infradead.org&gt;Link: http://lkml.kernel.org/r/1443087135-17044-2-git-send-email-yangyingliang@huawei.comSigned-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Thu, 24 Sep 2015 11:32:13 +0200</pubDate>
        <dc:creator>Yang Yingliang &lt;yangyingliang@huawei.com&gt;</dc:creator>
    </item>
<item>
        <title>f3cf8bb0d6c3c11ddedf01f02f856f2ae8c33aa4 - genirq: Add generic msi irq domain support</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#f3cf8bb0d6c3c11ddedf01f02f856f2ae8c33aa4</link>
        <description>genirq: Add generic msi irq domain supportImplement the basic functions for MSI interrupt support withhierarchical interrupt domains.[ tglx: Extracted and combined from several patches ]Signed-off-by: Jiang Liu &lt;jiang.liu@linux.intel.com&gt;Cc: Bjorn Helgaas &lt;bhelgaas@google.com&gt;Cc: Grant Likely &lt;grant.likely@linaro.org&gt;Cc: Marc Zyngier &lt;marc.zyngier@arm.com&gt;Cc: Yingjoe Chen &lt;yingjoe.chen@mediatek.com&gt;Cc: Yijing Wang &lt;wangyijing@huawei.com&gt;Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Wed, 12 Nov 2014 11:39:03 +0100</pubDate>
        <dc:creator>Jiang Liu &lt;jiang.liu@linux.intel.com&gt;</dc:creator>
    </item>
<item>
        <title>08a543ad33fc188650801bd36eed4ffe272643e1 - irq: add irq_domain translation infrastructure</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#08a543ad33fc188650801bd36eed4ffe272643e1</link>
        <description>irq: add irq_domain translation infrastructureThis patch adds irq_domain infrastructure for translating fromhardware irq numbers to linux irqs.  This is particularly importantfor architectures adding device tree support because the currentimplementation (excluding PowerPC and SPARC) cannot handletranslation for more than a single interrupt controller.  irq_domainsupports device tree translation for any number of interruptcontrollers.This patch converts x86, Microblaze, ARM and MIPS to use irq_domainfor device tree irq translation.  x86 is untested beyond compiling it,irq_domain is enabled for MIPS and Microblaze, but the old behaviour ispreserved until the core code is modified to actually register anirq_domain yet.  On ARM it works and is required for much of the newARM device tree board support.PowerPC has /not/ been converted to use this new infrastructure.  Itis still missing some features before it can replace the virqinfrastructure already in powerpc (see documentation onirq_domain_map/unmap for details).  Followup patches will add themissing pieces and migrate PowerPC to use irq_domain.SPARC has its own method of managing interrupts from the device treeand is unaffected by this change.Acked-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Tue, 26 Jul 2011 11:19:06 +0200</pubDate>
        <dc:creator>Grant Likely &lt;grant.likely@secretlab.ca&gt;</dc:creator>
    </item>
<item>
        <title>c42321c76b0ef472e3bae4bfcb0f46ab19e038ef - genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#c42321c76b0ef472e3bae4bfcb0f46ab19e038ef</link>
        <description>genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIPOnly compile it in when there are users.Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Cc: linux-arm-kernel@lists.infradead.org

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Mon, 02 May 2011 18:16:22 +0200</pubDate>
        <dc:creator>Thomas Gleixner &lt;tglx@linutronix.de&gt;</dc:creator>
    </item>
<item>
        <title>7d8280624797bbe2f5170bd3c85c75a8c9c74242 - genirq: Implement a generic interrupt chip</title>
        <link>http://kernelsources.org:8080/source/history/linux/kernel/irq/Makefile#7d8280624797bbe2f5170bd3c85c75a8c9c74242</link>
        <description>genirq: Implement a generic interrupt chipImplement a generic interrupt chip, which is configurable and is ableto handle the most common irq chip implementations.Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Cc: linux-arm-kernel@lists.infradead.orgTested-by: H Hartley Sweeten &lt;hsweeten@visionengravers.com&gt;Tested-by: Tony Lindgren &lt;tony@atomide.com&gt;Tested-by; Kevin Hilman &lt;khilman@ti.com&gt;

            List of files:
            /linux/kernel/irq/Makefile</description>
        <pubDate>Sun, 03 Apr 2011 11:42:53 +0200</pubDate>
        <dc:creator>Thomas Gleixner &lt;tglx@linutronix.de&gt;</dc:creator>
    </item>
</channel>
</rss>
