On Sun, Sep 4, 2022 at 10:11 AM Arnd Bergmann <arnd@xxxxxxxx> wrote: > On Sun, Sep 4, 2022, at 12:45 AM, Linus Walleij wrote: > > The parisc was using some readq/writeq accessors without special > > considerations as to what will happen on 32bit CPUs if you do > > this. Maybe we have been lucky that it "just worked" on 32bit > > due to the compiler behaviour, or the code paths were never > > executed. > > > > Fix the two offending code sites like this: > > > > arch/parisc/lib/iomap.c: > > > > - Put ifdefs around the 64bit accessors and make sure > > that ioread64, ioread64be, iowrite64 and iowrite64be > > are not available on 32bit builds. > > > > - Also fold in a bug fix where 64bit access was by > > mistake using 32bit writel() accessors rather > > than 64bit writeq(). > > > > drivers/parisc/sba_iommu.c: > > > > - Access any 64bit registers using _lo_hi-semantics by way > > of the readq and writeq operations provided by > > <linux/io-64-nonatomic-lo-hi.h> > > > > Cc: James E.J. Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> > > Cc: Helge Deller <deller@xxxxxx> > > Cc: linux-parisc@xxxxxxxxxxxxxxx > > Cc: linux-arch@xxxxxxxxxxxxxxx > > Cc: Arnd Bergmann <arnd@xxxxxxxx> > > Cc: John David Anglin <dave.anglin@xxxxxxxx> > > Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx> > > Reviewed-by: Arnd Bergmann <arnd@xxxxxxxx> Thanks Arnd, it seems quiet around parisc, maybe you could apply these two to the arch tree as well? Yours, Linus Walleij