svn commit: r341078 - stable/11/sys/kern

Mark Johnston markj at FreeBSD.org
Tue Nov 27 16:59:14 UTC 2018


Author: markj
Date: Tue Nov 27 16:59:12 2018
New Revision: 341078
URL: https://svnweb.freebsd.org/changeset/base/341078

Log:
  MFC r340897:
  Lock the knlist before releasing the in-flux state in knote_fork().
  
  PR:	228858

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

Modified: stable/11/sys/kern/kern_event.c
==============================================================================
--- stable/11/sys/kern/kern_event.c	Tue Nov 27 16:57:59 2018	(r341077)
+++ stable/11/sys/kern/kern_event.c	Tue Nov 27 16:59:12 2018	(r341078)
@@ -566,10 +566,10 @@ knote_fork(struct knlist *list, int pid)
 			kn->kn_fflags |= NOTE_TRACKERR;
 		if (kn->kn_fop->f_event(kn, NOTE_FORK))
 			KNOTE_ACTIVATE(kn, 0);
+		list->kl_lock(list->kl_lockarg);
 		KQ_LOCK(kq);
 		kn->kn_status &= ~KN_INFLUX;
 		KQ_UNLOCK_FLUX(kq);
-		list->kl_lock(list->kl_lockarg);
 	}
 	list->kl_unlock(list->kl_lockarg);
 }


More information about the svn-src-all mailing list