]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
9p/xen: fix release of IRQ
authorAlex Zenla <alex@edera.dev>
Thu, 21 Nov 2024 22:51:00 +0000 (22:51 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Dec 2024 09:59:42 +0000 (10:59 +0100)
[ Upstream commit e43c608f40c065b30964f0a806348062991b802d ]

Kernel logs indicate an IRQ was double-freed.

Pass correct device ID during IRQ release.

Fixes: 71ebd71921e45 ("xen/9pfs: connect to the backend")
Signed-off-by: Alex Zenla <alex@edera.dev>
Signed-off-by: Alexander Merritt <alexander@edera.dev>
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Reviewed-by: Juergen Gross <jgross@suse.com>
Message-ID: <20241121225100.5736-1-alexander@edera.dev>
[Dominique: remove confusing variable reset to 0]
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/9p/trans_xen.c

index 77d7e6c3d7a2794a2f2c82b1ff00187e78d594d3..33d8814daa888f0a4659ee793a44bba08d2a10b5 100644 (file)
@@ -306,7 +306,7 @@ static void xen_9pfs_front_free(struct xen_9pfs_front_priv *priv)
                if (!priv->rings[i].intf)
                        break;
                if (priv->rings[i].irq > 0)
-                       unbind_from_irqhandler(priv->rings[i].irq, priv->dev);
+                       unbind_from_irqhandler(priv->rings[i].irq, ring);
                if (priv->rings[i].data.in) {
                        for (j = 0; j < (1 << XEN_9PFS_RING_ORDER); j++) {
                                grant_ref_t ref;