linux-hyperv.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch V2 00/10] genirq/msi: Spring cleaning
@ 2025-03-13 13:03 Thomas Gleixner
  2025-03-13 13:03 ` [patch V2 01/10] cleanup: Provide retain_ptr() Thomas Gleixner
                   ` (9 more replies)
  0 siblings, 10 replies; 20+ messages in thread
From: Thomas Gleixner @ 2025-03-13 13:03 UTC (permalink / raw)
  To: LKML
  Cc: Marc Zyngier, Peter Zijlstra, Nishanth Menon, Jonathan Cameron,
	Dhruva Gole, Tero Kristo, Santosh Shilimkar, Logan Gunthorpe,
	Dave Jiang, Jon Mason, Allen Hubbe, ntb, Bjorn Helgaas, linux-pci,
	Michael Kelley, Wei Liu, Haiyang Zhang, linux-hyperv, Wei Huang,
	Manivannan Sadhasivam, James E.J. Bottomley, Martin K. Petersen,
	linux-scsi, Jonathan Cameron

This is version 2 of the cleanup work. The previous version can be found
here:

   https://lore.kernel.org/all/20250309083453.900516105@linutronix.de

While converting the MSI descriptor locking to a lock guard() I stumbled
over various abuse of MSI descriptors (again).

The following series cleans up the offending code and converts the MSI
descriptor locking over to lock guards.

Changes vs. V1:

   - Introduce retain_ptr() to allow using __free() when the allocation is
     consumed by a called function (on success) and therefore no_free_ptr()
     can't be used.

   - Rework the PCI/MSI changes to avoid gotos in guard sections

   - Drop patch 1 as it's already applied

   - Collect Reviewed/Tested/Acked-by tags where appropriate

Patches 3,4,6-10 are unmodifed.

The series applies on:

    git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/msi

and is available from git:

    git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git irq/msi

Thanks,

	tglx
---
 drivers/ntb/msi.c                   |   22 +---
 drivers/pci/controller/pci-hyperv.c |   14 ---
 drivers/pci/msi/api.c               |    6 -
 drivers/pci/msi/msi.c               |  168 ++++++++++++++++++++++--------------
 drivers/pci/pci.h                   |    9 +
 drivers/pci/tph.c                   |   44 ---------
 drivers/soc/ti/ti_sci_inta_msi.c    |   10 --
 drivers/ufs/host/ufs-qcom.c         |   75 ++++++++--------
 include/linux/cleanup.h             |   17 +++
 include/linux/irqdomain.h           |    2 
 include/linux/msi.h                 |    7 +
 kernel/irq/msi.c                    |  125 ++++++++++----------------
 12 files changed, 247 insertions(+), 252 deletions(-)



^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2025-03-28 14:05 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-13 13:03 [patch V2 00/10] genirq/msi: Spring cleaning Thomas Gleixner
2025-03-13 13:03 ` [patch V2 01/10] cleanup: Provide retain_ptr() Thomas Gleixner
2025-03-13 15:24   ` Jonathan Cameron
2025-03-14  9:37   ` Peter Zijlstra
2025-03-14 14:04   ` Frank Li
2025-03-13 13:03 ` [patch V2 02/10] genirq/msi: Use lock guards for MSI descriptor locking Thomas Gleixner
2025-03-13 15:26   ` Jonathan Cameron
2025-03-13 13:03 ` [patch V2 03/10] soc: ti: ti_sci_inta_msi: Switch MSI descriptor locking to guard() Thomas Gleixner
2025-03-13 13:03 ` [patch V2 04/10] NTB/msi: Switch MSI descriptor locking to lock guard() Thomas Gleixner
2025-03-13 13:03 ` [patch V2 05/10] PCI/MSI: Switch to MSI descriptor locking to guard() Thomas Gleixner
2025-03-13 15:50   ` Jonathan Cameron
2025-03-13 17:55     ` Thomas Gleixner
2025-03-14  9:42       ` Peter Zijlstra
2025-03-13 13:03 ` [patch V2 06/10] PCI: hv: Switch " Thomas Gleixner
2025-03-13 13:03 ` [patch V2 07/10] PCI/MSI: Provide a sane mechanism for TPH Thomas Gleixner
2025-03-13 13:03 ` [patch V2 08/10] PCI/TPH: Replace the broken MSI-X control word update Thomas Gleixner
2025-03-13 13:03 ` [patch V2 09/10] scsi: ufs: qcom: Remove the MSI descriptor abuse Thomas Gleixner
2025-03-28 10:00   ` Dan Carpenter
2025-03-28 14:05     ` Thomas Gleixner
2025-03-13 13:03 ` [patch V2 10/10] genirq/msi: Rename msi_[un]lock_descs() Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).