Re: [PATCH 1/2 v4] parisc: Remove 64bit access on 32bit machines

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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>



[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux