<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/lib/libprocstat, branch release/11.0.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F11.0.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F11.0.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2016-02-04T21:16:35Z</updated>
<entry>
<title>First pass through library packaging.</title>
<updated>2016-02-04T21:16:35Z</updated>
<author>
<name>Glen Barber</name>
<email>gjb@FreeBSD.org</email>
</author>
<published>2016-02-04T21:16:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=a70cba95822f662d3f9da5119b6a0c433e8f70af'/>
<id>urn:sha1:a70cba95822f662d3f9da5119b6a0c433e8f70af</id>
<content type='text'>
Sponsored by:	The FreeBSD Foundation
</content>
</entry>
<entry>
<title>META MODE: Prefer INSTALL=tools/install.sh to lessen the need for xinstall.host.</title>
<updated>2015-11-25T19:10:28Z</updated>
<author>
<name>Bryan Drewery</name>
<email>bdrewery@FreeBSD.org</email>
</author>
<published>2015-11-25T19:10:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=7b3ea376a27ada7a61eb0c3102f13040fb8c16cb'/>
<id>urn:sha1:7b3ea376a27ada7a61eb0c3102f13040fb8c16cb</id>
<content type='text'>
This both avoids some dependencies on xinstall.host and allows
bootstrapping on older releases to work due to lack of at least 'install -l'
support.

Sponsored by:	EMC / Isilon Storage Division
</content>
</entry>
<entry>
<title>Fix core corruption caused by race in note_procstat_vmmap</title>
<updated>2015-10-06T18:07:00Z</updated>
<author>
<name>Conrad Meyer</name>
<email>cem@FreeBSD.org</email>
</author>
<published>2015-10-06T18:07:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e6b95927f39018d10fcfc39f8236525c72b84d06'/>
<id>urn:sha1:e6b95927f39018d10fcfc39f8236525c72b84d06</id>
<content type='text'>
This fix is spiritually similar to r287442 and was discovered thanks to
the KASSERT added in that revision.

NT_PROCSTAT_VMMAP output length, when packing kinfo structs, is tied to
the length of filenames corresponding to vnodes in the process' vm map
via vn_fullpath.  As vnodes may move during coredump, this is racy.

We do not remove the race, only prevent it from causing coredump
corruption.

- Add a sysctl, kern.coredump_pack_vmmapinfo, to allow users to disable
  kinfo packing for PROCSTAT_VMMAP notes.  This avoids VMMAP corruption
  and truncation, even if names change, at the cost of up to PATH_MAX
  bytes per mapped object.  The new sysctl is documented in core.5.

- Fix note_procstat_vmmap to self-limit in the second pass.  This
  addresses corruption, at the cost of sometimes producing a truncated
  result.

- Fix PROCSTAT_VMMAP consumers libutil (and libprocstat, via copy-paste)
  to grok the new zero padding.

Reported by:	pho (https://people.freebsd.org/~pho/stress/log/datamove4-2.txt)
Relnotes:	yes
Sponsored by:	EMC / Isilon Storage Division
Differential Revision:	https://reviews.freebsd.org/D3824
</content>
</entry>
<entry>
<title>Detect badly behaved coredump note helpers</title>
<updated>2015-09-03T20:32:10Z</updated>
<author>
<name>Conrad Meyer</name>
<email>cem@FreeBSD.org</email>
</author>
<published>2015-09-03T20:32:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=14bdbaf2e40a827e84f6c2fe27b1f8229767f03c'/>
<id>urn:sha1:14bdbaf2e40a827e84f6c2fe27b1f8229767f03c</id>
<content type='text'>
Coredump notes depend on being able to invoke dump routines twice; once
in a dry-run mode to get the size of the note, and another to actually
emit the note to the corefile.

When a note helper emits a different length section the second time
around than the length it requested the first time, the kernel produces
a corrupt coredump.

NT_PROCSTAT_FILES output length, when packing kinfo structs, is tied to
the length of filenames corresponding to vnodes in the process' fd table
via vn_fullpath.  As vnodes may move around during dump, this is racy.

So:

 - Detect badly behaved notes in putnote() and pad underfilled notes.

 - Add a fail point, debug.fail_point.fill_kinfo_vnode__random_path to
   exercise the NT_PROCSTAT_FILES corruption.  It simply picks random
   lengths to expand or truncate paths to in fo_fill_kinfo_vnode().

 - Add a sysctl, kern.coredump_pack_fileinfo, to allow users to
   disable kinfo packing for PROCSTAT_FILES notes.  This should avoid
   both FILES note corruption and truncation, even if filenames change,
   at the cost of about 1 kiB in padding bloat per open fd.  Document
   the new sysctl in core.5.

 - Fix note_procstat_files to self-limit in the 2nd pass.  Since
   sometimes this will result in a short write, pad up to our advertised
   size.  This addresses note corruption, at the risk of sometimes
   truncating the last several fd info entries.

 - Fix NT_PROCSTAT_FILES consumers libutil and libprocstat to grok the
   zero padding.

With suggestions from:	bjk, jhb, kib, wblock
Approved by:	markj (mentor)
Relnotes:	yes
Sponsored by:	EMC / Isilon Storage Division
Differential Revision:	https://reviews.freebsd.org/D3548
</content>
</entry>
<entry>
<title>Add META_MODE support.</title>
<updated>2015-06-13T19:20:56Z</updated>
<author>
<name>Simon J. Gerraty</name>
<email>sjg@FreeBSD.org</email>
</author>
<published>2015-06-13T19:20:56Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ccfb965433c67f3bda935a3cdf334be2e3c4348d'/>
<id>urn:sha1:ccfb965433c67f3bda935a3cdf334be2e3c4348d</id>
<content type='text'>
Off by default, build behaves normally.
WITH_META_MODE we get auto objdir creation, the ability to
start build from anywhere in the tree.

Still need to add real targets under targets/ to build packages.

Differential Revision:       D2796
Reviewed by: brooks imp
</content>
</entry>
<entry>
<title>dirdeps.mk now sets DEP_RELDIR</title>
<updated>2015-06-08T23:35:17Z</updated>
<author>
<name>Simon J. Gerraty</name>
<email>sjg@FreeBSD.org</email>
</author>
<published>2015-06-08T23:35:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=44d314f704764f0247a540648a4b4fc3e8012133'/>
<id>urn:sha1:44d314f704764f0247a540648a4b4fc3e8012133</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove unused variable spotted by clang.</title>
<updated>2015-06-01T06:05:53Z</updated>
<author>
<name>Marcelo Araujo</name>
<email>araujo@FreeBSD.org</email>
</author>
<published>2015-06-01T06:05:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=a770b4d8ae6633c99e5ab0638ea2d04f028e8d26'/>
<id>urn:sha1:a770b4d8ae6633c99e5ab0638ea2d04f028e8d26</id>
<content type='text'>
Differential Revision:	D2685
Reviewed by:		rodrigc, stas
</content>
</entry>
<entry>
<title>Merge sync of head</title>
<updated>2015-05-27T01:19:58Z</updated>
<author>
<name>Simon J. Gerraty</name>
<email>sjg@FreeBSD.org</email>
</author>
<published>2015-05-27T01:19:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=98e0ffaefb0f241cda3a72395d3be04192ae0d47'/>
<id>urn:sha1:98e0ffaefb0f241cda3a72395d3be04192ae0d47</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Create links to the libprocstat man pages for all of the libprocstat functions so they can be looked up by name</title>
<updated>2015-05-21T03:32:44Z</updated>
<author>
<name>Allan Jude</name>
<email>allanjude@FreeBSD.org</email>
</author>
<published>2015-05-21T03:32:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=04017fc7a4ca85f49b9c4c9419b7dd53500adb1d'/>
<id>urn:sha1:04017fc7a4ca85f49b9c4c9419b7dd53500adb1d</id>
<content type='text'>
Add a cross refrence to libprocstat in the procstat.1 man page

Differential Revision:	https://reviews.freebsd.org/D2578
Suggested by:	jmg
Reviewed by:	brueffer
Approved by:	wblock (mentor)
MFC after:	1 week
Sponsored by:	ScaleEngine Inc.
</content>
</entry>
<entry>
<title>Convert libraries to use LIBADD</title>
<updated>2014-11-25T11:07:26Z</updated>
<author>
<name>Baptiste Daroussin</name>
<email>bapt@FreeBSD.org</email>
</author>
<published>2014-11-25T11:07:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6b129086dcee14496517fae085b448e3edc69bc7'/>
<id>urn:sha1:6b129086dcee14496517fae085b448e3edc69bc7</id>
<content type='text'>
While here reduce a bit overlinking
</content>
</entry>
</feed>
