Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 2 Jan 2015 02:43:26 +0000 (UTC)
From:      Benjamin Kaduk <bjk@FreeBSD.org>
To:        doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org
Subject:   svn commit: r46138 - head/en_US.ISO8859-1/htdocs/news/status
Message-ID:  <201501020243.t022hQnP013940@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bjk
Date: Fri Jan  2 02:43:25 2015
New Revision: 46138
URL: https://svnweb.freebsd.org/changeset/doc/46138

Log:
  Add process management entry
  
  Approved by:	hrs (mentor, blanket)

Modified:
  head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml

Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml
==============================================================================
--- head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml	Fri Jan  2 02:29:34 2015	(r46137)
+++ head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml	Fri Jan  2 02:43:25 2015	(r46138)
@@ -130,4 +130,73 @@
     </help>
   </project>
 
+  <project cat='kern'>
+    <title>Process management</title>
+
+    <contact>
+      <person>
+	<name>
+	  <given>Konstantin</given>
+	  <common>Belousov</common>
+	</name>
+	<email>kib@FreeBSD.org</email>
+      </person>
+      <person>
+	<name>
+	  <given>Peter</given>
+	  <common>Holm</common>
+	</name>
+	<email>pho@FreeBSD.org</email>
+      </person>
+    </contact>
+
+    <body>
+      <p>There were several improvements made to the FreeBSD process
+	management last quarter.</p>
+
+      <p>Reaper. The facility to allow a process to reliably track the
+	running and exiting state of the whole subtree of the processes,
+	was added.  It is intended to improve tools like timeout(1) or
+	poudriere, by making it impossible for the runaway granchild to
+	escape the controlling process.  Feature was designed based on
+	similar facility in the DragonFlyBSD and Linux, with some
+	references to the Solaris contracts.  Committed to HEAD in
+	r275800.</p>
+
+      <p>Total stop.  Right now, the FreeBSD suspension code does not
+	ensures that the system, both from software and from hardware
+	view, is in the steady and consistent state.  One aspect is the
+	usermode process activity which is not stopped, continuing to
+	making requests to the hardware.  It is not realistic to expect
+	drivers to be able to correctly handle the calls after
+	SUSPEND_CHILD.</p>
+
+      <p>Together with Peter Holm, we developed a facility to stop
+	usermode threads at the safe points, where they are known to not
+	own and to not wait for kernel resources, in particular, not
+	waiting for device requests finishing.  It is based on the
+	existing single-threading code, but extending it to allow external
+	thread to put some process into stopped state.  Also, a facility
+	to sync filesystems before suspend was added, to ensure that
+	consistent metadata and as much as possilbe of the cached user
+	data are on stable storage, to minimize damage of failed
+	resume.</p>
+
+      <p>The code stressed some parts of the system and lead to
+	discovery of the unusual numbers of bugs in the different parts of
+	the system, including process management, buffer cache and syscall
+	handlers.  The bugs were fixed, fixes and the features commmitted
+	by a series culminating in r275745.</p>
+
+      <p>Process spinlock changes. During the work described above, it
+	was noted that process spinlock duties are significantly
+	overloaded (the same is true for the process lock).  The spinlock
+	was split into per-feature lock, see r275121.  Also, as result, it
+	was possible to eliminate recursion on it, r275372.</p>
+    </body>
+
+    <sponsor>The FreeBSD Foundation</sponsor>
+
+  </project>
+
 </report>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201501020243.t022hQnP013940>