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-next>] [day] [month] [year] [list]
Message-Id: <20140507153622.703412101@linutronix.de>
Date:	Wed, 07 May 2014 15:44:03 -0000
From:	Thomas Gleixner <tglx@...utronix.de>
To:	LKML <linux-kernel@...r.kernel.org>
Cc:	Ingo Molnar <mingo@...e.hu>, Peter Anvin <hpa@...or.com>,
	Tony Luck <tony.luck@...el.com>,
	Peter Zijlstra <peterz@...radead.org>
Subject: [patch 00/32] genirq: Another round of tree wide cleanups

This cleanup series addresses a few histerical leftovers:

1) irq_reserve_irq()

   The remaining callsites are pointless except s390, but we have a
   better way to protect the lower interrupt space there.

   It's gone for good and it will never come back. Use irq domains, if
   you want hot pluggable irq chips.

2) create/destroy_irq and their variants

   Designed in different circles of hell we have an incompatible zoo
   of those.

   Three different implementations with different semantics vs. the
   return values. Two use cases which are just reusing the global
   namespace. And they come along with four different flavours of
   dynamic irq allocation.

   I created a core implementation for that and put it under
   GENERIC_IRQ_LEGACY_ALLOC_HWIRQ to make clear that this is not for
   new code. That implementation is used by x86 and tile. I gave up on
   converting ia64 over, so I moved the create/destroy_irq prototypes
   into ia64 headers and provided a wrapper for the shared dmar driver.

   The core implementation is a very basic allocator and that's
   deliberately so. I don't want more users and every more complex
   than that wants to use irq domains.

3) dynamic_irq_init/cleanup

   Another leftover from the past. By moving tile and iop13xx to
   sparse irq there is only ia64 left. I simplified the code and made
   this available only under a legacy config option to avoid that more
   people think they need this.

Full diffstat below.

Thanks,

	tglx
---
 arch/arm/Kconfig                          |    1 
 arch/arm/mach-iop13xx/include/mach/irqs.h |    2 
 arch/arm/mach-iop13xx/include/mach/time.h |    3 
 arch/arm/mach-iop13xx/iq81340mc.c         |    1 
 arch/arm/mach-iop13xx/iq81340sc.c         |    1 
 arch/arm/mach-iop13xx/msi.c               |   51 ++---------
 arch/arm/mach-iop13xx/setup.c             |    1 
 arch/arm/mach-iop13xx/tpmi.c              |    1 
 arch/ia64/Kconfig                         |    1 
 arch/ia64/include/asm/hw_irq.h            |    1 
 arch/ia64/include/asm/irq.h               |    3 
 arch/ia64/include/asm/irq_remapping.h     |    2 
 arch/ia64/kernel/iosapic.c                |    2 
 arch/ia64/kernel/irq_ia64.c               |   15 ---
 arch/mips/pci/msi-xlp.c                   |   10 --
 arch/mips/pci/pci-xlr.c                   |   10 --
 arch/s390/kernel/irq.c                    |    5 -
 arch/s390/pci/pci.c                       |    6 -
 arch/tile/Kconfig                         |    2 
 arch/tile/include/asm/irq.h               |    6 -
 arch/tile/kernel/irq.c                    |   40 ---------
 arch/tile/kernel/pci_gx.c                 |   17 +--
 arch/x86/Kconfig                          |    1 
 arch/x86/include/asm/io_apic.h            |    2 
 arch/x86/include/asm/irq_remapping.h      |    3 
 arch/x86/kernel/apic/io_apic.c            |  130 +++++-------------------------
 arch/x86/kernel/hpet.c                    |    5 -
 arch/x86/platform/uv/uv_irq.c             |   10 --
 drivers/iommu/dmar.c                      |    8 -
 drivers/iommu/irq_remapping.c             |   12 +-
 drivers/net/ethernet/tile/tilegx.c        |    6 -
 drivers/pci/htirq.c                       |   13 ---
 drivers/sh/intc/core.c                    |    6 -
 drivers/tty/hvc/hvc_tile.c                |    8 -
 drivers/tty/serial/tilegx.c               |    8 -
 drivers/usb/host/ehci-tilegx.c            |    8 -
 drivers/usb/host/ohci-tilegx.c            |    8 -
 drivers/xen/events/events_base.c          |   17 ---
 include/linux/irq.h                       |   38 +++-----
 kernel/irq/Kconfig                        |    9 ++
 kernel/irq/chip.c                         |    5 -
 kernel/irq/internals.h                    |    6 +
 kernel/irq/irqdesc.c                      |   95 ++++++++++++++-------
 43 files changed, 216 insertions(+), 363 deletions(-)



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ