parisc: Add memory barrier to asm pdc and sync instructions
Add compiler memory barriers to ensure the compiler doesn't reorder memory
operations around these instructions.
Cc: stable@vger.kernel.org # v4.20+
Fixes: 3847dab774
("parisc: Add alternative coding infrastructure")
Signed-off-by: Helge Deller <deller@gmx.de>
This commit is contained in:
parent
44224bdb99
commit
2d94a832e2
|
@ -56,10 +56,10 @@ void parisc_setup_cache_timing(void);
|
|||
#define asm_io_fdc(addr) asm volatile("fdc %%r0(%0)" \
|
||||
ALTERNATIVE(ALT_COND_NO_DCACHE, INSN_NOP) \
|
||||
ALTERNATIVE(ALT_COND_NO_IOC_FDC, INSN_NOP) \
|
||||
: : "r" (addr))
|
||||
: : "r" (addr) : "memory")
|
||||
#define asm_io_sync() asm volatile("sync" \
|
||||
ALTERNATIVE(ALT_COND_NO_DCACHE, INSN_NOP) \
|
||||
ALTERNATIVE(ALT_COND_NO_IOC_FDC, INSN_NOP) :: )
|
||||
ALTERNATIVE(ALT_COND_NO_IOC_FDC, INSN_NOP) :::"memory")
|
||||
|
||||
#endif /* ! __ASSEMBLY__ */
|
||||
|
||||
|
|
Loading…
Reference in New Issue