* [PATCH v2] octeontx2-af: Fix PF driver crash with kexec kernel booting
@ 2026-02-03 5:07 Anshumali Gaur
2026-02-05 21:00 ` patchwork-bot+netdevbpf
0 siblings, 1 reply; 2+ messages in thread
From: Anshumali Gaur @ 2026-02-03 5:07 UTC (permalink / raw)
To: netdev, linux-kernel
Cc: Anshumali Gaur, Jacob Keller, Sunil Goutham, Linu Cherian,
Geetha sowjanya, Jerin Jacob, hariprasad, Subbaraya Sundeep,
Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni
During a kexec reboot the hardware is not power-cycled, so AF state from
the old kernel can persist into the new kernel. When AF and PF drivers
are built as modules, the PF driver may probe before AF reinitializes
the hardware.
The PF driver treats the RVUM block revision as an indication that AF
initialization is complete. If this value is left uncleared at shutdown,
PF may incorrectly assume AF is ready and access stale hardware state,
leading to a crash.
Clear the RVUM block revision during AF shutdown to avoid PF
mis-detecting AF readiness after kexec.
Fixes: 54494aa5d1e6 ("octeontx2-af: Add Marvell OcteonTX2 RVU AF driver")
Signed-off-by: Anshumali Gaur <agaur@marvell.com>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> (1)
(1) https://lore.kernel.org/all/89011ab8-0ec2-431d-8842-f3738870db36@intel.com/
---
v2:
- Update commit message
- Add Reviewed-by
drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu.c b/drivers/net/ethernet/marvell/octeontx2/af/rvu.c
index 747fbdf2a908..8530df8b3fda 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/rvu.c
+++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu.c
@@ -3632,11 +3632,22 @@ static void rvu_remove(struct pci_dev *pdev)
devm_kfree(&pdev->dev, rvu);
}
+static void rvu_shutdown(struct pci_dev *pdev)
+{
+ struct rvu *rvu = pci_get_drvdata(pdev);
+
+ if (!rvu)
+ return;
+
+ rvu_clear_rvum_blk_revid(rvu);
+}
+
static struct pci_driver rvu_driver = {
.name = DRV_NAME,
.id_table = rvu_id_table,
.probe = rvu_probe,
.remove = rvu_remove,
+ .shutdown = rvu_shutdown,
};
static int __init rvu_init_module(void)
--
2.25.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] octeontx2-af: Fix PF driver crash with kexec kernel booting
2026-02-03 5:07 [PATCH v2] octeontx2-af: Fix PF driver crash with kexec kernel booting Anshumali Gaur
@ 2026-02-05 21:00 ` patchwork-bot+netdevbpf
0 siblings, 0 replies; 2+ messages in thread
From: patchwork-bot+netdevbpf @ 2026-02-05 21:00 UTC (permalink / raw)
To: Anshumali Gaur
Cc: netdev, linux-kernel, jacob.e.keller, sgoutham, lcherian, gakula,
jerinj, hkelam, sbhatta, andrew+netdev, davem, edumazet, kuba,
pabeni
Hello:
This patch was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Tue, 3 Feb 2026 10:37:01 +0530 you wrote:
> During a kexec reboot the hardware is not power-cycled, so AF state from
> the old kernel can persist into the new kernel. When AF and PF drivers
> are built as modules, the PF driver may probe before AF reinitializes
> the hardware.
>
> The PF driver treats the RVUM block revision as an indication that AF
> initialization is complete. If this value is left uncleared at shutdown,
> PF may incorrectly assume AF is ready and access stale hardware state,
> leading to a crash.
>
> [...]
Here is the summary with links:
- [v2] octeontx2-af: Fix PF driver crash with kexec kernel booting
https://git.kernel.org/netdev/net/c/2d2d574309e3
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-02-05 21:00 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-03 5:07 [PATCH v2] octeontx2-af: Fix PF driver crash with kexec kernel booting Anshumali Gaur
2026-02-05 21:00 ` patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox