]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/log
FreeBSD/stable/8.git
11 years agoMFC r238501,r238514:
tuexen [Thu, 7 Mar 2013 23:48:29 +0000 (23:48 +0000)]
MFC r238501,r238514:

Changes which improve compilation if neither INET nor INET6 is defined.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247977 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238475:
tuexen [Thu, 7 Mar 2013 23:44:02 +0000 (23:44 +0000)]
MFC r238475:

#ifdef INET and INET6 consistently. This also fixes a bug, where
it was done wrong.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247974 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238458:
tuexen [Thu, 7 Mar 2013 23:41:57 +0000 (23:41 +0000)]
MFC r238458:

Provide the correct notification type (SCTP_SEND_FAILED_EVENT)
for unsent messages.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247972 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238455:
tuexen [Thu, 7 Mar 2013 23:39:59 +0000 (23:39 +0000)]
MFC r238455:

Use case for selecting the address family (as in other places).

git-svn-id: svn://svn.freebsd.org/base/stable/8@247971 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238454:
tuexen [Thu, 7 Mar 2013 23:37:53 +0000 (23:37 +0000)]
MFC r238454:
Bugfix: Send up a COMM UP notification for active 1-to-1 style sockets
        also in the case where the assoc comes up due to a remotely
        started handshake (collision case).

git-svn-id: svn://svn.freebsd.org/base/stable/8@247970 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238122:
tuexen [Thu, 7 Mar 2013 23:35:06 +0000 (23:35 +0000)]
MFC r238122:

Use consistent method to determine IPV4_OUTPUT/IPV6_OUTPUT.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247968 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238087:
tuexen [Thu, 7 Mar 2013 23:31:32 +0000 (23:31 +0000)]
MFC r238087:

Iniitialize a variable.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247967 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238003,r239091:
tuexen [Thu, 7 Mar 2013 23:28:08 +0000 (23:28 +0000)]
MFC r238003,r239091:

Move common code parts to sctp_common_input_processing().

git-svn-id: svn://svn.freebsd.org/base/stable/8@247966 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237715,r238294:
tuexen [Thu, 7 Mar 2013 23:23:25 +0000 (23:23 +0000)]
MFC r237715,r238294:

Pass the src and dst address of a received packet explicitly around.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247965 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235916:
tuexen [Thu, 7 Mar 2013 23:18:35 +0000 (23:18 +0000)]
MFC r235916:

Introduce in6_getscope() to allow more effective checksum
computations without the need to copy the address to clear the
scope.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247964 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238002:
tuexen [Thu, 7 Mar 2013 22:05:27 +0000 (22:05 +0000)]
MFC r238002:

Remove dead code (on FreeBSD) as suggested by glebius@.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247959 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237569:
tuexen [Thu, 7 Mar 2013 21:43:21 +0000 (21:43 +0000)]
MFC r237569:

Unify sctp_input() and sctp6_input().

git-svn-id: svn://svn.freebsd.org/base/stable/8@247956 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237565:
tuexen [Thu, 7 Mar 2013 21:41:02 +0000 (21:41 +0000)]
MFC r237565:

Whitespace cleanup.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247955 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237542:
tuexen [Thu, 7 Mar 2013 21:38:43 +0000 (21:38 +0000)]
MFC r237542:

Pass the packet length explicitly around.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247954 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237541:
tuexen [Thu, 7 Mar 2013 21:36:04 +0000 (21:36 +0000)]
MFC r237541:

Remove redundant check.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247952 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237540:
tuexen [Thu, 7 Mar 2013 21:34:04 +0000 (21:34 +0000)]
MFC r237540:

Do packet logging in a consistent way.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247950 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237392:
tuexen [Thu, 7 Mar 2013 21:31:45 +0000 (21:31 +0000)]
MFC r237392:

Remove redundant #ifdef. Reported by gnn@.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247949 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237230:
tuexen [Thu, 7 Mar 2013 21:29:42 +0000 (21:29 +0000)]
MFC r237230:

Add rate limitation for SCTP OOTB responses.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247948 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237229:
tuexen [Thu, 7 Mar 2013 21:27:15 +0000 (21:27 +0000)]
MFC r237229:

Cleanup the UDP decapsulation code.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247947 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r237049:
tuexen [Thu, 7 Mar 2013 21:24:41 +0000 (21:24 +0000)]
MFC r237049:

Pass flowid explicitly through the stack instead of taking it from
the mbuf chain at different places.
While there: Fix several bugs related to VRFs.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247946 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236961:
tuexen [Thu, 7 Mar 2013 21:22:07 +0000 (21:22 +0000)]
MFC r236961:

Add a cmsg of type IP_TOS for UDP/IPv4 sockets to specify the TOS byte.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247945 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236959:
tuexen [Thu, 7 Mar 2013 21:17:37 +0000 (21:17 +0000)]
MFC r236959:

Add a IP_RECVTOS socket option to receive for received UDP/IPv4
packets a cmsg of type IP_RECVTOS which contains the TOS byte.
Much like IP_RECVTTL does for TTL. This allows to implement a
protocol on top of UDP and implementing ECN.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247944 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236958:
tuexen [Thu, 7 Mar 2013 21:11:16 +0000 (21:11 +0000)]
MFC r236958:

Deliver IPV6_TCLASS, IPV6_HOPLIMIT and IPV6_PKTINFO cmsgs (if
requested) on IPV6 sockets, which have been marked to be not IPV6_V6ONLY,
for each received IPV4 packet.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247943 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236956:
tuexen [Thu, 7 Mar 2013 21:08:19 +0000 (21:08 +0000)]
MFC r236956:

Unify the sending of ABORT, SHUTDOWN-COMPLETE and ERROR chunks.
While there: Fix also some minor bugs and prepare for SCTP/DTLS.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247941 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236949:
tuexen [Thu, 7 Mar 2013 20:41:36 +0000 (20:41 +0000)]
MFC r236949:

Small cleanup.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247939 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236522:
tuexen [Thu, 7 Mar 2013 20:37:57 +0000 (20:37 +0000)]
MFC r236522:

Remove code which is not needed.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247938 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236515:
tuexen [Thu, 7 Mar 2013 20:36:17 +0000 (20:36 +0000)]
MFC r236515:

Use an existing function to get the source address.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247937 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236493:
tuexen [Thu, 7 Mar 2013 20:34:30 +0000 (20:34 +0000)]
MFC r236493:

Honor sysctl for TTL.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247936 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236492:
tuexen [Thu, 7 Mar 2013 20:32:30 +0000 (20:32 +0000)]
MFC r236492:

Don't request data from the IPv6 layer, which is not used.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247935 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236450:
tuexen [Thu, 7 Mar 2013 20:29:54 +0000 (20:29 +0000)]
MFC r236450:

Remove an unused parameter.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247934 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236391:
tuexen [Thu, 7 Mar 2013 20:26:51 +0000 (20:26 +0000)]
MFC r236391:

Small cleanups. No functional change.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247933 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r236087:
tuexen [Thu, 7 Mar 2013 20:24:14 +0000 (20:24 +0000)]
MFC r236087:

Get rid of SCTP specific code to avoid CRC32C computations on loopback.
Just use offloading.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247932 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235990:
tuexen [Thu, 7 Mar 2013 20:17:30 +0000 (20:17 +0000)]
MFC r235990:

Undefine SCTP_PACKED before including sctp_uio.h, which doesn't
use it. Spotted by Irene Ruengeler.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247931 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235903:
tuexen [Thu, 7 Mar 2013 20:14:55 +0000 (20:14 +0000)]
MFC r235903:
Add sn_send_failed_event to sctp_notification.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247930 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235828:
tuexen [Thu, 7 Mar 2013 20:12:31 +0000 (20:12 +0000)]
MFC r235828:

Use consistent text at the begining of the files.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247929 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235557:
tuexen [Thu, 7 Mar 2013 20:08:34 +0000 (20:08 +0000)]
MFC r235557:

Use a default for max_burst of 4 and l2var of 2.
This was discussed with rrs@.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247928 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235554:
tuexen [Thu, 7 Mar 2013 20:06:27 +0000 (20:06 +0000)]
MFC r235554:

Support SCTP_EOF also for 1-to-1 style sockets.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247927 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235418:
tuexen [Thu, 7 Mar 2013 20:04:05 +0000 (20:04 +0000)]
MFC r235418:

Support SCTP_REMOTE_ERROR notification.
`

git-svn-id: svn://svn.freebsd.org/base/stable/8@247926 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235416:
tuexen [Thu, 7 Mar 2013 19:40:14 +0000 (19:40 +0000)]
MFC r235416:

Provide in the SCTP_SEND_FAILED and SCTP_SEND_FAILED_EVENT notifications
the correct ssf_error or ssfe_error as required by RFC 6458.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247925 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235414,r235415:
tuexen [Thu, 7 Mar 2013 19:38:04 +0000 (19:38 +0000)]
MFC r235414,r235415:

Provide the error code in SCTP_PEER_ADDR_CHANGE notifications as
specified in RFC 6458.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247924 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235412:
tuexen [Thu, 7 Mar 2013 19:34:56 +0000 (19:34 +0000)]
MFC r235412:
Remove unused constants.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247923 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235403:
tuexen [Thu, 7 Mar 2013 19:32:54 +0000 (19:32 +0000)]
MFC r235403:

Use ECONNABORTED in cases where the ABORT was sent to the peer.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247922 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235402:
tuexen [Thu, 7 Mar 2013 19:30:34 +0000 (19:30 +0000)]
MFC r235402:

Ensure the user can read COMM_LOST notifications on 1-to-1 style sockets.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247921 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r235360:
tuexen [Thu, 7 Mar 2013 19:27:17 +0000 (19:27 +0000)]
MFC r235360:

Provide in the association change notification the received ABORT chunk
if case of SCTP_COMM_LOST or SCTP_CANT_STR_ASSOC as required by RFC 6458.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247920 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r245362
bryanv [Thu, 7 Mar 2013 07:28:05 +0000 (07:28 +0000)]
MFC r245362

    Add VirtIO to i386 and amd64 GENERIC

Approved by: grehan (mentor)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247909 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r227652,r230450,r230461,r241470
bryanv [Thu, 7 Mar 2013 07:02:31 +0000 (07:02 +0000)]
MFC r227652,r230450,r230461,r241470

Include/update the VirtIO man pages.

 -r227652: Initial import
 -r230450: General cleanup
 -r230461: Connect VirtIO-related manpages to the build
 -r241470: Virtio SCSI driver man page

Approved by: grehan (mentor)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247908 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r238072,r238360,r240430,r241469,r241470,r241495,r244136,r244200
bryanv [Thu, 7 Mar 2013 06:53:25 +0000 (06:53 +0000)]
MFC r238072,r238360,r240430,r241469,r241470,r241495,r244136,r244200

Sync VirtIO with HEAD.

 - r238072: Do not include <sys/types.h> in the local headers.
 - r238360: Various VirtIO improvements
 - r240430: No need to leak these into the includer's namespace.
 - r241469: virtqueue: Fix non-indirect virtqueues
 - r241470: Add Virtio SCSI driver
 - r241495: Fix build with PAE enabled
 - r244136: Remove duplicated lines
 - r244200: Start taskqueues threads after attach cannot fail

Approved by: grehan (mentor)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247907 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246522: sh: Simplify mksyntax and make it fit for cross-compiling.
jilles [Wed, 6 Mar 2013 22:12:45 +0000 (22:12 +0000)]
MFC r246522: sh: Simplify mksyntax and make it fit for cross-compiling.

Now it outputs fixed files, which use constants provided by the C standard
library to determine appropriate values for the target machine.

Before, mksyntax inspected the host machine which resulted in subtle
breakage if e.g. char is signed on the host and unsigned on the target such
as when cross-compiling on x86 for ARM.

Tested by: ian (this patch)
Submitted by: Christoph Mallon (patch for head)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247902 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r213713 by obrien: Correct regression test to not show a false positive
jilles [Wed, 6 Mar 2013 21:30:42 +0000 (21:30 +0000)]
MFC r213713 by obrien: Correct regression test to not show a false positive
when run as root.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247901 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247854:
np [Wed, 6 Mar 2013 18:45:11 +0000 (18:45 +0000)]
MFC r247854:
Fix compile warning by including ctype.h for isdigit().

git-svn-id: svn://svn.freebsd.org/base/stable/8@247897 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246532: zfs_vget, zfs_fhtovp: properly handle the z_shares_dir object
avg [Wed, 6 Mar 2013 11:11:18 +0000 (11:11 +0000)]
MFC r246532: zfs_vget, zfs_fhtovp: properly handle the z_shares_dir object

git-svn-id: svn://svn.freebsd.org/base/stable/8@247889 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246245,246324: ng_ether: track interface renaming
avg [Wed, 6 Mar 2013 11:00:47 +0000 (11:00 +0000)]
MFC r246245,246324: ng_ether: track interface renaming

git-svn-id: svn://svn.freebsd.org/base/stable/8@247885 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246248: cpususpend_handler: mark AP as resumed only after fully
avg [Wed, 6 Mar 2013 09:33:16 +0000 (09:33 +0000)]
MFC r246248: cpususpend_handler: mark AP as resumed only after fully
setting up lapic

git-svn-id: svn://svn.freebsd.org/base/stable/8@247879 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246247: x86 suspend/resume: suspend pics and pseudo-pics in reverse order
avg [Wed, 6 Mar 2013 09:22:10 +0000 (09:22 +0000)]
MFC r246247: x86 suspend/resume: suspend pics and pseudo-pics in reverse order

git-svn-id: svn://svn.freebsd.org/base/stable/8@247876 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246246,246254: print compiler version in the kernel banner
avg [Wed, 6 Mar 2013 09:16:01 +0000 (09:16 +0000)]
MFC r246246,246254: print compiler version in the kernel banner

git-svn-id: svn://svn.freebsd.org/base/stable/8@247875 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247382:
yongari [Wed, 6 Mar 2013 08:04:44 +0000 (08:04 +0000)]
MFC r247382:
  RX checksum offloading on old Yukon controllers seem to cause more
  problems.  Disable RX checksum offloading on controllers that don't
  use new descriptor format but give chance to enable it with
  ifconfig(8).

git-svn-id: svn://svn.freebsd.org/base/stable/8@247873 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247281, r247345:
trociny [Wed, 6 Mar 2013 06:59:42 +0000 (06:59 +0000)]
MFC r247281, r247345:

r247281:

Add i/o error counters to hastd(8) and make hastctl(8) display
them.  This may be useful for detecting problems with HAST disks.

Discussed with and reviewed by: pjd

r247345:

Fix casting.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247869 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247281:
trociny [Wed, 6 Mar 2013 06:59:10 +0000 (06:59 +0000)]
MFC r247281:

Add i/o error counters to hastd(8) and make hastctl(8) display
them.  This may be useful for detecting problems with HAST disks.

Discussed with and reviewed by: pjd

git-svn-id: svn://svn.freebsd.org/base/stable/8@247868 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247268:
gallatin [Tue, 5 Mar 2013 19:20:34 +0000 (19:20 +0000)]
MFC r247268:
 Several cleanups and fixes to mxge:

 - Remove vestigial null pointer tests after malloc(..., M_WAITOK).

 - Remove vestigal qualhack union

 - Use strlcpy() instead of the error-prone strncpy() when parsing
   EEPROM and copying strings

 - Check the MAC address in the EEPROM strings more strictly.

 - Expand the macro MXGE_NEXT_STRING() at its only user. Due to a typo,
   the macro was very confusing.

 - Remove unnecessary buffer limit check.  The buffer is double-NUL
   terminated per construction.

PR:             kern/176369
Submitted by:   Christoph Mallon <christoph.mallon gmx.de>

git-svn-id: svn://svn.freebsd.org/base/stable/8@247853 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247159
gallatin [Tue, 5 Mar 2013 17:46:12 +0000 (17:46 +0000)]
MFC r247159
  Improvements for newer mxge nics:

  - Some mxge nics may store the serial number in the SN2 field of the
    EEPROM.  These will also have an SN=0 field, so parse the SN2 field,
    and give it precedence.

  - Skip MXGEFW_CMD_UNALIGNED_TEST on mxge nics which do not require it.
    This saves roughly 10ms per port at device attach time.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247851 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247396:
tijl [Tue, 5 Mar 2013 16:04:15 +0000 (16:04 +0000)]
MFC r247396:

Map libraries linked with -Ttext-segment=base_addr at base_addr.
Normal libraries have base address 0 and are unaffected by this change.

PR: 176216
Submitted by: Damjan Jovanovic <damjan.jov@gmail.com>
Reviewed by: kib

git-svn-id: svn://svn.freebsd.org/base/stable/8@247847 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247594:
delphij [Tue, 5 Mar 2013 06:43:54 +0000 (06:43 +0000)]
MFC r247594:

Fix a typo in mfi_stp_cmd() that would give wrong assignment.

Submitted by: Sascha Wildner <saw online de>
Obtained from: DragonFly rev 0dc98fff2206d7bb78ce5e07ac34d6954e4bd96a

git-svn-id: svn://svn.freebsd.org/base/stable/8@247828 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247443:
delphij [Tue, 5 Mar 2013 06:41:39 +0000 (06:41 +0000)]
MFC r247443:

Refresh vendor driver version which adds ARC-1224 support.

Many thanks to Areca for continuing to support FreeBSD.

Submitted by: 黃清隆 <ching2048 areca com tw>

git-svn-id: svn://svn.freebsd.org/base/stable/8@247827 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246134 ...
ian [Mon, 4 Mar 2013 23:22:37 +0000 (23:22 +0000)]
MFC r246134 ...

Improve devd startup time, by tweaking some string handling routines that are
heavily used when parsing config files.  Mostly these changes avoid making
temporary copies of the strings, and avoid doing byte at a time append
operations, on the most-used code path.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247825 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC ...
ian [Mon, 4 Mar 2013 23:15:25 +0000 (23:15 +0000)]
MFC ...

 r210609 - remove unused string
 r210610 - avoid copy ctors by using prefix operators
 r213646 - allow spacey things (liberal whitespace parsing)
 r236388 - libc++ compatibility (add :: prefix to bind() call)
 r240823 - use O_CLOEXEC for open instead of separate fcntl(2) call
 r243932 - prefer init expression to assignment in ctor

 r209583 ...

 Expand system into my_system, and add the necessary tidyness that we
 need.  Close the pidfile.  Then close all descriptors >= 3 to avoid
 information leakage to children.

 This solves the problem of not being able to restart devd when you
 have, for example, a dhclient forked to configure your network...

git-svn-id: svn://svn.freebsd.org/base/stable/8@247824 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r209583 ...
ian [Mon, 4 Mar 2013 22:04:14 +0000 (22:04 +0000)]
MFC r209583 ...

Expand system into my_system, and add the necessary tidyness that we
need.  Close the pidfile.  Then close all descriptors >= 3 to avoid
information leakage to children.

This solves the problem of not being able to restart devd when you
have, for example, a dhclient forked to configure your network...

git-svn-id: svn://svn.freebsd.org/base/stable/8@247819 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC 205541,205592:
jhb [Mon, 4 Mar 2013 18:28:24 +0000 (18:28 +0000)]
MFC 205541,205592:
Implement /proc/filesystems.

PR: kern/142595

git-svn-id: svn://svn.freebsd.org/base/stable/8@247808 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246121 r246361 ...
ian [Mon, 4 Mar 2013 17:39:17 +0000 (17:39 +0000)]
MFC r246121 r246361 ...

Fix a descriptor leak in devd.  Clients reading /var/run/devd.pipe can close
their socket connection any time, and devd only notices that when it gets an
error trying to write an event to the client.  On a system with no device
change activity, clients could connect and disappear repeatedly without devd
noticing, leading to an ever-growing list of open socket descriptors in devd.

Now devd uses poll(2) looking for POLLHUP on all existing clients every time
a new client connection is established, and also periodically (once a minute)
to proactively find zombie clients and reap the socket descriptors.  It also
now has a connection limit, configurable with a new -l <num> command line arg.
When the maximum number of connections is reached it stops accepting new
connections until some current clients drop off.

Bump .Dd in for content change (r246361).

git-svn-id: svn://svn.freebsd.org/base/stable/8@247806 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC 199757:
jhb [Mon, 4 Mar 2013 17:35:10 +0000 (17:35 +0000)]
MFC 199757:
- For 350 chips, don't set various INTR bits in TX control word; turning INTR
  bits on seems to confuse hardware TX engine.
- For 350 chips, set TX desc's buffer physical address before turning on the
  TX desc valid bit.

PR: kern/85886

git-svn-id: svn://svn.freebsd.org/base/stable/8@247805 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r247780:
dteske [Mon, 4 Mar 2013 11:43:20 +0000 (11:43 +0000)]
MFC r247780:

Fix VERBOSE reporting on results when removing _PATH_LOCALTIME for UTC option.

PR: bin/164976
Submitted by: dteske

git-svn-id: svn://svn.freebsd.org/base/stable/8@247782 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r226775:
hrs [Mon, 4 Mar 2013 05:46:54 +0000 (05:46 +0000)]
MFC r226775:

- Add support for a "!" character in regex matching in devd(8).  It inverts
  the logic (true/false) of the matching.

- Add "!usbus[0-9]+" to IFNET ATTACH notification handler in the default
  devd.conf to prevent rc.d/netif from running when usbus[0-9]+ is attached.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247768 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r230520:
dteske [Mon, 4 Mar 2013 01:47:37 +0000 (01:47 +0000)]
MFC r230520:

Clean up reinstall option and remove duplicate code

- Move the reinstall logic to be before menus are initialised
  (menus are not needed when reinstalling a zonefile).

- Remove unnecessary re-initialization of path_db.

- Update variable name and error message because we now use the
  zone name relative to /usr/share/zoneinfo, not the full path.

pr: bin/164041
Submitted by: dteske

git-svn-id: svn://svn.freebsd.org/base/stable/8@247749 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r230296:
dteske [Mon, 4 Mar 2013 01:35:56 +0000 (01:35 +0000)]
MFC r230296:

Don't write /var/db/zoneinfo when zone is not actually changed.

If the specified zone file does not exist or the -n flag is specified,
do not update /var/db/zoneinfo.

PR: bin/164039
Submitted by: dteske

git-svn-id: svn://svn.freebsd.org/base/stable/8@247748 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r230299:
dteske [Mon, 4 Mar 2013 01:32:24 +0000 (01:32 +0000)]
MFC r230299:

Fix #ifdef VERBOSE for UTC case

Update verbose output to match what actually happens when selecting
the UTC option, and when the -n option is used.

Patch updated slightly for new libdialog.

PR: bin/164042
Submitted by: dteske

git-svn-id: svn://svn.freebsd.org/base/stable/8@247747 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC only the whitespace changes* from r227934: Port to new libdialog.
dteske [Mon, 4 Mar 2013 01:22:07 +0000 (01:22 +0000)]
MFC only the whitespace changes* from r227934: Port to new libdialog.
* In other words, no changes to dialog; whitespace changes only.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247746 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r230005:
dteske [Mon, 4 Mar 2013 01:14:06 +0000 (01:14 +0000)]
MFC r230005:

Use a reasonable-sized buffer when formatting error messages about
installing zoneinfo.  While we're in the vicinity, add some missing
error checking to eliminate an unhelpful error message when unlink()
fails.

/me is embarrassed by the quality of his 16-year-old code.
The whole thing is awful and could stand a complete rewrite.

PR: 164038
Submitted by: Devin Teske (but implemented differently)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247745 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246371: sh: Do not test for digit_contig in mksyntax.
jilles [Sun, 3 Mar 2013 22:33:13 +0000 (22:33 +0000)]
MFC r246371: sh: Do not test for digit_contig in mksyntax.

ISO/IEC 9899:1999 (E) 5.2.1p3 guarantees that the values of the characters
0123456789 are contiguous.

The generated syntax.c and syntax.h remain the same.

Submitted by: Christoph Mallon

git-svn-id: svn://svn.freebsd.org/base/stable/8@247733 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMerge
melifaro [Sun, 3 Mar 2013 21:48:40 +0000 (21:48 +0000)]
Merge
* r233937 - Improve BPF locking model
* r233938 - Improve performace for writer-only BPF users
* r233946 - Fix build
* r235744 - Fix (new) panic on attaching to non-existent interface
* r235745 - Fix old panic when BPF consumer attaches to destroying interface
* r235746 - Call bpf_jitter() before acquiring BPF global lock
* r235747 - Make most BPF ioctls() SMP-safe.
* r236231 - Fix BPF_JITTER code broken by r235746.
* r236261 - Save the previous filter right before we set new one.
* r236262 - Fix style(9) nits, reduce unnecessary type castings.
* r236559 - Fix panic introduced by r235745
* r236806 - Fix typo introduced in r236559.

r233937
  - Improve BPF locking model.

  Interface locks and descriptor locks are converted from mutex(9) to rwlock(9).
  This greately improves performance: in most common case we need to acquire 1
  reader lock instead of 2 mutexes.

  - Remove filter(descriptor) (reader) lock in bpf_mtap[2]
  This was suggested by glebius@. We protect filter by requesting interface
  writer lock on filter change.

  - Cover struct bpf_if under BPF_INTERNAL define. This permits including bpf.h
  without including rwlock stuff. However, this is is temporary solution,
  struct bpf_if should be made opaque for any external caller.

r233938
  - Improve performace for writer-only BPF users.

  Linux and Solaris (at least OpenSolaris) has PF_PACKET socket families to send
  raw ethernet frames. The only FreeBSD interface that can be used to send raw
  frames is BPF. As a result, many programs like cdpd, lldpd, various dhcp stuff
  uses BPF only to send data. This leads us to the situation when software like
  cdpd, being run on high-traffic-volume interface significantly reduces overall
  performance since we have to acquire additional locks for every packet.

  Here we add sysctl that changes BPF behavior in the following way:
  If program came and opens BPF socket without explicitly specifyin read filter
  we assume it to be write-only and add it to special writer-only per-interface
  list. This makes bpf_peers_present() return 0, so no additional overhead is
  introduced. After filter is supplied, descriptor is added to original
  per-interface list permitting packets to be captured.

  Unfortunately, pcap_open_live() sets catch-all filter itself for the purpose
  of setting snap length.

  Fortunately, most programs explicitly sets (event catch-all) filter after
  that. tcpdump(1) is a good example.

  So a bit hackis approach is taken: we upgrade description only after second
  BIOCSETF is received.

  Sysctl is named net.bpf.optimize_writers and is turned off by default.

  - While here, document all sysctl variables in bpf.4

r233946
  Fix build broken by r233938.

r235744
  Fix panic on attaching to non-existent interface
(introduced by r233937, pointed by hrs@)
  Fix panic on tcpdump being attached to interface being removed
(introduced by r233937, pointed by hrs@ and adrian@)
  Protect most of bpf_setf() by BPF global lock

  Add several forgotten assertions (thanks to adrian@)

  Document current locking model inside bpf.c
  Document EVENTHANDLER(9) usage inside BPF.

r235745
  Fix old panic when BPF consumer attaches to destroying interface.
  'flags' field is added to the end of bpf_if structure. Currently the only
  flag is BPFIF_FLAG_DYING which is set on bpf detach and checked by bpf_attachd()
  Problem can be easily triggered on SMP stable/[89] by the following command
  (sort of):
  'while true; do ifconfig vlan222 create vlan 222 vlandev em0 up ; \
    tcpdump -pi vlan222 & ; ifconfig vlan222 destroy ; done'

  Fix possible use-after-free when BPF detaches itself from interface, freeing
  bpf_bif memory, while interface is still UP and there can be routes via this
  interface. Freeing is now delayed till ifnet_departure_event is received via
  eventhandler(9) api.

  Convert bpfd rwlock back to mutex due lack of performance gain
  (currently checking if packet matches filter is done without holding bpfd
   lock and we have to acquire write lock if packet matches)

r235746
  Call bpf_jitter() before acquiring BPF global lock due to malloc() being
  used inside bpf_jitter.

  Eliminate bpf_buffer_alloc() and allocate BPF buffers on descriptor creation
   and BIOCSBLEN ioctl. This permits us not to allocate buffers inside
   bpf_attachd() which is protected by global lock.

r235747
  Make most BPF ioctls() SMP-safe.

r236559
  Fix panic introduced by r235745. Panic occurs after first packet traverse
  renamed interface.
  Add several comments on locking

r236231
  Fix BPF_JITTER code broken by r235746.

r236261
  - Save the previous filter right before we set new one.
  - Reduce duplicate code and make it little easier to read.

r236262
  Fix style(9) nits, reduce unnecessary type castings, etc., for bpf_setf().

r236806
  Fix typo introduced in r236559.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247732 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246978:
markj [Sun, 3 Mar 2013 19:02:11 +0000 (19:02 +0000)]
MFC r246978:
  - Make sure to set an error code when trying to obtain a data descriptor for
    a section of type SHT_NULL.
  - Update the man page to reflect the fact that elf_getdata() and
    elf_rawdata() may return with an error of ELF_E_SECTION.

Approved by: rstone (co-mentor)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247723 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r232297: Grammar: tzsetup now has more than one option.
dteske [Sun, 3 Mar 2013 16:16:10 +0000 (16:16 +0000)]
MFC r232297: Grammar: tzsetup now has more than one option.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247718 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r244688:
dteske [Sun, 3 Mar 2013 09:26:58 +0000 (09:26 +0000)]
MFS 9->8 r244688:
Fix error message to be accurate for when ProgName is not "sysinstall" (oops?)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247704 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r215314:
dteske [Sun, 3 Mar 2013 09:23:52 +0000 (09:23 +0000)]
MFS 9->8 r215314:
ipv6_enable has been obsoleted in favour of ipv6_activate_all_interfaces.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247703 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r209481:
dteske [Sun, 3 Mar 2013 09:21:18 +0000 (09:21 +0000)]
MFS 9->8 r209481:

Update the man page to reflect the changes to the netDev configuration
variable.

Approved by: cperciva

MFS 9->8 r209446:

Remove unnecessarily inflammatory commentary.

Approved by: cperciva

git-svn-id: svn://svn.freebsd.org/base/stable/8@247702 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r247267:
dteske [Sun, 3 Mar 2013 09:13:18 +0000 (09:13 +0000)]
MFS 9->8 r247267:

Oops, r55392 (over 13 years ago) forgot to classify the new HTTP Proxy for the
options dialog (causing "<unknown>" to be displayed for the HTTP media type).

git-svn-id: svn://svn.freebsd.org/base/stable/8@247700 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r209782:
dteske [Sun, 3 Mar 2013 09:09:59 +0000 (09:09 +0000)]
MFS 9->8 r209782:

Add support for remote logging to syslogd via an install.cfg variable.

Approved by: cperciva

git-svn-id: svn://svn.freebsd.org/base/stable/8@247697 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 the sysinstall portion of r223492:
dteske [Sun, 3 Mar 2013 08:56:10 +0000 (08:56 +0000)]
MFS 9->8 the sysinstall portion of r223492:
Remove duplicated header files

git-svn-id: svn://svn.freebsd.org/base/stable/8@247695 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r217491 with slight modification:
dteske [Sun, 3 Mar 2013 08:51:56 +0000 (08:51 +0000)]
MFS 9->8 r217491 with slight modification:

Reduce the amount of text users need to read on each screen. Also try and
make it more relevant to modern systems: for example users will be
familiar with the MBR but possibly less so with MS-DOS.

After installation has finished don't return to the main menu but exit.

Slight modification:

Ignore the last sentence (need feedback from brucec before carrying that back
to 8 where sysinstall is still the main installer).

git-svn-id: svn://svn.freebsd.org/base/stable/8@247694 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r209778:
dteske [Sun, 3 Mar 2013 08:21:17 +0000 (08:21 +0000)]
MFS 9->8 r209778:
Add further documentation for netDev in install.cfg to reflect the new
usage.

Approved by: cperciva

git-svn-id: svn://svn.freebsd.org/base/stable/8@247693 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r215224:
dteske [Sun, 3 Mar 2013 08:17:17 +0000 (08:17 +0000)]
MFS 9->8 r215224:
We still support PLIP devices, so mention them in addition to ethernet.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247692 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r244676:
dteske [Sun, 3 Mar 2013 08:04:11 +0000 (08:04 +0000)]
MFS 9->8 r244676:
Fix another typo while we're here.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247691 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r247241:
dteske [Sun, 3 Mar 2013 08:02:07 +0000 (08:02 +0000)]
MFS 9->8 r247241:

Oops, r186202 (over 4 years ago) forgot to remove Tape from the F1 Help file.
Direct commit to stable/9 (no sysinstall in head).

MFS 9->8 r247242:

Oops, r215291 (over 2 years ago) forgot to remove mention of "medium" from the
F1 Help file.  Direct commit to stable/9 (no sysinstall in head).

git-svn-id: svn://svn.freebsd.org/base/stable/8@247690 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r245438:
dteske [Sun, 3 Mar 2013 07:54:28 +0000 (07:54 +0000)]
MFS 9->8 r245438:
Oops, r186202 (4 years ago) forgot to remove Tape from the F1 Help file.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247689 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r244573:
dteske [Sun, 3 Mar 2013 07:50:33 +0000 (07:50 +0000)]
MFS 9->8 r244573:
Fix typo. (fixing them as I find them)

git-svn-id: svn://svn.freebsd.org/base/stable/8@247688 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFS 9->8 r234737:
dteske [Sun, 3 Mar 2013 07:45:40 +0000 (07:45 +0000)]
MFS 9->8 r234737:

Fix several 'format string is not a literal' warnings in sysinstall.

Since sysinstall does not exist anymore in head, this is a direct
commit.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247687 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r246921:
kib [Sun, 3 Mar 2013 07:27:15 +0000 (07:27 +0000)]
MFC r246921:
Do not update the fsinfo block on each update of any fat block.
Postpone the flush to VFS_SYNC().

git-svn-id: svn://svn.freebsd.org/base/stable/8@247686 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC r234831, r234833, r237263**, r237436*, r237439, r237463, r237512,
np [Sat, 2 Mar 2013 21:59:07 +0000 (21:59 +0000)]
MFC r234831, r234833, r237263**, r237436*, r237439, r237463, r237512,
r237587, r237799, r237819, r237831, r238028, r238054, r238313, r239102,
r239258, r239259, r239264*, r239266, r239336, r239338*, r239339,
r239341, r239344, r240443, r240451, r240452*, r240453, r241397, r241398,
r241399, r241401, r241409, r241416, r241493, r244551, r244580, r245243,
r245274*, r245276*, r245434*, r245517, r245518, r245520, r245567,
r245933, r245935, r245936, r246093, r246385, r246575, r247062, r247122,
r247289, r247291, r247347, r247355.

This brings stable/8's cxgbe(4) up to date with what's in head right
now.  One major difference is the missing t4_tom (TCP Offload Module);
there are no plans to backport it to 8.

Build tested with make universe (with -DMAKE_JUST_KERNELS)

*  partial
** partial manual backport, not really an MFC

git-svn-id: svn://svn.freebsd.org/base/stable/8@247670 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC: r246689, r246696
marius [Sat, 2 Mar 2013 17:39:20 +0000 (17:39 +0000)]
MFC: r246689, r246696

Make SYSCTL_{LONG,QUAD,ULONG,UQUAD}(9) work as advertised and also handle
constant values.

Reviewed by: kib

git-svn-id: svn://svn.freebsd.org/base/stable/8@247657 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC: r246300
marius [Sat, 2 Mar 2013 17:36:31 +0000 (17:36 +0000)]
MFC: r246300

- Make pci_ns8250_ids[] const.
- Use DEVMETHOD_END.
- Use NULL instead of 0 for pointers.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247655 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC: r246257
marius [Sat, 2 Mar 2013 17:32:20 +0000 (17:32 +0000)]
MFC: r246257

Improve r238673 (MFC'ed to stable/8 in r239495) to additionally allow
for odd-aligned buffers as passed in by smartd of smartmontools.
While at it, hint the compiler that 32-bit PIO is the most likely
case (idea from Linux) and use bus_{read,write}_stream_2(9) instead
of bus_{read,write}_multi_stream_2(9) for single count reads/writes.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247653 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

11 years agoMFC: r235857
marius [Sat, 2 Mar 2013 17:25:45 +0000 (17:25 +0000)]
MFC: r235857

mdoc: Only use macros inside a reference block.

git-svn-id: svn://svn.freebsd.org/base/stable/8@247651 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f