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>