1. 04 4月, 2017 1 次提交
  2. 02 3月, 2017 2 次提交
  3. 28 2月, 2017 1 次提交
  4. 16 2月, 2017 1 次提交
  5. 13 2月, 2017 1 次提交
  6. 11 2月, 2017 1 次提交
  7. 10 2月, 2017 1 次提交
  8. 30 1月, 2017 1 次提交
  9. 23 1月, 2017 3 次提交
  10. 15 12月, 2016 1 次提交
  11. 22 11月, 2016 1 次提交
  12. 17 11月, 2016 2 次提交
  13. 09 11月, 2016 2 次提交
  14. 08 11月, 2016 1 次提交
    • T
      genirq: Use irq type from irqdata instead of irqdesc · 7ee7e87d
      Thomas Gleixner 提交于
      The type flags in the irq descriptor are there for historical reasons and
      only updated via irq_modify_status() or irq_set_type(). Both functions also
      update the type flags in irqdata. __setup_irq() is the only left over user
      of the type flags in the irq descriptor.
      
      If __setup_irq() is called with empty irq type flags, then the type flags
      are retrieved from irqdata. If an interrupt is shared, then the type flags
      are compared with the type flags stored in the irq descriptor. 
      
      On x86 the ioapic does not have a irq_set_type() callback because the type
      is defined in the BIOS tables and cannot be changed. The type is stored in
      irqdata at setup time without updating the type data in the irq
      descriptor. As a result the comparison described above fails.
      
      There is no point in updating the irq descriptor flags because the only
      relevant storage is irqdata. Use the type flags from irqdata for both
      retrieval and comparison in __setup_irq() instead.
      
      Aside of that the print out in case of non matching type flags has the old
      and new type flags arguments flipped. Fix that as well.
      
      For correctness sake the flags stored in the irq descriptor should be
      removed, but this is beyond the scope of this bugfix and will be done in a
      later patch.
      
      Fixes: 4b357dae ("genirq: Look-up trigger type if not specified by caller")
      Reported-and-tested-by: NMika Westerberg <mika.westerberg@linux.intel.com>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Jon Hunter <jonathanh@nvidia.com>
      Cc: stable@vger.kernel.org
      Link: http://lkml.kernel.org/r/alpine.DEB.2.20.1611072020360.3501@nanosSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
      7ee7e87d
  15. 21 10月, 2016 1 次提交
  16. 26 9月, 2016 1 次提交
  17. 19 9月, 2016 1 次提交
  18. 15 9月, 2016 4 次提交
  19. 14 9月, 2016 1 次提交
    • C
      genirq: Expose interrupt information through sysfs · ecb3f394
      Craig Gallek 提交于
      Information about interrupts is exposed via /proc/interrupts, but the
      format of that file has changed over kernel versions and differs across
      architectures. It also has varying column numbers depending on hardware.
      
      That all makes it hard for tools to parse.
      
      To solve this, expose the information through sysfs so each irq attribute
      is in a separate file in a consistent, machine parsable way.
      
      This feature is only available when both CONFIG_SPARSE_IRQ and
      CONFIG_SYSFS are enabled.
      
      Examples:
        /sys/kernel/irq/18/actions:	i801_smbus,ehci_hcd:usb1,uhci_hcd:usb7
        /sys/kernel/irq/18/chip_name:	IR-IO-APIC
        /sys/kernel/irq/18/hwirq:		18
        /sys/kernel/irq/18/name:		fasteoi
        /sys/kernel/irq/18/per_cpu_count:	0,0
        /sys/kernel/irq/18/type:		level
      
        /sys/kernel/irq/25/actions:	ahci0
        /sys/kernel/irq/25/chip_name:	IR-PCI-MSI
        /sys/kernel/irq/25/hwirq:		512000
        /sys/kernel/irq/25/name:		edge
        /sys/kernel/irq/25/per_cpu_count:	29036,0
        /sys/kernel/irq/25/type:		edge
      
      [ tglx: Moved kobject_del() under sparse_irq_lock, massaged code comments
        	and changelog ]
      Signed-off-by: NCraig Gallek <kraig@google.com>
      Cc: David Decotigny <decot@google.com>
      Link: http://lkml.kernel.org/r/1473783291-122873-1-git-send-email-kraigatgoog@gmail.comSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
      ecb3f394
  20. 06 9月, 2016 1 次提交
  21. 05 9月, 2016 1 次提交
  22. 03 9月, 2016 6 次提交
  23. 22 8月, 2016 2 次提交
  24. 17 8月, 2016 1 次提交
  25. 09 8月, 2016 1 次提交
  26. 19 7月, 2016 1 次提交