Author: kib
Date: Wed Aug 17 07:11:45 2016
New Revision: 304263
URL: https://svnweb.freebsd.org/changeset/base/304263

Log:
  MFC r303914:
  Re-schedule signals after kthread exits.

Modified:
  stable/11/sys/kern/kern_kthread.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/kern/kern_kthread.c
==============================================================================
--- stable/11/sys/kern/kern_kthread.c   Wed Aug 17 07:09:22 2016        
(r304262)
+++ stable/11/sys/kern/kern_kthread.c   Wed Aug 17 07:11:45 2016        
(r304263)
@@ -320,11 +320,13 @@ void
 kthread_exit(void)
 {
        struct proc *p;
+       struct thread *td;
 
-       p = curthread->td_proc;
+       td = curthread;
+       p = td->td_proc;
 
        /* A module may be waiting for us to exit. */
-       wakeup(curthread);
+       wakeup(td);
 
        /*
         * The last exiting thread in a kernel process must tear down
@@ -337,9 +339,10 @@ kthread_exit(void)
                rw_wunlock(&tidhash_lock);
                kproc_exit(0);
        }
-       LIST_REMOVE(curthread, td_hash);
+       LIST_REMOVE(td, td_hash);
        rw_wunlock(&tidhash_lock);
-       umtx_thread_exit(curthread);
+       umtx_thread_exit(td);
+       tdsigcleanup(td);
        PROC_SLOCK(p);
        thread_exit();
 }
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to