Author: avg
Date: Mon Aug 19 11:18:36 2019
New Revision: 351213
URL: https://svnweb.freebsd.org/changeset/base/351213

Log:
  assert that td_lk_slocks is not leaked upon return from kernel
  
  This is similar to checks for td_sx_slocks and td_rw_rlocks.
  Although td_lk_slocks is an implementation detail, it still makes sense
  to validate it.
  
  MFC after:    1 week
  Sponsored by: Panzura

Modified:
  head/sys/kern/subr_trap.c

Modified: head/sys/kern/subr_trap.c
==============================================================================
--- head/sys/kern/subr_trap.c   Mon Aug 19 10:48:27 2019        (r351212)
+++ head/sys/kern/subr_trap.c   Mon Aug 19 11:18:36 2019        (r351213)
@@ -176,6 +176,9 @@ userret(struct thread *td, struct trapframe *frame)
        KASSERT(td->td_sx_slocks == 0,
            ("userret: Returning with %d sx locks held in shared mode",
            td->td_sx_slocks));
+       KASSERT(td->td_lk_slocks == 0,
+           ("userret: Returning with %d lockmanager locks held in shared mode",
+           td->td_lk_slocks));
        KASSERT((td->td_pflags & TDP_NOFAULTING) == 0,
            ("userret: Returning with pagefaults disabled"));
        KASSERT(td->td_no_sleeping == 0,
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to