diff options
| author | riastradh <riastradh@NetBSD.org> | 2023-02-25 00:33:15 +0000 |
|---|---|---|
| committer | riastradh <riastradh@NetBSD.org> | 2023-02-25 00:33:15 +0000 |
| commit | 025d120ef381bcbc52abb75b032becc5887d5ccb (patch) | |
| tree | 56599fbf47bf721e6c0241ea51f2f94f5aae3e8a /sys | |
| parent | edef0694b5bdc04ecd0b92a6b8480bfefb7f9533 (diff) | |
xbdback(4): Membar audit.
After consuming request slots, must issue xen_wmb notifying the other
side that we've consumed them in RING_FINAL_CHECK_FOR_REQUESTS.
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/arch/xen/xen/xbdback_xenbus.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/arch/xen/xen/xbdback_xenbus.c b/sys/arch/xen/xen/xbdback_xenbus.c index 8f930078157..0858585000c 100644 --- a/sys/arch/xen/xen/xbdback_xenbus.c +++ b/sys/arch/xen/xen/xbdback_xenbus.c @@ -1,4 +1,4 @@ -/* $NetBSD: xbdback_xenbus.c,v 1.101 2022/09/01 15:33:23 bouyer Exp $ */ +/* $NetBSD: xbdback_xenbus.c,v 1.102 2023/02/25 00:33:15 riastradh Exp $ */ /* * Copyright (c) 2006 Manuel Bouyer. @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: xbdback_xenbus.c,v 1.101 2022/09/01 15:33:23 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: xbdback_xenbus.c,v 1.102 2023/02/25 00:33:15 riastradh Exp $"); #include <sys/buf.h> #include <sys/condvar.h> @@ -1065,6 +1065,7 @@ xbdback_co_main_done2(struct xbdback_instance *xbdi, void *obj) { int work_to_do; + xen_wmb(); RING_FINAL_CHECK_FOR_REQUESTS(&xbdi->xbdi_ring.ring_n, work_to_do); if (work_to_do) xbdi->xbdi_cont = xbdback_co_main; |
