* Re: Patch "platform-msi: Prepare for real per device domains" has been added to the 6.6-stable tree [not found] <20241211183908.3808070-1-sashal@kernel.org> @ 2024-12-11 19:08 ` Thomas Gleixner 2024-12-11 19:09 ` [PATCH 6.6.y] scsi: ufs: qcom: Only free platform MSIs when ESI is enabled Thomas Gleixner 1 sibling, 0 replies; 3+ messages in thread From: Thomas Gleixner @ 2024-12-11 19:08 UTC (permalink / raw) To: stable, stable-commits; +Cc: Greg Kroah-Hartman, Rafael J. Wysocki On Wed, Dec 11 2024 at 13:39, Sasha Levin wrote: > platform-msi: Prepare for real per device domains > > [ Upstream commit c88f9110bfbca5975a8dee4c9792ba12684c7bca ] > > Provide functions to create and remove per device MSI domains which replace > the platform-MSI domains. The new model is that each of the devices which > utilize platform-MSI gets now its private MSI domain which is "customized" > in size and with a device specific function to write the MSI message into > the device. > > This is the same functionality as platform-MSI but it avoids all the down > sides of platform MSI, i.e. the extra ID book keeping, the special data > structure in the msi descriptor. Further the domains are only created when > the devices are really in use, so the burden is on the usage and not on the > infrastructure. > > Fill in the domain template and provide two functions to init/allocate and > remove a per device MSI domain. > > Until all users and parent domain providers are converted, the init/alloc > function invokes the original platform-MSI code when the irqdomain which is > associated to the device does not provide MSI parent functionality yet. > > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > Signed-off-by: Anup Patel <apatel@ventanamicro.com> > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > Link: https://lore.kernel.org/r/20240127161753.114685-6-apatel@ventanamicro.com > Stable-dep-of: 64506b3d23a3 ("scsi: ufs: qcom: Only free platform MSIs when ESI is enabled") See my other reply. Please don't backport the world if it's not really required. I'll send a backport of 64506b3d23a3 in a minute. Thanks, tglx ^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 6.6.y] scsi: ufs: qcom: Only free platform MSIs when ESI is enabled [not found] <20241211183908.3808070-1-sashal@kernel.org> 2024-12-11 19:08 ` Patch "platform-msi: Prepare for real per device domains" has been added to the 6.6-stable tree Thomas Gleixner @ 2024-12-11 19:09 ` Thomas Gleixner 2024-12-12 6:57 ` Greg Kroah-Hartman 1 sibling, 1 reply; 3+ messages in thread From: Thomas Gleixner @ 2024-12-11 19:09 UTC (permalink / raw) To: stable, stable-commits Cc: Greg Kroah-Hartman, Rafael J. Wysocki, Manivannan Sadhasivam From: Manivannan Sadhasivam <mani@kernel.org> commit 64506b3d23a337e98a74b18dcb10c8619365f2bd upstream. Otherwise, it will result in a NULL pointer dereference as below: Unable to handle kernel NULL pointer dereference at virtual address 0000000000000008 Call trace: mutex_lock+0xc/0x54 platform_device_msi_free_irqs_all+0x14/0x20 ufs_qcom_remove+0x34/0x48 [ufs_qcom] platform_remove+0x28/0x44 device_remove+0x4c/0x80 device_release_driver_internal+0xd8/0x178 driver_detach+0x50/0x9c bus_remove_driver+0x6c/0xbc driver_unregister+0x30/0x60 platform_driver_unregister+0x14/0x20 ufs_qcom_pltform_exit+0x18/0xb94 [ufs_qcom] __arm64_sys_delete_module+0x180/0x260 invoke_syscall+0x44/0x100 el0_svc_common.constprop.0+0xc0/0xe0 do_el0_svc+0x1c/0x28 el0_svc+0x34/0xdc el0t_64_sync_handler+0xc0/0xc4 el0t_64_sync+0x190/0x194 Cc: stable@vger.kernel.org # 6.3 Fixes: 519b6274a777 ("scsi: ufs: qcom: Add MCQ ESI config vendor specific ops") Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Link: https://lore.kernel.org/r/20241111-ufs_bug_fix-v1-2-45ad8b62f02e@linaro.org Reviewed-by: Bean Huo <beanhuo@micron.com> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> --- drivers/ufs/host/ufs-qcom.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- a/drivers/ufs/host/ufs-qcom.c +++ b/drivers/ufs/host/ufs-qcom.c @@ -1926,7 +1926,8 @@ static int ufs_qcom_remove(struct platfo pm_runtime_get_sync(&(pdev)->dev); ufshcd_remove(hba); - platform_msi_domain_free_irqs(hba->dev); + if (host->esi_enabled) + platform_msi_domain_free_irqs(hba->dev); return 0; } ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 6.6.y] scsi: ufs: qcom: Only free platform MSIs when ESI is enabled 2024-12-11 19:09 ` [PATCH 6.6.y] scsi: ufs: qcom: Only free platform MSIs when ESI is enabled Thomas Gleixner @ 2024-12-12 6:57 ` Greg Kroah-Hartman 0 siblings, 0 replies; 3+ messages in thread From: Greg Kroah-Hartman @ 2024-12-12 6:57 UTC (permalink / raw) To: Thomas Gleixner Cc: stable, stable-commits, Rafael J. Wysocki, Manivannan Sadhasivam On Wed, Dec 11, 2024 at 08:09:51PM +0100, Thomas Gleixner wrote: > > From: Manivannan Sadhasivam <mani@kernel.org> > > commit 64506b3d23a337e98a74b18dcb10c8619365f2bd upstream. > > Otherwise, it will result in a NULL pointer dereference as below: > > Unable to handle kernel NULL pointer dereference at virtual address 0000000000000008 > Call trace: > mutex_lock+0xc/0x54 > platform_device_msi_free_irqs_all+0x14/0x20 > ufs_qcom_remove+0x34/0x48 [ufs_qcom] > platform_remove+0x28/0x44 > device_remove+0x4c/0x80 > device_release_driver_internal+0xd8/0x178 > driver_detach+0x50/0x9c > bus_remove_driver+0x6c/0xbc > driver_unregister+0x30/0x60 > platform_driver_unregister+0x14/0x20 > ufs_qcom_pltform_exit+0x18/0xb94 [ufs_qcom] > __arm64_sys_delete_module+0x180/0x260 > invoke_syscall+0x44/0x100 > el0_svc_common.constprop.0+0xc0/0xe0 > do_el0_svc+0x1c/0x28 > el0_svc+0x34/0xdc > el0t_64_sync_handler+0xc0/0xc4 > el0t_64_sync+0x190/0x194 > > Cc: stable@vger.kernel.org # 6.3 > Fixes: 519b6274a777 ("scsi: ufs: qcom: Add MCQ ESI config vendor specific ops") > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> > Link: https://lore.kernel.org/r/20241111-ufs_bug_fix-v1-2-45ad8b62f02e@linaro.org > Reviewed-by: Bean Huo <beanhuo@micron.com> > Reviewed-by: Bart Van Assche <bvanassche@acm.org> > Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > --- > drivers/ufs/host/ufs-qcom.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) Thanks for this, I've dropped the other backports and just taken this one instead. greg k-h ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-12-12 6:57 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20241211183908.3808070-1-sashal@kernel.org>
2024-12-11 19:08 ` Patch "platform-msi: Prepare for real per device domains" has been added to the 6.6-stable tree Thomas Gleixner
2024-12-11 19:09 ` [PATCH 6.6.y] scsi: ufs: qcom: Only free platform MSIs when ESI is enabled Thomas Gleixner
2024-12-12 6:57 ` Greg Kroah-Hartman
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox