Messages in this thread | | | Subject | Re: [PATCH net-next 12/12] tools/virtio: fix smp_mb on x86 | From | Jason Wang <> | Date | Fri, 26 Jan 2018 11:56:14 +0800 |
| |
On 2018年01月26日 07:36, Michael S. Tsirkin wrote: > Offset 128 overlaps the last word of the redzone. > Use 132 which is always beyond that. > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com> > --- > tools/virtio/ringtest/main.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/virtio/ringtest/main.h b/tools/virtio/ringtest/main.h > index 593a328..301d59b 100644 > --- a/tools/virtio/ringtest/main.h > +++ b/tools/virtio/ringtest/main.h > @@ -111,7 +111,7 @@ static inline void busy_wait(void) > } > > #if defined(__x86_64__) || defined(__i386__) > -#define smp_mb() asm volatile("lock; addl $0,-128(%%rsp)" ::: "memory", "cc")
Just wonder did "rsp" work for __i386__ ?
Thanks
> +#define smp_mb() asm volatile("lock; addl $0,-132(%%rsp)" ::: "memory", "cc") > #else > /* > * Not using __ATOMIC_SEQ_CST since gcc docs say they are only synchronized
| |