On Mon, 22 Jul 2024 at 17:51, Paolo Bonzini <pbonz...@redhat.com> wrote: > > On Mon, Jul 22, 2024 at 4:29 PM Philippe Mathieu-Daudé > <phi...@linaro.org> wrote: > > It seems this model could be simplified using .min_access_size = 8, > > letting the core memory layer handle the % 4 byte accesses (the > > read path is obvious, the write one a bit less). Nothing urgent, > > possibly a BitSizedTask. > > The memory access core is not able to do a read-modify-write > operation. You can get a smaller read from a bigger one or split a > large read/write into many small ones, but it cannot convert a small > write into a large one. Even splitting a large read/write into many > small ones is only possible if they don't have side effects.
IIRC it will convert a small write into a large one, but it does so by zero-extending the value and doing a single large write. (This is the behaviour you want for some devices.) thanks -- PMM