[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-ris
From: |
Richard Henderson |
Subject: |
Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64 |
Date: |
Mon, 17 Jun 2019 16:52:44 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 |
On 6/16/19 12:19 PM, Joel Sing wrote:
> + /*
> + * Clear the load reservation, since an SC must fail if there is
> + * an SC to any address, in between an LR and SC pair.
> + */
> + tcg_gen_movi_tl(load_res, 0);
> +
> gen_set_label(l2);
This clear needs to be moved down below label l2.
Otherwise, with lr / sc / sc, the second sc could succeed in error.
FWIW, other targets have used -1 as the "invalid" load reservation, since the
architecture does not require address 0 to be unmapped. This should be quite
visible in M-mode with paging disabled and ram at offset 0. Often, other
targets require alignment for the lr/sc address, though I don't see that for
riscv.
r~
- [Qemu-riscv] [PATCH] atomic failures on qemu-system-riscv64, Joel Sing, 2019/06/16
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, no-reply, 2019/06/16
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64,
Richard Henderson <=
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Palmer Dabbelt, 2019/06/24
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Joel Sing, 2019/06/24
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Richard Henderson, 2019/06/25
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Palmer Dabbelt, 2019/06/26
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Richard Henderson, 2019/06/26
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Palmer Dabbelt, 2019/06/26
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Richard Henderson, 2019/06/26
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Palmer Dabbelt, 2019/06/26
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Richard Henderson, 2019/06/25
- Re: [Qemu-riscv] [Qemu-devel] [PATCH] atomic failures on qemu-system-riscv64, Palmer Dabbelt, 2019/06/26