From: Takashi Iwai <tiwai@suse.de>
To: Philipp Stanner <pstanner@redhat.com>
Cc: "Damien Le Moal" <dlemoal@kernel.org>,
"Niklas Cassel" <cassel@kernel.org>,
"Sergey Shtylyov" <s.shtylyov@omp.ru>,
"Basavaraj Natikar" <basavaraj.natikar@amd.com>,
"Jiri Kosina" <jikos@kernel.org>,
"Benjamin Tissoires" <bentiss@kernel.org>,
"Arnd Bergmann" <arnd@arndb.de>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Alex Dubov" <oakad@yahoo.com>,
"Sudarsana Kalluru" <skalluru@marvell.com>,
"Manish Chopra" <manishc@marvell.com>,
"David S. Miller" <davem@davemloft.net>,
"Eric Dumazet" <edumazet@google.com>,
"Jakub Kicinski" <kuba@kernel.org>,
"Paolo Abeni" <pabeni@redhat.com>,
"Rasesh Mody" <rmody@marvell.com>,
GR-Linux-NIC-Dev@marvell.com,
"Igor Mitsyanko" <imitsyanko@quantenna.com>,
"Sergey Matyukevich" <geomatsi@gmail.com>,
"Kalle Valo" <kvalo@kernel.org>,
"Sanjay R Mehta" <sanju.mehta@amd.com>,
"Shyam Sundar S K" <Shyam-sundar.S-k@amd.com>,
"Jon Mason" <jdmason@kudzu.us>,
"Dave Jiang" <dave.jiang@intel.com>,
"Allen Hubbe" <allenbh@gmail.com>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Alex Williamson" <alex.williamson@redhat.com>,
"Juergen Gross" <jgross@suse.com>,
"Stefano Stabellini" <sstabellini@kernel.org>,
"Oleksandr Tyshchenko" <oleksandr_tyshchenko@epam.com>,
"Jaroslav Kysela" <perex@perex.cz>,
"Takashi Iwai" <tiwai@suse.com>, "Chen Ni" <nichen@iscas.ac.cn>,
"Mario Limonciello" <mario.limonciello@amd.com>,
"Ricky Wu" <ricky_wu@realtek.com>,
"Al Viro" <viro@zeniv.linux.org.uk>,
"Breno Leitao" <leitao@debian.org>,
"Kevin Tian" <kevin.tian@intel.com>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Mostafa Saleh" <smostafa@google.com>,
"Jason Gunthorpe" <jgg@ziepe.ca>, "Yi Liu" <yi.l.liu@intel.com>,
"Christian Brauner" <brauner@kernel.org>,
"Ankit Agrawal" <ankita@nvidia.com>,
"Eric Auger" <eric.auger@redhat.com>,
"Reinette Chatre" <reinette.chatre@intel.com>,
"Ye Bin" <yebin10@huawei.com>,
"Marek Marczykowski-Górecki" <marmarek@invisiblethingslab.com>,
"Pierre-Louis Bossart" <pierre-louis.bossart@linux.dev>,
"Peter Ujfalusi" <peter.ujfalusi@linux.intel.com>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"Kai Vehmanen" <kai.vehmanen@linux.intel.com>,
"Rui Salvaterra" <rsalvaterra@gmail.com>,
linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-input@vger.kernel.org, netdev@vger.kernel.org,
linux-wireless@vger.kernel.org, ntb@lists.linux.dev,
linux-pci@vger.kernel.org, kvm@vger.kernel.org,
xen-devel@lists.xenproject.org, linux-sound@vger.kernel.org
Subject: Re: [PATCH 02/13] ALSA: hda_intel: Use always-managed version of pcim_intx()
Date: Tue, 22 Oct 2024 16:08:58 +0200 [thread overview]
Message-ID: <87v7xk2ps5.wl-tiwai@suse.de> (raw)
In-Reply-To: <20241015185124.64726-3-pstanner@redhat.com>
On Tue, 15 Oct 2024 20:51:12 +0200,
Philipp Stanner wrote:
>
> pci_intx() is a hybrid function which can sometimes be managed through
> devres. To remove this hybrid nature from pci_intx(), it is necessary to
> port users to either an always-managed or a never-managed version.
>
> hda_intel enables its PCI-Device with pcim_enable_device(). Thus, it needs
> the always-managed version.
>
> Replace pci_intx() with pcim_intx().
>
> Signed-off-by: Philipp Stanner <pstanner@redhat.com>
> ---
> sound/pci/hda/hda_intel.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> index b4540c5cd2a6..b44ca7b6e54f 100644
> --- a/sound/pci/hda/hda_intel.c
> +++ b/sound/pci/hda/hda_intel.c
> @@ -786,7 +786,7 @@ static int azx_acquire_irq(struct azx *chip, int do_disconnect)
> }
> bus->irq = chip->pci->irq;
> chip->card->sync_irq = bus->irq;
> - pci_intx(chip->pci, !chip->msi);
> + pcim_intx(chip->pci, !chip->msi);
> return 0;
> }
>
Hm, it's OK-ish to do this as it's practically same as what pci_intx()
currently does. But, the current code can be a bit inconsistent about
the original intx value. pcim_intx() always stores !enable to
res->orig_intx unconditionally, and it means that the orig_intx value
gets overridden at each time pcim_intx() gets called.
Meanwhile, HD-audio driver does release and re-acquire the interrupt
after disabling MSI when something goes wrong, and pci_intx() call
above is a part of that procedure. So, it can rewrite the
res->orig_intx to another value by retry without MSI. And after the
driver removal, it'll lead to another state.
In anyway, as it doesn't change the current behavior, feel free to
take my ack for now:
Acked-by: Takashi Iwai <tiwai@suse.de>
thanks,
Takashi
next prev parent reply other threads:[~2024-10-22 14:07 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-15 18:51 [PATCH 00/13] Remove implicit devres from pci_intx() Philipp Stanner
2024-10-15 18:51 ` [PATCH 01/13] PCI: Prepare removing " Philipp Stanner
2024-10-31 13:45 ` Thomas Gleixner
2024-11-04 9:26 ` Philipp Stanner
2024-10-15 18:51 ` [PATCH 02/13] ALSA: hda_intel: Use always-managed version of pcim_intx() Philipp Stanner
2024-10-22 14:08 ` Takashi Iwai [this message]
2024-10-23 13:50 ` Philipp Stanner
2024-10-23 15:03 ` Takashi Iwai
2024-10-24 8:02 ` Philipp Stanner
2024-10-24 15:43 ` Takashi Iwai
2024-10-25 8:37 ` Philipp Stanner
2024-10-25 8:46 ` Takashi Iwai
2024-10-15 18:51 ` [PATCH 03/13] drivers/xen: Use never-managed version of pci_intx() Philipp Stanner
2024-10-15 18:51 ` [PATCH 04/13] net/ethernet: " Philipp Stanner
2024-10-15 18:51 ` [PATCH 05/13] net/ntb: " Philipp Stanner
2024-10-15 18:51 ` [PATCH 06/13] misc: " Philipp Stanner
2024-10-15 18:51 ` [PATCH 07/13] vfio/pci: " Philipp Stanner
2024-10-15 18:51 ` [PATCH 08/13] PCI: MSI: " Philipp Stanner
2024-10-15 18:51 ` [PATCH 09/13] ata: Use always-managed " Philipp Stanner
2024-10-16 19:49 ` Sergey Shtylyov
2024-10-17 7:51 ` Niklas Cassel
2024-10-15 18:51 ` [PATCH 10/13] wifi: qtnfmac: use always-managed version of pcim_intx() Philipp Stanner
2024-10-16 9:36 ` Kalle Valo
2024-10-15 18:51 ` [PATCH 11/13] HID: amd_sfh: Use " Philipp Stanner
2024-10-15 18:51 ` [PATCH 12/13] Remove devres from pci_intx() Philipp Stanner
2024-10-15 18:51 ` [PATCH 13/13] PCI: Deprecate pci_intx(), pcim_intx() Philipp Stanner
2024-10-15 19:53 ` Alex Williamson
2024-10-16 6:57 ` Philipp Stanner
2024-10-16 8:43 ` Heiner Kallweit
2024-10-16 8:53 ` Philipp Stanner
2024-10-18 23:45 ` Bjorn Helgaas
2024-10-21 6:47 ` Philipp Stanner
2024-10-16 5:39 ` Greg Kroah-Hartman
2024-10-30 22:17 ` [PATCH 00/13] Remove implicit devres from pci_intx() Bjorn Helgaas
2024-10-31 9:19 ` Takashi Iwai
2024-10-31 9:28 ` Philipp Stanner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87v7xk2ps5.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=GR-Linux-NIC-Dev@marvell.com \
--cc=Shyam-sundar.S-k@amd.com \
--cc=alex.williamson@redhat.com \
--cc=allenbh@gmail.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=ankita@nvidia.com \
--cc=arnd@arndb.de \
--cc=basavaraj.natikar@amd.com \
--cc=bentiss@kernel.org \
--cc=bhelgaas@google.com \
--cc=brauner@kernel.org \
--cc=cassel@kernel.org \
--cc=dave.jiang@intel.com \
--cc=davem@davemloft.net \
--cc=dlemoal@kernel.org \
--cc=edumazet@google.com \
--cc=eric.auger@redhat.com \
--cc=geomatsi@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=imitsyanko@quantenna.com \
--cc=jdmason@kudzu.us \
--cc=jgg@ziepe.ca \
--cc=jgross@suse.com \
--cc=jikos@kernel.org \
--cc=kai.vehmanen@linux.intel.com \
--cc=kevin.tian@intel.com \
--cc=kuba@kernel.org \
--cc=kvalo@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=leitao@debian.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=manishc@marvell.com \
--cc=mario.limonciello@amd.com \
--cc=marmarek@invisiblethingslab.com \
--cc=netdev@vger.kernel.org \
--cc=nichen@iscas.ac.cn \
--cc=ntb@lists.linux.dev \
--cc=oakad@yahoo.com \
--cc=oleksandr_tyshchenko@epam.com \
--cc=pabeni@redhat.com \
--cc=perex@perex.cz \
--cc=peter.ujfalusi@linux.intel.com \
--cc=pierre-louis.bossart@linux.dev \
--cc=pstanner@redhat.com \
--cc=reinette.chatre@intel.com \
--cc=ricky_wu@realtek.com \
--cc=rmody@marvell.com \
--cc=rsalvaterra@gmail.com \
--cc=s.shtylyov@omp.ru \
--cc=sanju.mehta@amd.com \
--cc=skalluru@marvell.com \
--cc=smostafa@google.com \
--cc=sstabellini@kernel.org \
--cc=tglx@linutronix.de \
--cc=tiwai@suse.com \
--cc=viro@zeniv.linux.org.uk \
--cc=xen-devel@lists.xenproject.org \
--cc=yebin10@huawei.com \
--cc=yi.l.liu@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).