From owner-svn-doc-head@freebsd.org Tue Apr 12 22:10:53 2016 Return-Path: Delivered-To: svn-doc-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B52EB0E130; Tue, 12 Apr 2016 22:10:53 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4990618A8; Tue, 12 Apr 2016 22:10:53 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u3CMAqSA063953; Tue, 12 Apr 2016 22:10:52 GMT (envelope-from wblock@FreeBSD.org) Received: (from wblock@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u3CMAq7a063952; Tue, 12 Apr 2016 22:10:52 GMT (envelope-from wblock@FreeBSD.org) Message-Id: <201604122210.u3CMAq7a063952@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wblock set sender to wblock@FreeBSD.org using -f From: Warren Block Date: Tue, 12 Apr 2016 22:10:52 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r48590 - head/en_US.ISO8859-1/htdocs/news/status X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-head@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: SVN commit messages for the doc tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Apr 2016 22:10:53 -0000 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 . 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 @@ + + + FreeBSD Build + + + + + Bryan + Drewery + + bdrewery@FreeBSD.org + + + + + + +

Build improvements for buildworld on head continue. + Some highlights include:

+ +
    +
  • WITH_FAST_DEPEND 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%.
  • + +
  • PR 196193: + WITHOUT_CROSS_COMPILER was fixed to properly use + --sysroot 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.
  • + +
  • WITHOUT_TOOLCHAIN now properly builds.
  • +
+ + + + EMC / Isilon Storage Division + + + + +

Opportunistically skipping the bootstrap compiler phase of + buildworld.

+
+ + +

Skipping the 'make obj' tree walk.

+
+ + +

Enabling WITH_META_MODE in buildworld to provide a + reliable incremental build using filemon(4) and bmake's + .MAKE.MODE=meta. This should not be confused with + WITH_DIRDEPS_BUILD which previously was named + WITH_META_MODE and is a drastically different build + system presented at BSDCan 2014 by Simon Gerraty.

+
+
+
+ + + Filemon performance/stability improvements + + + + + Bryan + Drewery + + bdrewery@FreeBSD.org + + + + + Mateusz + Guzik + + mjg@FreeBSD.org + + + + + + +

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 WITH_META_MODE + (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 + -DNO_CLEAN to work all of the time.

+ +

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.

+ +

All of this work was done by Bryan Drewery, sponsored by EMC, + but much help and identification of bugs was provided by + Mateusz Guzik.

+ + + + EMC / Isilon Storage Division + + + + +

Improving credential handling

+
+ + +

Improving EVENTHANDLER performance

+
+ + +

Possibly providing a framework for syscallenter/syscallret + hooking to avoid the need to hook syscalls as Filemon + does.

+
+
+