Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/xen/xen add forgotten mutex_exit() in detach, which...



details:   https://anonhg.NetBSD.org/src/rev/a263bc872745
branches:  trunk
changeset: 971126:a263bc872745
user:      jdolecek <jdolecek%NetBSD.org@localhost>
date:      Tue Apr 14 13:02:40 2020 +0000

description:
add forgotten mutex_exit() in detach, which caused panic in uvm_unmap1()
due to held spin lock

diffstat:

 sys/arch/xen/xen/xbd_xenbus.c |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (26 lines):

diff -r 3af14136fe30 -r a263bc872745 sys/arch/xen/xen/xbd_xenbus.c
--- a/sys/arch/xen/xen/xbd_xenbus.c     Tue Apr 14 12:47:44 2020 +0000
+++ b/sys/arch/xen/xen/xbd_xenbus.c     Tue Apr 14 13:02:40 2020 +0000
@@ -1,4 +1,4 @@
-/*      $NetBSD: xbd_xenbus.c,v 1.109 2020/04/14 09:27:28 jdolecek Exp $      */
+/*      $NetBSD: xbd_xenbus.c,v 1.110 2020/04/14 13:02:40 jdolecek Exp $      */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -50,7 +50,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xbd_xenbus.c,v 1.109 2020/04/14 09:27:28 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xbd_xenbus.c,v 1.110 2020/04/14 13:02:40 jdolecek Exp $");
 
 #include "opt_xen.h"
 
@@ -393,6 +393,7 @@
        mutex_enter(&sc->sc_lock);
        while (xengnt_status(sc->sc_ring_gntref))
                cv_timedwait(&sc->sc_detach_cv, &sc->sc_lock, hz/2);
+       mutex_exit(&sc->sc_lock);
 
        xengnt_revoke_access(sc->sc_ring_gntref);
        uvm_km_free(kernel_map, (vaddr_t)sc->sc_ring.sring,



Home | Main Index | Thread Index | Old Index