svn commit: r48590 - head/en_US.ISO8859-1/htdocs/news/status
Warren Block
wblock at FreeBSD.org
Tue Apr 12 22:10:53 UTC 2016
Author: wblock
Date: Tue Apr 12 22:10:52 2016
New Revision: 48590
URL: https://svnweb.freebsd.org/changeset/doc/48590
Log:
Add build and filemon reports from Bryan Drewery <bdrewery at FreeBSD.org>.
Modified:
head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml
Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml
==============================================================================
--- head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml Tue Apr 12 22:02:21 2016 (r48589)
+++ head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml Tue Apr 12 22:10:52 2016 (r48590)
@@ -934,4 +934,139 @@
</body>
<help></help>
</project>
+
+ <project cat='misc'>
+ <title>FreeBSD Build</title>
+
+ <contact>
+ <person>
+ <name>
+ <given>Bryan</given>
+ <common>Drewery</common>
+ </name>
+ <email>bdrewery at FreeBSD.org</email>
+ </person>
+ </contact>
+
+ <links></links>
+
+ <body>
+ <p>Build improvements for buildworld on <em>head</em> continue.
+ Some highlights include:</p>
+
+ <ul>
+ <li><em>WITH_FAST_DEPEND</em> was made default in r296668 and
+ later made the only option in r297434. The new depend code
+ avoids a 'make depend' tree walk and generates .depend files
+ during build as a side-effect of compiling. This is using
+ the -MF flags of the compiler. This speeds up the build by
+ 15-35%.</li>
+
+ <li><a href="http://bugs.freebsd.org/196193">PR 196193</a>:
+ <em>WITHOUT_CROSS_COMPILER</em> was fixed to properly use
+ <em>--sysroot</em> which allows the option to work in more
+ cases. It is still unsafe when major compiler upgrades
+ occur. Further work is planned to improve that still.</li>
+
+ <li><em>WITHOUT_TOOLCHAIN</em> now properly builds.</li>
+ </ul>
+ </body>
+
+ <sponsor>
+ EMC / Isilon Storage Division
+ </sponsor>
+
+ <help>
+ <task>
+ <p>Opportunistically skipping the bootstrap compiler phase of
+ buildworld.</p>
+ </task>
+
+ <task>
+ <p>Skipping the 'make obj' tree walk.</p>
+ </task>
+
+ <task>
+ <p>Enabling <em>WITH_META_MODE</em> in buildworld to provide a
+ reliable incremental build using filemon(4) and bmake's
+ .MAKE.MODE=meta. This should not be confused with
+ <em>WITH_DIRDEPS_BUILD</em> which previously was named
+ <em>WITH_META_MODE</em> and is a drastically different build
+ system presented at BSDCan 2014 by Simon Gerraty.</p>
+ </task>
+ </help>
+ </project>
+
+ <project cat='kern'>
+ <title>Filemon performance/stability improvements</title>
+
+ <contact>
+ <person>
+ <name>
+ <given>Bryan</given>
+ <common>Drewery</common>
+ </name>
+ <email>bdrewery at FreeBSD.org</email>
+ </person>
+
+ <person>
+ <name>
+ <given>Mateusz</given>
+ <common>Guzik</common>
+ </name>
+ <email>mjg at FreeBSD.org</email>
+ </person>
+ </contact>
+
+ <links></links>
+
+ <body>
+ <p>Filemon is a kernel module for tracing which files a command
+ creates, reads, writes or executes. It allows tracking build
+ dependencies in combination with bmake's meta mode. Bmake
+ will store filemon's output in a .meta file along with the
+ build command and later use this to check if any of the files
+ references are missing or modified, or if the build command
+ changes, to trigger a rebuild of the target. It provides the
+ same functionality as compiler -MF flags but for everything.
+ It will be critical for buildworld's <em>WITH_META_MODE</em>
+ (which is the normal buildworld but just using filemon) to
+ provide a reliable incremental build without even the need of
+ .depend files or compiler -MF flags. This will allow
+ <em>-DNO_CLEAN</em> to work all of the time.</p>
+
+ <p>Over this quarter filemon on head was improved for stability
+ and performance. It no longer causes every syscall it hooks
+ into to loop on processes looking for a matching filemon
+ struct. It now just attaches directly to the struct proc with
+ its own pointer. This improves performance by reducing lock
+ contention during a build using it. Much other work went into
+ improving error handling and other stability issues in the
+ module as well.</p>
+
+ <p>All of this work was done by Bryan Drewery, sponsored by EMC,
+ but much help and identification of bugs was provided by
+ Mateusz Guzik.</p>
+ </body>
+
+ <sponsor>
+ EMC / Isilon Storage Division
+ </sponsor>
+
+ <help>
+ <task>
+ <p>Improving credential handling</p>
+ </task>
+
+ <task>
+ <p>Improving EVENTHANDLER performance</p>
+ </task>
+
+ <task>
+ <p>Possibly providing a framework for syscallenter/syscallret
+ hooking to avoid the need to hook syscalls as Filemon
+ does.</p>
+ </task>
+ </help>
+ </project>
</report>
More information about the svn-doc-head
mailing list