# Re: \[PATCH for-6.2 12/43\] target/sh4: Implement do\_unaligned\_access for user-only

- From: Richard Henderson \<richard.henderson@linaro.org\>
- Date: 2021-07-30 00:02:27 
- List: linux-sh
- Page: https://ratatoskr.run/linux-sh/2021/07/14091007
- Thread: https://ratatoskr.run/qemu-devel/2021/07/14090710/t/2.md

```text
On 7/29/21 3:52 AM, Peter Maydell wrote:
> sh4 kernel default for unaligned accesses seems to be "warn and fixup",
> not SIGBUS, unless the user changes that by writing to /proc/cpu/alignment
> or the process changes it via prctl().

We will still need this for load-locked/store-conditional (MOVLI/MOVCO).

It appears that the sh4 kernel fails to decode these properly, and will do something ugly, like interpreting MOVLI as a multiple-store instead of a load.

There are also other instructions that the kernel does not attempt to handle, such as MAC.  I suppose we could begin with turning off TARGET_ALIGNED_ONLY for sh4-linux-user, then re-enabling MO_ALIGN for the atomics (at least).


r~
```
