Module Name: src Committed By: riastradh Date: Sat Feb 25 00:33:15 UTC 2023
Modified Files: src/sys/arch/xen/xen: xbdback_xenbus.c Log Message: 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. To generate a diff of this commit: cvs rdiff -u -r1.101 -r1.102 src/sys/arch/xen/xen/xbdback_xenbus.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/xen/xen/xbdback_xenbus.c diff -u src/sys/arch/xen/xen/xbdback_xenbus.c:1.101 src/sys/arch/xen/xen/xbdback_xenbus.c:1.102 --- src/sys/arch/xen/xen/xbdback_xenbus.c:1.101 Thu Sep 1 15:33:23 2022 +++ src/sys/arch/xen/xen/xbdback_xenbus.c Sat Feb 25 00:33:15 2023 @@ -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_ins { 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;