6 years agortld: Sync 6/7 - Minimize differences from FreeBSD
John Marino [Thu, 13 Jun 2013 06:19:35 +0000 (08:19 +0200)]
rtld: Sync 6/7 - Minimize differences from FreeBSD

DragonFly developed some rtld features before FreeBSD, and consequently
those features were ported back to FreeBSD.  Some portions of these
new lines were modified for various reasons, e.g. the variable names
weren't liked or additional constraints were deemed necessary such as
the ability to maintain the old (incorrect) behavior of RUNPATH.

In any case, there were minor differences including whitespace, and
this commit reduces those differences to ease future syncing.

6 years agortld: Sync 5/7 - Fix fd leak with parallel dlopen and fork
John Marino [Wed, 12 Jun 2013 23:42:14 +0000 (01:42 +0200)]
rtld: Sync 5/7 - Fix fd leak with parallel dlopen and fork

Rtld did not set FD_CLOEXEC on its internal file descriptors; therefore,
such a file descriptor may be passed to a process created by another
thread running in parallel to dlopen() or fdlopen().

No other threads are expected to be running during parsing of the hints
and libmap files but the file descriptors need not be passed to child
processes so add O_CLOEXEC there as well.

As the F_DUPFD_CLOEXEC support was added in the kernel today, rtld
will temporarily fall back to separate dup/cloexec commands if
F_DUPFD_CLOEXEC fails.  This fallback should be removed before
3.6 branches.

Taken from:
FreeBSD SVN 242587 (04 NOV 2012)

6 years agortld: Sync 4/7 - Fix token substitution
John Marino [Wed, 12 Jun 2013 12:24:28 +0000 (14:24 +0200)]
rtld: Sync 4/7 - Fix token substitution

The origin_subst_one() function limits the length of the string to
PATH_MAX after the token substitution.  This is wrong, because
origin_subst_one() performs the substitution on the whole rpath and
similar strings, which contain several pathes separated by colon.  As
result, a long (but correct) rpath consisting of many path elements is
rejected by the function.

Correct the problem by rewriting the origin_subst_one() to perform two
passes, first pass to calculate the number of substitutions to be
performed, and second pass to generate the resulting string.  Second
pass allocates the memory for the result based on the count from the
first pass, without enforcing a limit.

Taken verbatim from:
FreeBSD SVN 249525 (15 APR 2013)
FreeBSD SVN 250075 (29 APR 2013)

6 years agortld: Sync 3/7 - LD_PRELOAD and z_nodeflib fix
John Marino [Wed, 12 Jun 2013 12:06:58 +0000 (14:06 +0200)]
rtld: Sync 3/7 - LD_PRELOAD and z_nodeflib fix

Do not reference z_nodeflib for !objgiven case in order to fix LD_PRELOAD
for a non-absolute path.

Taken from:
FreeBSD SVN 240686 (18 SEP 2012)

6 years agortld: Sync 2/7 - Remove potential map leakage
John Marino [Wed, 12 Jun 2013 11:15:29 +0000 (13:15 +0200)]
rtld: Sync 2/7 - Remove potential map leakage

Eliminate the static buffer used to read the first page of the mapped
object, and eliminate the pread(2) call as well.  Mmap the first page
of the object temporarily and unmap it on error or last use.  Potentially
this leaves a one page gap between succeeding dlopen(3), but there are
other mmap(2) consumers as well.

This fixes several cases where the whole mapping of the object leaked
upon error.  The MAP_PREFAULT_READ code had to be skipped because the
mmap on DragonFly doesn't support this flag.


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

Taken from:
FreeBSD SVN 237058 (14 JUN 2012)
FreeBSD SVN 247396 (27 FEB 2013)

6 years agortld: Sync 1/7 - Handle premature symlook_obj call
John Marino [Wed, 12 Jun 2013 10:49:17 +0000 (12:49 +0200)]
rtld: Sync 1/7 - Handle premature symlook_obj call

It doesn't appear that this code is needed for x86 platforms as this
case should already be caught in early code, but it doesn't hurt
DragonFly to handle every possible case.

  Work around a situation where symlook_obj() could be called for the
  object for which digest_dynamic1() was not done yet.  Just return
  EINVAL and do not try to dereference NULL buckets hash array.

  This seems to happen on ia64 for rtld object itself where the
  R_IA_64_FPTR64LSB relocations require symbol lookup.  The dynamic
  linker itself does not rely on identity of the C-level function
  pointers (i.e. function descriptors).

Taken verbatim from:
FreeBSD SVN 235054 (05 MAY 2012)

6 years agohammer2 - freemap part 4, misc fixes
Matthew Dillon [Thu, 13 Jun 2013 07:11:04 +0000 (00:11 -0700)]
hammer2 - freemap part 4, misc fixes

* Revamp the freemap a bit.  Remove Layer 0.  Layer 1 is now the LEAF.
  2GB of media storage is now represented by a single 64KB Layer 1 block.
  Synchronize the FREEMAP document with the current thinking.

  The Layer 1 block contains 1024x64 entries.  Each entry represents 2MBytes
  of media storage.  These entries are no longer blockrefs pointing to
  Layer 0 but are instead terminal structures.

* Each entry represents a 16KB allocation granularity in 2 bits and has
  128 bit pairs (256 bits total), plus additional information to represent
  the 2MBytes of storage.

  Fine-grained allocations are supported via an iterator field, currently
  allowing fine-grained allocations down to 1KB and potentially expandable
  in the future to even smaller allocation sizes.

* Fix a SMP race in voldata handling during flush.  The freemap portion of
  voldata could be updated during crc calculations due to hmp->fchain not
  being held locked, causing random volume header/backups to fail their CRC
  test on remount.

* Add missing BUF_KERNPROC() when chain->bp is replaced.  Fixes a kernel
  lock ownership assertion.

* Add freezone/radix fields to the inode_data structure.  Each inode can
  accomodate four fields.  The fields are not yet utilized.  Current thinking
  is to use them to optimize the bulk free-scan for freeing blocks.

6 years agokernel: Add three new commands to fctnl
John Marino [Wed, 12 Jun 2013 19:42:21 +0000 (21:42 +0200)]
kernel: Add three new commands to fctnl

This commit adds the following new commands to fcntl():
  F_DUP2FD         - non-portable functional equivalent of dup2(fd, arg)
  F_DUPFD_CLOEXEC  - A version of F_DUPFD that sets the close-on-exec
                     on the new file descriptor
  F_DUP2FD_CLOEXEC - A version of F_DUP2FD that sets the close-on-exec
                     on the new file descriptor.  It is non-portable

It also adds a missing break in a case statement for F_GETOWN in
sys_fnctl(), spotted by dillon.

reviewed-by: dillon

6 years agokernel - fix statistics counters for if_bridge.
Matthew Dillon [Wed, 12 Jun 2013 19:10:41 +0000 (12:10 -0700)]
kernel - fix statistics counters for if_bridge.

* Count input statistics in bridge_input() instead of bridge_forward()

* Add output statistics in bridge_forward().  That is, the bridge should
  in abstract look like a piece of hardware from a statistics standpoint,
  so when a packet is forwarded through a bridge interface it needs to
  show up as both an input packet and an output packet.

* Fixes statistics reporting for e.g. 'netstat -in 1'.

6 years agonetstat - Do not double-count interfaces associated with bridges
Matthew Dillon [Wed, 12 Jun 2013 18:02:12 +0000 (11:02 -0700)]
netstat - Do not double-count interfaces associated with bridges

* Do not double count packets & bytes for interfaces which are
  also associated with bridges when 'netstat -in' is used without
  an interface specification.

6 years agoRemove MACHINE_ARCH=amd64 and legacy make instructions from makefiles
John Marino [Wed, 12 Jun 2013 09:12:20 +0000 (11:12 +0200)]
Remove MACHINE_ARCH=amd64 and legacy make instructions from makefiles

Apparently the x86_64 platform used to be referred to as "amd64" so some
makefile code was added to help with the transition.  It probably should
have been removed when bringing bmake in.

With the commit, the makefiles expect bmake and will break if an older
make is used (e.g. from DragonFly 3.2).  That means an upgrade to
DragonFly 3.6 will have to be upgraded to DragonFly 3.4 first.  There
may be other reasons to do this as well, besides just bmake.

The recent symbol versioning makefile for libraries requires bmake, so
legacy make can't build world anymore in any case.

6 years agoChange initial symbol version from DFLY36.0 to DF306.0
John Marino [Wed, 12 Jun 2013 06:28:43 +0000 (08:28 +0200)]
Change initial symbol version from DFLY36.0 to DF306.0

The first one will make handling DragonFly 3.9 and later awkward.

6 years agolibm: Add several new functions and symbol versioning
John Marino [Tue, 11 Jun 2013 22:28:04 +0000 (00:28 +0200)]
libm: Add several new functions and symbol versioning

The following long double functions were added to the math library:

In addition, the FreeBSD functionality that creates symbol versioning
for libraries was adapted for FreeBSD.  The first version is called
"DFLY36.0".  If it is necessary to create a new version of the 3.5 or
3.6 branch, the number after the decimal will be incremented.  The 3.7
branch will start with "DFLY38.0" if it needs its own version.

libm was baselined with all symbols being the same version: DFLY36.0.
With symbol versioning, it will not be necessary to increment the major
version anymore, so this library shall always be known as libm.so.4 from
this point on.

6 years agortld: increase TLS storage space (bug 2566)
John Marino [Tue, 11 Jun 2013 11:11:21 +0000 (13:11 +0200)]
rtld: increase TLS storage space (bug 2566)

It appears that the TLS storage space, which is currently defined as 256
bytes on both platforms, is insufficient to handle libc TLS data.
Due to nmalloc setting of the thr_mags structure as Thread Local Storage,
the TLS elf section of x86-64 libc is 1172 bytes, while the i386 libc TLS
section weighs in at 588 bytes.  For comparison, the FreeBSD libc TLS
section is 17 bytes, and FreeBSD rtld only reserves 128 bytes for TLS.

The requirements for dmalloc are more modest, so this shortfall was likely
an unintended side-effect of switching from dmalloc back to nmalloc.

This commit sets the reserved TLS space to 1280 bytes for x86-64 and 640
bytes for i386.  This should allow 3.4 packages to continue to work on
the latest 3.5 branch as long as libc.so.7 is present.  For world upgrades
this is the normal case, but the libraries can be obtained by installing
misc/compat34x from dports as well.

Even if the libc TLS space requirements drop significantly, the large
RTLD_STATIC_TLS_EXTRA value needs to be maintained as long as
compatibility with old libc (3.4 and earlier) libraries is required.

6 years agotmpfs - Remove redundant call to insmntque()
Antonio Huete Jimenez [Fri, 7 Jun 2013 23:22:27 +0000 (01:22 +0200)]
tmpfs - Remove redundant call to insmntque()

vnode is moved to the mount queue specified in the call to getnewvnode(),
we do not need to move it again.

6 years agoAHCI - Fix panic if additional I/O is queued during SATA error processing.
Matthew Dillon [Tue, 11 Jun 2013 00:15:21 +0000 (17:15 -0700)]
AHCI - Fix panic if additional I/O is queued during SATA error processing.

* If additional I/O is queued during SATA error processing the AHCI
  driver was improperly trying to initiate the new I/O.  This caused
  the error processing code to assert on unexpected command activity.

* Fix by implying exclusive access mode when the error CCB is in use and
  giving the error CCB queueing priority over all other CCBs.

6 years agopcb: Allow kmalloc(WAITOK) to return in in_pcballoc()
Sepherosa Ziehau [Sun, 9 Jun 2013 02:45:48 +0000 (10:45 +0800)]
pcb: Allow kmalloc(WAITOK) to return in in_pcballoc()

The PCB kmalloc limit could be exceeded on local netperf TCP_CC with the
default MSL; panic is obviously not wanted under this situation.

6 years agoppbus.4: Mention DEBUG_1284.
Sascha Wildner [Sat, 8 Jun 2013 21:51:08 +0000 (23:51 +0200)]
ppbus.4: Mention DEBUG_1284.

6 years agoAdjust some more files for dports.
Sascha Wildner [Sat, 8 Jun 2013 16:28:53 +0000 (18:28 +0200)]
Adjust some more files for dports.

6 years ago<sys/thread.h>: Remove two unnecessary forward declarations.
Sascha Wildner [Sat, 8 Jun 2013 11:42:15 +0000 (13:42 +0200)]
<sys/thread.h>: Remove two unnecessary forward declarations.

They are in <sys/msgport.h> which is included by <sys/thread.h>.

6 years agobuild.7: Some more clarification.
Sascha Wildner [Sat, 8 Jun 2013 10:13:50 +0000 (12:13 +0200)]
build.7: Some more clarification.

6 years agoAdjust some manual pages for dports.
Sascha Wildner [Sat, 8 Jun 2013 10:09:49 +0000 (12:09 +0200)]
Adjust some manual pages for dports.

6 years agoFix some printf()s.
Sascha Wildner [Fri, 7 Jun 2013 16:50:40 +0000 (18:50 +0200)]
Fix some printf()s.

6 years agobsd-family-tree: Sync with FreeBSD (adds NetBSD 6.1 and FreeBSD 8.4).
Sascha Wildner [Sat, 8 Jun 2013 08:31:53 +0000 (10:31 +0200)]
bsd-family-tree: Sync with FreeBSD (adds NetBSD 6.1 and FreeBSD 8.4).

6 years agosocket: Prioritiries rcvd message
Sepherosa Ziehau [Sat, 8 Jun 2013 03:21:04 +0000 (11:21 +0800)]
socket: Prioritiries rcvd message

6 years agoaltq: Add byte based limit and counter
Sepherosa Ziehau [Fri, 7 Jun 2013 09:18:33 +0000 (17:18 +0800)]
altq: Add byte based limit and counter

- This avoids having too much mbufs sitting on the send queue for TSO
  capable devices.  Even by default, DragonFly has already limited TSO
  burst to at most 4 TCP segments, for TSO capable devices, there still
  could be 4 times mbufs sitting on the send queue compared with non-TSO
  capable devices.
- This paves way for the AQMs, which require send queue byte counter,
  e.g. CoDel.

For ethernet devices, the byte based limit is (1514 x max_packets).

For other devices, e.g. pseudo devices, the byte based limit is
(MCLBYTES x max_packets).

6 years agokernel - Enable ncp shared locks by default.
Matthew Dillon [Fri, 7 Jun 2013 23:00:02 +0000 (16:00 -0700)]
kernel - Enable ncp shared locks by default.

* Change debug.ncp_shared_lock_disable to 0, enabling ncp shared
  locks in master by default.

6 years agokernel - Fix a case in the path lookup that results in high latencies
Matthew Dillon [Fri, 7 Jun 2013 22:13:21 +0000 (15:13 -0700)]
kernel - Fix a case in the path lookup that results in high latencies

* When many cpu cores are looking up paths with matching components,
  so as when doing a parallel buildworld or a parallel build of
  /usr/src/lib/libc, the namecache's shared/exclusive lock mechanic
  can break-down and create a chain-reaction of exclusive locks which
  destroys performance.

* When attempting to get a shared lock we were previously backing-down to
  an exclusive lock if the shared lock could not be obtained non-blocking.
  The original code could cause a chain-reaction of unnecessary exclusive

  Instead, we now only back-down to an exclusive lock only if the current
  thread already holds an exclusive lock on the same namecache entry
  or if we detect that another thread is trying to get an exclusive lock.
  Otherwise we fall-through and obtain the shared lock in a blocking manner.

Reported-by: ftigeot
6 years agowlan: 802.11 devices and vap is not ready for ALTQ packet schedulers
Sepherosa Ziehau [Fri, 7 Jun 2013 08:01:06 +0000 (16:01 +0800)]
wlan: 802.11 devices and vap is not ready for ALTQ packet schedulers

Current power saving queue inject and send queue flush code do not
work with ALTQ packet schedulers.

6 years agoaltq: Update comment
Sepherosa Ziehau [Fri, 7 Jun 2013 07:37:16 +0000 (15:37 +0800)]
altq: Update comment

6 years agoaltq: Make sure mbuf contains pkthdr in enqueue method
Sepherosa Ziehau [Fri, 7 Jun 2013 07:18:59 +0000 (15:18 +0800)]
altq: Make sure mbuf contains pkthdr in enqueue method

6 years agortchange: Don't migrate CPU when change routes ifaddr; use rt_threads
Sepherosa Ziehau [Fri, 7 Jun 2013 06:40:59 +0000 (14:40 +0800)]
rtchange: Don't migrate CPU when change routes ifaddr; use rt_threads

6 years agoin_ifadown: Don't migrate CPU when delete addr routes; use rt_threads
Sepherosa Ziehau [Fri, 7 Jun 2013 06:18:16 +0000 (14:18 +0800)]
in_ifadown: Don't migrate CPU when delete addr routes; use rt_threads

6 years agoif_detach: Don't migrate CPU when delete interface routes; use rt_threads
Sepherosa Ziehau [Fri, 7 Jun 2013 02:56:42 +0000 (10:56 +0800)]
if_detach: Don't migrate CPU when delete interface routes; use rt_threads

6 years ago<sys/cdefs.h>: Bring in a compatibility macro for C11's _Static_assert.
Sascha Wildner [Thu, 6 Jun 2013 18:45:04 +0000 (20:45 +0200)]
<sys/cdefs.h>: Bring in a compatibility macro for C11's _Static_assert.

Apparently gcc47 has support outside of C11, but for processing our
<complex.h> with gcc44, this is necessary.

Taken-from: FreeBSD

6 years agogcc44: Bring back an accidentally removed file.
Sascha Wildner [Thu, 6 Jun 2013 18:27:46 +0000 (20:27 +0200)]
gcc44: Bring back an accidentally removed file.

6 years agogcc: Stop installing GCC's tgmath.h to /usr/libdata/gcc{44,47}.
Sascha Wildner [Thu, 6 Jun 2013 18:20:10 +0000 (20:20 +0200)]
gcc: Stop installing GCC's tgmath.h to /usr/libdata/gcc{44,47}.

Before this commit, the recently imported <tgmath.h> (in
/usr/include when installed) wasn't taken because of GCC's
own copies in /usr/libdata/gcc{44,47}, which comes first
in the compiler's internal include search path.

Since it is a standard header, we want our version to be
taken, so stop installing GCC's version and remove it via
'make upgrade'.

There are no other standard headers in /usr/libdata/gcc{44,47}.

6 years ago<sys/cdefs.h>: Add some macros needed for our <tgmath.h>.
Sascha Wildner [Thu, 6 Jun 2013 18:11:04 +0000 (20:11 +0200)]
<sys/cdefs.h>: Add some macros needed for our <tgmath.h>.

Taken-from: FreeBSD

6 years agokernel - Fix several bugs in FAIRQ
Matthew Dillon [Thu, 6 Jun 2013 06:52:02 +0000 (23:52 -0700)]
kernel - Fix several bugs in FAIRQ

* Fix several possible overflows due to high-valued machclk_freq constants
  and uint's that should have been uint64's.  Among other things this fixes
  bandwidth calculations that could previously get into weird states.

* Refactor the fairq_selectq() routine to fix numerous cases where the
  head of the queue could get advanced multiple times without pulling a
  packet off the queue, causing packets in queues to be excessively

Both of these were rather serious issues.  Operation is far smoother with
the bugs fixed.

6 years agokernel - Increase IFQ_MAXLEN from 50 to 250
Matthew Dillon [Thu, 6 Jun 2013 04:02:18 +0000 (21:02 -0700)]
kernel - Increase IFQ_MAXLEN from 50 to 250

* IFQ_MAXLEN is used as the default for numerous pseudo-network drivers.
  The value 50 is just too low.  Increase to 250.

7 years ago/usr/Makefile: Add pkg-bootstrap target
John Marino [Wed, 5 Jun 2013 23:51:47 +0000 (01:51 +0200)]
/usr/Makefile: Add pkg-bootstrap target

New snapshots provide a pre-built "pkg" tool so pre-build dports
binaries can be installed easily.  However, upgrades from older releases
won't have "pkg" available, and for those systems they had to download
the entire dports repository just to build pkg in order to take advantage
of the available pre-built packages.

To fix this situation, and the situation where /usr/local/sbin/pkg is
lost for any reason, a new make target has been added to /usr/Makefile:

The pkg-bootstrap target will download a pre-built "pkg-static" program
along with pkg.conf and all the man pages.  In reality, pkg-static is
only used for one command, and that is to install a full "pkg" program
from the dragonfly repository.

If "pkg.conf" already exists, a message will instruct the user to move
it first.  If /usr/local/sbin/pkg already exists, the target won't work
and it won't even show as an option.

After pkg-static is installed, the user will be instructed to type
"rehash; pkg-static install -y pkg; rehash" which should result in the
system having the latest pkg on their system and thus can proceed to
install packages normally.

7 years agohammer2 - Adjust newfs_hammer2 for recent media changes
Matthew Dillon [Tue, 4 Jun 2013 21:42:52 +0000 (14:42 -0700)]
hammer2 - Adjust newfs_hammer2 for recent media changes

* Adjust newfs_hammer2 for recent media changes.  The freemap is now based
  in the volume header with a blockref set instead of a single blockref.

7 years agohammer2 - Add 'hammer2 freemap' directive
Matthew Dillon [Tue, 4 Jun 2013 21:41:50 +0000 (14:41 -0700)]
hammer2 - Add 'hammer2 freemap' directive

* Beef up 'show' and add the 'hammer2 freemap' directive to dump the

7 years agohammer2 - freemap part 3 - group by allocation size
Matthew Dillon [Tue, 4 Jun 2013 21:29:20 +0000 (14:29 -0700)]
hammer2 - freemap part 3 - group by allocation size

* Each freemap leaf represents ~2MB worth of storage.  Assign a radix to
  each leaf, limiting allocations from that leaf to that radix.

  This primarily results in inodes being grouped together, improving
  the performance for find, ls or other topological scans.  We could
  improve this but for now we'll stick with it as-is.

  This mechanic also allows us to use cluster_read().  This function is
  used for everything except volume-header and freemap elements.

* More formally handle logical sizes vs allocation sizes vs device I/O
  sizes.  For example, a 1KB inode allocates 1KB using 16KB device I/O's.

* Beef up the sysctl I/O counters.

7 years agorpc.statd(8): Fix warnings and bump WARNS to 6.
Sascha Wildner [Tue, 4 Jun 2013 17:27:16 +0000 (19:27 +0200)]
rpc.statd(8): Fix warnings and bump WARNS to 6.

7 years agoifsubque: Cut ties with ifqueue
Sepherosa Ziehau [Tue, 4 Jun 2013 09:36:44 +0000 (17:36 +0800)]
ifsubque: Cut ties with ifqueue

7 years agoifq: Add ifsq_poll_pktlen, which calculate the polled mbuf's length
Sepherosa Ziehau [Tue, 4 Jun 2013 09:09:07 +0000 (17:09 +0800)]
ifq: Add ifsq_poll_pktlen, which calculate the polled mbuf's length

Calculating the polled mbuf's length w/o ALTQ lock is not MPSAFE.

7 years agoifq/classic: Add pkthdr assertion
Sepherosa Ziehau [Tue, 4 Jun 2013 08:55:19 +0000 (16:55 +0800)]
ifq/classic: Add pkthdr assertion

7 years agoaltq: Remove the unused parameter 'mpolled' from dequeue method
Sepherosa Ziehau [Tue, 4 Jun 2013 08:24:48 +0000 (16:24 +0800)]
altq: Remove the unused parameter 'mpolled' from dequeue method

7 years agocam(3): Fix a wrong check and bump WARNS to 2.
Sascha Wildner [Sat, 1 Jun 2013 10:36:34 +0000 (12:36 +0200)]
cam(3): Fix a wrong check and bump WARNS to 2.

7 years agoifq: Remove the unused parameter 'mpolled' from ifq dequeue interface
Sepherosa Ziehau [Tue, 4 Jun 2013 02:00:27 +0000 (10:00 +0800)]
ifq: Remove the unused parameter 'mpolled' from ifq dequeue interface

The ifq_poll() -> ifq_dequeue() model is not MPSAFE, and mpolled has
not been used, i.e. set to NULL, for years; time to let it go.

7 years agomath.3/tgmath.3: Bump dates and fix minor mdoc issues.
Sascha Wildner [Mon, 3 Jun 2013 21:32:24 +0000 (23:32 +0200)]
math.3/tgmath.3: Bump dates and fix minor mdoc issues.

7 years agorconfig(8): Stop creating /usr/pkg/etc/mk.conf from the scripts.
Sascha Wildner [Mon, 20 May 2013 13:02:40 +0000 (15:02 +0200)]
rconfig(8): Stop creating /usr/pkg/etc/mk.conf from the scripts.

7 years agoAdd FreeBSD's <tgmath.h> tests.
Sascha Wildner [Mon, 3 Jun 2013 18:04:45 +0000 (20:04 +0200)]
Add FreeBSD's <tgmath.h> tests.

7 years agoAdd FreeBSD's libm tests.
Sascha Wildner [Sun, 2 Jun 2013 20:50:54 +0000 (22:50 +0200)]
Add FreeBSD's libm tests.

7 years agolibm: Fix an MLINKS typo.
Sascha Wildner [Mon, 3 Jun 2013 17:02:24 +0000 (19:02 +0200)]
libm: Fix an MLINKS typo.

7 years ago<complex.h>: Allow CMPLX CMPLXF CMPLXL in our default environment.
Sascha Wildner [Sun, 2 Jun 2013 20:49:18 +0000 (22:49 +0200)]
<complex.h>: Allow CMPLX CMPLXF CMPLXL in our default environment.

7 years agoBump library versions for libc and libm.
Peter Avalos [Sun, 2 Jun 2013 12:37:18 +0000 (05:37 -0700)]
Bump library versions for libc and libm.

I forgot to do this for the libm changes, and it's required since some
of the symbols moved around.

7 years agoStop overwriting /etc/services.
Peter Avalos [Sun, 2 Jun 2013 08:21:46 +0000 (01:21 -0700)]
Stop overwriting /etc/services.

Users should be able to configure their services database, so those
changes shouldn't be blown away when they do a make upgrade.

Dragonfly-bug: <http://bugs.dragonflybsd.org/issues/2564>

7 years agoAdd <tgmath.h>.
Peter Avalos [Sun, 2 Jun 2013 06:51:25 +0000 (23:51 -0700)]
Add <tgmath.h>.

Obtained-from:   FreeBSD

7 years agoBring in FreeBSD's msun code for our libm.
Peter Avalos [Mon, 8 Apr 2013 22:04:50 +0000 (15:04 -0700)]
Bring in FreeBSD's msun code for our libm.

Our current libm is a mix of NetBSD and FreeBSD.  To ease
maintainability, sync with FreeBSD as requested by John Marino.

Obtained-from:   FreeBSD

7 years ago<iso646.h>: Avoid conflicts w/ C++ keywords.
Peter Avalos [Fri, 31 May 2013 11:18:28 +0000 (04:18 -0700)]
<iso646.h>: Avoid conflicts w/ C++ keywords.

Fix whitespace too.

Obtained-from:   FreeBSD

7 years agompt.4: Uncomment reference to mps(4).
Sascha Wildner [Sun, 2 Jun 2013 03:12:12 +0000 (05:12 +0200)]
mpt.4: Uncomment reference to mps(4).

7 years agobce.4: Remove unnecessary .Pp and trailing whitespace.
Sascha Wildner [Sun, 2 Jun 2013 02:28:18 +0000 (04:28 +0200)]
bce.4: Remove unnecessary .Pp and trailing whitespace.

7 years agompt(4): Use cam_calc_geometry() directly.
Sascha Wildner [Sun, 2 Jun 2013 02:08:34 +0000 (04:08 +0200)]
mpt(4): Use cam_calc_geometry() directly.

7 years agosigaltstack(2): Bring it closer to POSIX.
Sascha Wildner [Sat, 1 Jun 2013 19:05:30 +0000 (21:05 +0200)]
sigaltstack(2): Bring it closer to POSIX.

POSIX says that sigaltstack() shall return EINVAL if the "ss argument
is not a null pointer, and the ss_flags member pointed to by ss contains
flags other than SS_DISABLE".

7 years agokernel/mpt: Remove empty macros.
Sascha Wildner [Fri, 31 May 2013 19:54:34 +0000 (21:54 +0200)]
kernel/mpt: Remove empty macros.

7 years agokernel/mpt: Fix two operator precedence mistakes.
Sascha Wildner [Sun, 26 May 2013 19:59:06 +0000 (21:59 +0200)]
kernel/mpt: Fix two operator precedence mistakes.

7 years agoGive /usr/local/... precedence over /usr/pkg/... in various paths.
Sascha Wildner [Mon, 20 May 2013 12:50:45 +0000 (14:50 +0200)]
Give /usr/local/... precedence over /usr/pkg/... in various paths.

7 years agoroute: Remove the unused rt_addrinfo parameter from ifa_rtrequest
Sepherosa Ziehau [Fri, 31 May 2013 09:36:42 +0000 (17:36 +0800)]
route: Remove the unused rt_addrinfo parameter from ifa_rtrequest

7 years agokernel - Fix TDF_NOFAULT issue related to vm.read_shortcut_enable.
Matthew Dillon [Fri, 31 May 2013 06:16:29 +0000 (23:16 -0700)]
kernel - Fix TDF_NOFAULT issue related to vm.read_shortcut_enable.

* TDF_NOFAULT was not preventing vm_fault() from calling vm_wait_pfault(),
  which could result in a deadlock in the read_shortcut path.  A combination
  of a low-memory situation plus the read_shortcut hitting the vm_fault
  sequence from uiomove_nofault().

7 years agoCorrect BSD License clause numbering from 1-2-4 to 1-2-3.
Justin C. Sherrill [Fri, 31 May 2013 00:27:15 +0000 (20:27 -0400)]
Correct BSD License clause numbering from 1-2-4 to 1-2-3.

Apparently everyone's doing it:

Submitted-by: "Eitan Adler" <lists at eitanadler.com>
7 years agocpdup - roll 1.18 for ports consumers
Matthew Dillon [Thu, 30 May 2013 20:54:44 +0000 (13:54 -0700)]
cpdup - roll 1.18 for ports consumers

* Add the -n option.  This is the not-for-real option.  cpdup will go through
  the motions but not actually take any action.  Useful for validating a
  topology without modifying it, e.g. 'cpdup -n -v -VV source target'.

* Fix clang static/global and alignment warnings

* Bump rev to 1.18

* Porters please note that this release has added an __aligned(n)
  directive to two structures.  BSDs and linux's should be able to
  handle this no-problem but just like __printflike() it is a bit
  of a departure from standard.

* Ports URL: fetch http://apollo.backplane.com/FreeBSDPorts/cpdup-1.18.tar.gz

Submitted-by: (static/global fixes) "Eitan Adler" <lists@eitanadler.com>
Submitted-by: (n-option & alignment fixes) dillon
Testing-by: "Eitan Adler" <lists@eitanadler.com>
7 years agoem/emx: Unbreak vlan settings
Sepherosa Ziehau [Thu, 30 May 2013 12:33:21 +0000 (20:33 +0800)]
em/emx: Unbreak vlan settings

Obtained-from: FreeBSD

7 years agobce.4: Fix wording and typos in a number of places.
Sascha Wildner [Thu, 30 May 2013 09:55:55 +0000 (11:55 +0200)]
bce.4: Fix wording and typos in a number of places.

7 years agovmstat: Update man page for the -v
Sepherosa Ziehau [Thu, 30 May 2013 09:57:32 +0000 (17:57 +0800)]
vmstat: Update man page for the -v

7 years agobnx: Add comment about how the RSS redirect table is configured
Sepherosa Ziehau [Thu, 30 May 2013 09:52:10 +0000 (17:52 +0800)]
bnx: Add comment about how the RSS redirect table is configured

7 years agobce: Update man page
Sepherosa Ziehau [Thu, 30 May 2013 09:48:50 +0000 (17:48 +0800)]
bce: Update man page

7 years agoevtranalyze(1): Move it to using ploticus from dports.
Sascha Wildner [Mon, 20 May 2013 19:00:00 +0000 (21:00 +0200)]
evtranalyze(1): Move it to using ploticus from dports.

7 years agokernel/kern_time.c: Mark the hack to not settimeofday(0) with XXX.
Sascha Wildner [Mon, 20 May 2013 18:54:59 +0000 (20:54 +0200)]
kernel/kern_time.c: Mark the hack to not settimeofday(0) with XXX.

7 years agoSwitch to /usr/local/... paths in several files.
Sascha Wildner [Mon, 20 May 2013 18:53:17 +0000 (20:53 +0200)]
Switch to /usr/local/... paths in several files.

7 years agoPoint to more neutral, yet dports biased directories from manual pages.
Sascha Wildner [Thu, 30 May 2013 08:27:16 +0000 (10:27 +0200)]
Point to more neutral, yet dports biased directories from manual pages.

Most of them are identical in pkgsrc.

7 years agocarp: Fix routes reset issue
Sepherosa Ziehau [Wed, 29 May 2013 12:41:40 +0000 (20:41 +0800)]
carp: Fix routes reset issue

Before this commit, routes related to carp or carp backing device were
reset, i.e. only prefix route was left, when carp state changed, e.g.
carp is down.

This commit fixes this routes reset issue by replacing the carp or carp
device routes' rt_ifa and rt_ifp with proper ifaddr and ifnet, instead
of discarding the old routes and installing the new prefix route.

Reported-by: robgar
7 years agocarp: Take netmask into consideration when picking up backing address
Sepherosa Ziehau [Wed, 29 May 2013 09:36:08 +0000 (17:36 +0800)]
carp: Take netmask into consideration when picking up backing address

7 years agocarp: Perfer addresses with prefix route installed.
Sepherosa Ziehau [Mon, 27 May 2013 14:24:50 +0000 (22:24 +0800)]
carp: Perfer addresses with prefix route installed.

7 years agopkg_radd - update to also handle dports
Matthew Dillon [Thu, 30 May 2013 02:24:40 +0000 (19:24 -0700)]
pkg_radd - update to also handle dports

* Detect that dports has been installed.  dports takes priority over
  pkgsrc in this situation.

* For dports we just 'pkg install ...'.  The script also warns if the
  /usr/local/etc/pkg.conf file has not been installed.

7 years agonrelease - Set dports default, add dports defaults
Matthew Dillon [Wed, 29 May 2013 22:45:30 +0000 (15:45 -0700)]
nrelease - Set dports default, add dports defaults

* Default DPORTS_PATH to /usr/dports.

* Add dports defaults for the git build to match the git we intend to
  prepackage with the installation.

7 years agonrelease: Switch over to dports for all packages.
Sascha Wildner [Sun, 19 May 2013 12:12:42 +0000 (14:12 +0200)]
nrelease: Switch over to dports for all packages.

7 years agofix MXCSR default value
Markus Pfeiffer [Sat, 18 May 2013 14:56:47 +0000 (14:56 +0000)]
fix MXCSR default value

XEN fails to initialise its vcpus to behave like actual cpus. One
instance of this is that the MXCSR is not setup to the default
value documented in as documented in AMD64 Architecture
Programmer's Manual Volume 1: Application Programming, Section
Section 4.3.2

7 years agophantasia(6): Fix two operator precedence mistakes.
Sascha Wildner [Sun, 26 May 2013 19:59:37 +0000 (21:59 +0200)]
phantasia(6): Fix two operator precedence mistakes.

7 years agolibc/citrus: Remove unneeded check (n is never < 0).
Sascha Wildner [Sun, 26 May 2013 20:28:36 +0000 (22:28 +0200)]
libc/citrus: Remove unneeded check (n is never < 0).

7 years agolibc/citrus: Fix an assertion (& becomes &&).
Sascha Wildner [Sun, 26 May 2013 20:36:13 +0000 (22:36 +0200)]
libc/citrus: Fix an assertion (& becomes &&).

7 years agojme.4: Fix some wording and typos.
Sascha Wildner [Sun, 26 May 2013 12:27:41 +0000 (14:27 +0200)]
jme.4: Fix some wording and typos.

7 years agomrouted(8): Fix a wrong check that was always false.
Sascha Wildner [Sun, 26 May 2013 09:29:41 +0000 (11:29 +0200)]
mrouted(8): Fix a wrong check that was always false.

7 years agofetch(1): Fix a wrong check that was always false.
Sascha Wildner [Sun, 26 May 2013 09:29:02 +0000 (11:29 +0200)]
fetch(1): Fix a wrong check that was always false.

7 years agolibkvm: Remove a redundant check.
Sascha Wildner [Sun, 26 May 2013 09:27:16 +0000 (11:27 +0200)]
libkvm: Remove a redundant check.

7 years agosplit(1): Add -d which allows a numeric suffix instead of an alphabetic one.
Sascha Wildner [Sat, 25 May 2013 20:03:07 +0000 (22:03 +0200)]
split(1): Add -d which allows a numeric suffix instead of an alphabetic one.

Submitted-by: Eitan Adler <lists@eitanadler.com>
Taken-from:   FreeBSD (r250432, r250882)

7 years agosplit(1): Add missing static declarations.
Sascha Wildner [Sat, 25 May 2013 19:24:04 +0000 (21:24 +0200)]
split(1): Add missing static declarations.

Submitted-by: Eitan Adler <lists@eitanadler.com>
7 years agosplit(1): Retain previous error message.
Sascha Wildner [Sat, 25 May 2013 12:55:22 +0000 (14:55 +0200)]
split(1): Retain previous error message.

7 years agosplit(1): Use dehumanize_number(3) for -b.
Sascha Wildner [Sat, 25 May 2013 12:46:09 +0000 (14:46 +0200)]
split(1): Use dehumanize_number(3) for -b.