<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/usr.bin/lockf, branch releng/6.4</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=releng%2F6.4</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=releng%2F6.4'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2008-09-25T14:27:00Z</updated>
<entry>
<title>MFC:</title>
<updated>2008-09-25T14:27:00Z</updated>
<author>
<name>David Malone</name>
<email>dwmalone@FreeBSD.org</email>
</author>
<published>2008-09-25T14:27:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=a4bc5f0916a89b4f244f9a9d39d8eadf39123832'/>
<id>urn:sha1:a4bc5f0916a89b4f244f9a9d39d8eadf39123832</id>
<content type='text'>
Lockf was exiting with status 1 if the command did not exit normally.
This is easy to confuse with the actual exit status of the program.
Instead exit with EX_SOFTWARE if the command doesn't exit normally.

Approved by:	re (kib)
</content>
</entry>
<entry>
<title>MFC lockf.c revision 1.17</title>
<updated>2007-11-03T15:31:38Z</updated>
<author>
<name>Christian S.J. Peron</name>
<email>csjp@FreeBSD.org</email>
</author>
<published>2007-11-03T15:31:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=d36303bc90dd6f402ed32dff5c23f61f2325d519'/>
<id>urn:sha1:d36303bc90dd6f402ed32dff5c23f61f2325d519</id>
<content type='text'>
MFC lockf.1 revision 1.19
</content>
</entry>
<entry>
<title>Sync with head:</title>
<updated>2005-11-12T21:00:00Z</updated>
<author>
<name>Christian S.J. Peron</name>
<email>csjp@FreeBSD.org</email>
</author>
<published>2005-11-12T21:00:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3231f6fc1028a716adcce05cd04200062cde4dcc'/>
<id>urn:sha1:3231f6fc1028a716adcce05cd04200062cde4dcc</id>
<content type='text'>
-style(9) nits

MFC Log:
  Fix long standing race condition associated with how lockf uses open(2)
  for mutual exclusion:

  A brief description of the problem:

          1) Proc A picks up non-blocking lock on file X
          2) Proc B attempts to pickup lock, fails then waits
          3) Proc C attempts to pickup lock, fails then waits
          4) Proc A releases lock
          5) Proc B acquires lock, release it to pickup a non-blocking version
          6) Proc C acquires lock, release it to pickup a non-blocking version
          7) Both process B and C race each other to pickup lock again

  This occurs mainly because the processes do not keep the lock after they have
  been waiting on it. They drop it, attempt to re-acquire it. (They use the wait
  to notify when the lock has become available then race to pick it up). This
  results in additional CPU utilization during the race, and can also result
  in processes picking locks up out of order.

  This change attempts to correct this problem by eliminating the test/acquire
  race and having the operating system handle it.
</content>
</entry>
<entry>
<title>MFC spelling fixes of several manpages.</title>
<updated>2005-08-18T15:01:27Z</updated>
<author>
<name>Giorgos Keramidas</name>
<email>keramida@FreeBSD.org</email>
</author>
<published>2005-08-18T15:01:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=0dbc56408b7569141c93167f589bdeb8ce919e33'/>
<id>urn:sha1:0dbc56408b7569141c93167f589bdeb8ce919e33</id>
<content type='text'>
Approved by:	re (kensmith)

The merged revisions/files are:

Revision  Path
1.10      src/lib/libarchive/archive_entry.3
1.21      src/lib/libarchive/archive_read.3
1.8       src/lib/libautofs/libautofs.3
1.10      src/lib/libc/net/inet6_rth_space.3
1.8       src/lib/libc/posix1e/acl_get_entry.3
1.15      src/lib/libc/posix1e/mac.3
1.7       src/lib/libc/posix1e/mac_prepare.3
1.37      src/lib/libc/stdtime/strftime.3
1.16      src/lib/libc/sys/kse.2
1.8       src/lib/libc/sys/uuidgen.2
1.4       src/share/man/man4/man4.i386/acpi_ibm.4
1.6       src/share/man/man4/man4.i386/acpi_panasonic.4
1.40      src/share/man/man4/man4.i386/ep.4
1.6       src/share/man/man4/man4.i386/pbio.4
1.5       src/share/man/man4/man4.i386/snc.4
1.2       src/share/man/man4/man4.sparc64/openprom.4
1.4       src/share/man/man4/man4.sparc64/snd_audiocs.4
1.11      src/share/man/man4/witness.4
1.3       src/share/man/man5/devfs.conf.5
1.51      src/share/man/man9/ifnet.9
1.7       src/share/man/man9/printf.9
1.12      src/usr.bin/file2c/file2c.1
1.27      src/usr.bin/indent/indent.1
1.17      src/usr.bin/lockf/lockf.1
1.90      src/usr.bin/make/make.1
1.45      src/usr.bin/systat/systat.1
1.19      src/usr.bin/truss/truss.1
1.33      src/usr.bin/xinstall/install.1
1.11      src/usr.sbin/bluetooth/rfcomm_pppd/rfcomm_pppd.8
1.4       src/usr.sbin/bluetooth/sdpd/sdpd.8
1.9       src/usr.sbin/bsnmpd/modules/snmp_netgraph/snmp_netgraph.3
1.36      src/usr.sbin/i4b/isdnd/isdnd.rc.5
1.53      src/usr.sbin/mtree/mtree.8
1.8       src/usr.sbin/ndiscvt/ndiscvt.8
1.13      src/usr.sbin/ntp/doc/ntpdc.8
1.26      src/usr.sbin/pppd/pppd.8
1.40      src/usr.sbin/syslogd/syslog.conf.5
1.5       src/usr.sbin/wpa/wpa_supplicant/wpa_supplicant.conf.5
</content>
</entry>
<entry>
<title>Markup and wording fixes.</title>
<updated>2005-06-14T11:50:53Z</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@FreeBSD.org</email>
</author>
<published>2005-06-14T11:50:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=39c59153e929e3e663fe0efd645faa06f6c8b48e'/>
<id>urn:sha1:39c59153e929e3e663fe0efd645faa06f6c8b48e</id>
<content type='text'>
Approved by:	re (blanket)
</content>
</entry>
<entry>
<title>Document a couple of gotchas.</title>
<updated>2005-05-26T22:30:12Z</updated>
<author>
<name>Eivind Eklund</name>
<email>eivind@FreeBSD.org</email>
</author>
<published>2005-05-26T22:30:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=f2839e75f665bec6645f609d854df4f1b3e7170b'/>
<id>urn:sha1:f2839e75f665bec6645f609d854df4f1b3e7170b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Added the EXIT STATUS section where appropriate.</title>
<updated>2005-01-17T07:44:44Z</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@FreeBSD.org</email>
</author>
<published>2005-01-17T07:44:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=a866e170777b42fd7921eadd6e7e664f3a031d60'/>
<id>urn:sha1:a866e170777b42fd7921eadd6e7e664f3a031d60</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use warn() instead of perror().</title>
<updated>2004-07-15T04:51:21Z</updated>
<author>
<name>Tim J. Robbins</name>
<email>tjr@FreeBSD.org</email>
</author>
<published>2004-07-15T04:51:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=208f2fd1ed5a88a11413c49834d2c37c289f9c7e'/>
<id>urn:sha1:208f2fd1ed5a88a11413c49834d2c37c289f9c7e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Mechanically kill hard sentence breaks.</title>
<updated>2004-07-02T22:22:35Z</updated>
<author>
<name>Ruslan Ermilov</name>
<email>ru@FreeBSD.org</email>
</author>
<published>2004-07-02T22:22:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=6a3e8b0adc8c622ae61275a94d5d869980a68069'/>
<id>urn:sha1:6a3e8b0adc8c622ae61275a94d5d869980a68069</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Consistently use FBSDID</title>
<updated>2002-06-30T05:25:07Z</updated>
<author>
<name>David E. O'Brien</name>
<email>obrien@FreeBSD.org</email>
</author>
<published>2002-06-30T05:25:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e026a48c34d396fe7d0e382673a69bc047c0bfca'/>
<id>urn:sha1:e026a48c34d396fe7d0e382673a69bc047c0bfca</id>
<content type='text'>
</content>
</entry>
</feed>
