On Sun, 26 May 2019 at 14:58, Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> wrote: > > On Sun, 26 May 2019 at 12:45, Antti Seppälä <a.seppala@xxxxxxxxx> wrote: > > > > On Sun, 26 May 2019 at 13:11, Stefan Wahren <wahrenst@xxxxxxx> wrote: > > > > > > Hi, > > > > > > i want to remind about an issue which was originally reported by Wayne > > > Piekarski [1]. I'm able to reproduce this oops with Mainline Linux 5.0.2 > > > on a Raspberry Pi 3B+ (arm64/defconfig) and according to Jan Kratochvil > > > [2] this applies to 5.1.0 and 5.2.0. > > > > > > The crash is reproducible since commit c55191e96ca ("arm64: mm: apply > > > r/o permissions of VM areas to its linear alias as well"), but the root > > > cause of the crash was introduced much earlier with commit 56406e017a88 > > > ("usb: dwc2: Fix DMA alignment to start at allocated boundary"). > > > > > > I tested successfully the following workarounds with the RPi 3B+: > > > > > > 1) Disable RODATA_FULL_DEFAULT_ENABLED > > > > > > 2) revert commit 56406e017a88 ("usb: dwc2: Fix DMA alignment to start at > > > allocated boundary") > > > > > > It would be nice if someone can come up with a proper solution. > > > > > > Regards > > > Stefan > > > > > > [1] - https://marc.info/?l=linux-usb&m=155440243702650&w=2 > > > [2] - https://bugzilla.kernel.org/show_bug.cgi?id=203149 > > > > > > > Hello. > > > > This is just a shot in the dark but have you tried to apply DMA cache > > alignment issue fix [1] as a third workaround alternative? > > If it helps the fix should be merged upstream. > > > Apologies, I should have looked at the patch first :-) It does exactly what I proposed - ensure that DMA related cache invalidation does not wipe the stored_xfer_buffer pointer. sorry for the noise