[PATCH v8 0/9] iommu/arm-smmu-v3: Adopt the crashed kernel's stream table for kdump

Nicolin Chen nicolinc at nvidia.com
Sun Jul 19 13:59:44 PDT 2026


On Sat, Jul 18, 2026 at 01:20:52PM -0300, Jason Gunthorpe wrote:
> On Fri, Jul 17, 2026 at 09:43:24PM +0000, Pranjal Shrivastava wrote:
> 
> > However, looking at your approach, I think I can slightly rework my 
> > preservation logic and instead of bloating the KHO ABI with physical
> > addresses, I could re-use your exact table-walking logic during probe
> > to parse the live L1/L2 structures directly from registers, identify 
> > the valid tables, and kho/dma_restore them. There could me small 
> > differences though, for example instead of memremap stuff, we'd have to
> > use the kho/dma_restore API (which can be done by passing some op like 
> > the data structure writers we have?) Similarly, maybe reserving ASID/VMID 
> > can be potentially re-used as well..
> 
> I think this will be true for all the iommu drivers as they pretty
> much all have this same kind of kdumpish adoption logic in one way or
> another.
> 
> > for KHO), I wanted to start a discussion to see if it makes sense to 
> > factor this common code out into an arm-smmu-v3-kexec.c (or similar)?
> 
> Yeah maybe so
> 
> It sounds great this helps the live update project as well!

I agree. I think the final layout can be:

# Kconfig
 config ARM_SMMU_V3_KEXEC
- 	def_bool CRASH_DUMP
+ 	def_bool CRASH_DUMP || IOMMU_LIVEUPDATE

# Makefile
 arm_smmu_v3-$(CONFIG_ARM_SMMU_V3_KEXEC) += arm-smmu-v3-kexec.o
 arm_smmu_v3-$(CONFIG_CRASH_DUMP) += arm-smmu-v3-kdump.o
+arm_smmu_v3-$(CONFIG_IOMMU_LIVEUPDATE) += arm-smmu-v3-liveupdate.o

Nicolin



More information about the linux-arm-kernel mailing list