On Wed, Aug 09, 2023 at 04:10:59PM +0200, Stephan Wurm wrote: > Am 09. Aug 15:53 hat hch geschrieben: > > Well, a scatterlist culd contain a highmem page, in which case sg_virt > > isn't going to cut it and you need to kmap. Is this a 32-bit system > > with highmem enabled? > I can confirm it is a 32-bit system with highmem enabled. Yes. So the code needs to stop using sg_virt to work on highmem setups and do the equivalent of scsi_kmap_atomic_sg. Best way forward is probably to move scsi_kmap_atomic_sg to lib/scatterlist.c (and also convert it to kmap_local instead of kmap_atomic while you're at it) and then use that in ubiblock