6 years agoMerge branch 'vendor/LIBPCAP'
Matthew Dillon [Sat, 3 May 2014 15:50:32 +0000 (08:50 -0700)]
Merge branch 'vendor/LIBPCAP'

Merge for 1.4.0

6 years agoImport libpcap-1.4.0. gitea/vendor/LIBPCAP origin/vendor/LIBPCAP
Matthew Dillon [Sat, 3 May 2014 15:46:52 +0000 (08:46 -0700)]
Import libpcap-1.4.0.

See CHANGES for the details.

6 years agodrm/i915: Use the Linux workqueue API
François Tigeot [Sat, 3 May 2014 09:12:14 +0000 (11:12 +0200)]
drm/i915: Use the Linux workqueue API

Opportunistically reduce differences with Linux 3.8.13

6 years agolinux/workqueue.h: Adapt to DragonFly
François Tigeot [Sat, 3 May 2014 08:55:10 +0000 (10:55 +0200)]
linux/workqueue.h: Adapt to DragonFly

* Protect callout structures from concurrent operations on MP machines

* Add some functions used by the drm/i915 code from Linux 3.8.x

6 years agolinux/timer.h: Add round_jiffies_up_relative()
François Tigeot [Sat, 3 May 2014 08:53:41 +0000 (10:53 +0200)]
linux/timer.h: Add round_jiffies_up_relative()

6 years agodrm: Import linux/workqueue.h from FreeBSD's OFED stack
François Tigeot [Sat, 3 May 2014 08:52:02 +0000 (10:52 +0200)]
drm: Import linux/workqueue.h from FreeBSD's OFED stack

6 years ago<setjmp.h>: <sys/cdefs.h> must be included before <machine/setjmp.h>.
Sascha Wildner [Sat, 3 May 2014 00:25:52 +0000 (02:25 +0200)]
<setjmp.h>: <sys/cdefs.h> must be included before <machine/setjmp.h>.

6 years agoRemove some more files via 'make upgrade' and fix a typo.
Sascha Wildner [Fri, 2 May 2014 08:14:24 +0000 (10:14 +0200)]
Remove some more files via 'make upgrade' and fix a typo.

6 years agopcidevs: Remove some IDs we don't use.
Sascha Wildner [Fri, 2 May 2014 00:22:22 +0000 (02:22 +0200)]
pcidevs: Remove some IDs we don't use.

6 years agokernel/ral: Switch back to using pcidevs.h.
Sascha Wildner [Fri, 2 May 2014 00:21:58 +0000 (02:21 +0200)]
kernel/ral: Switch back to using pcidevs.h.

It was lost with feb94d24033db5d8fe8e5e4807103d48f3638ceb.

6 years agoRemove ATM protocol support.
Sascha Wildner [Thu, 1 May 2014 22:31:57 +0000 (00:31 +0200)]
Remove ATM protocol support.

FreeBSD ditched it about 6 years ago. Also, I'm not sure if this ever
worked on x86_64.

6 years agokernel: Sync ACPICA with Intel's version 20140424.
Sascha Wildner [Wed, 30 Apr 2014 10:25:14 +0000 (12:25 +0200)]
kernel: Sync ACPICA with Intel's version 20140424.

Some highlights:

* Implemented support to skip/ignore NULL address entries in the

* Removed an extraneous error message for the case where there
  are a large number of system GPEs (> 124).

* Implemented and deployed additional configuration support for
  the public ACPICA external interfaces.

* iASL and disassembler: Add full support for the LPIT table
  (Low Power Idle Table).

* AcpiDump utility:
  1) Add option to force the use of the RSDT (over the XSDT).
  2) Improve validation of the RSDP signature (use 8 chars
     instead of 4).

* Debugger: Updated the GPE command (which simulates a GPE by
  executing the GPE code paths in ACPICA).

* Unix application OSL: Update line-editing support.

For a more detailed list, see sys/contrib/dev/acpica/changes.txt.

6 years agoAdd the <stdnoreturn.h> header for C11 conformance.
Sascha Wildner [Wed, 30 Apr 2014 09:39:03 +0000 (11:39 +0200)]
Add the <stdnoreturn.h> header for C11 conformance.

Per clause 7.23 from the final draft.

Taken-from: FreeBSD

6 years agoAdd the <stdalign.h> header for C11 conformance.
Sascha Wildner [Mon, 21 Apr 2014 14:08:47 +0000 (16:08 +0200)]
Add the <stdalign.h> header for C11 conformance.

Per clause 7.15 from the final draft.

Along with it, add some helper macros to <sys/cdefs.h>.

While here, adjust an #ifdef in <sys/cdefs.h>.

Taken-from: FreeBSD

6 years ago<assert.h>: Define a static_assert macro for C11.
Sascha Wildner [Mon, 21 Apr 2014 12:27:35 +0000 (14:27 +0200)]
<assert.h>: Define a static_assert macro for C11.

Per clause 7.2 from the final draft:

"The header <assert.h> defines the assert and static_assert macros [...]
 The macro static_assert expands to _Static_assert."

6 years agoOpenSSL: Check the correct pointer in EC_POINT_invert.
Sascha Wildner [Wed, 30 Apr 2014 09:33:31 +0000 (11:33 +0200)]
OpenSSL: Check the correct pointer in EC_POINT_invert.

It looks like this was copied from EC_POINT_dbl() but the check was
overlooked when adjusting.

Reported-by: plundra on #dragonflybsd
Taken-from:  OpenBSD

6 years agoOpenSSL: Add fix for CVE-2010-5298.
Sascha Wildner [Wed, 30 Apr 2014 08:58:52 +0000 (10:58 +0200)]
OpenSSL: Add fix for CVE-2010-5298.

6 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Markus Pfeiffer [Tue, 29 Apr 2014 22:47:05 +0000 (23:47 +0100)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

6 years agousr.bin/top: Correct formatting for PIDs
Markus Pfeiffer [Tue, 29 Apr 2014 22:44:53 +0000 (23:44 +0100)]
usr.bin/top: Correct formatting for PIDs

DragonFly PIDs can now be up to 6 digits long

6 years agokernel/acpi: Add the ACPI_LV_REPAIR debug level (added in ACPICA 20091214).
Sascha Wildner [Tue, 29 Apr 2014 20:48:43 +0000 (22:48 +0200)]
kernel/acpi: Add the ACPI_LV_REPAIR debug level (added in ACPICA 20091214).

Also sync the list of debug levels in the manual page.

6 years agobin/ps: adjust PIDLEN
Markus Pfeiffer [Tue, 29 Apr 2014 19:49:40 +0000 (20:49 +0100)]
bin/ps: adjust PIDLEN

DragonFly's pids can now become 6 digits long

6 years agobsd-family-tree: Sync with FreeBSD.
Sascha Wildner [Mon, 28 Apr 2014 17:05:57 +0000 (19:05 +0200)]
bsd-family-tree: Sync with FreeBSD.

6 years agopflogd: Make pflog readable by tcpdump
Peeter [Mon, 28 Apr 2014 08:12:00 +0000 (10:12 +0200)]
pflogd: Make pflog readable by tcpdump

pflogd was previously writing incorrectly to the pflog logfile

Changes obtained from FreeBSD

6 years agodrm/i915: Reduce i915_irq.c diffs with Linux 3.8.13
François Tigeot [Sun, 27 Apr 2014 09:26:47 +0000 (11:26 +0200)]
drm/i915: Reduce i915_irq.c diffs with Linux 3.8.13

* i915_handle_rps_change() renamed to ironlake_handle_rps_change()

* pch_irq_handler() replaced by ibx_irq_handler() and cpt_irq_handler()

* Make ironlake_irq_handler() more similar to its Linux 3.8.13 version

* Make ivybridge_irq_handler() more similar to its Linux 3.8.13 version

6 years agokernel/vtnet: Zeroing memory before reusing.
Imre Vadasz [Sat, 26 Apr 2014 10:01:13 +0000 (12:01 +0200)]
kernel/vtnet: Zeroing memory before reusing.

* Forgot a memset to clear sc->vtnet_macfilter before reusing.

* Forgot an __aligned(2) in another case where we need a local
  variable of size 2 to be stored in physically contiguous memory.

* Deletes an unneeded assertion and comment.

6 years agokernel/acpi: Improve a message a bit.
Sascha Wildner [Sat, 26 Apr 2014 10:21:27 +0000 (12:21 +0200)]
kernel/acpi: Improve a message a bit.

6 years agokernel/vtnet: Replace a kmalloc by contigmalloc.
Imre Vadasz [Sat, 26 Apr 2014 06:36:33 +0000 (08:36 +0200)]
kernel/vtnet: Replace a kmalloc by contigmalloc.

* To get physically contiguous memory, we have to use contigmalloc instead
  of kmalloc.

* Use a 2 byte alignment to make sure that a 2 byte local variable is
  stored in physically contiguous memory.

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

6 years agovtnet.4: Fix SYNOPSIS ("device if_vtnet" -> "device vtnet").
Sascha Wildner [Fri, 25 Apr 2014 13:45:44 +0000 (15:45 +0200)]
vtnet.4: Fix SYNOPSIS ("device if_vtnet" -> "device vtnet").

6 years agoAdjust newsyslog(8) and pkill(1) for the new PID_MAX.
Sascha Wildner [Wed, 23 Apr 2014 18:00:47 +0000 (20:00 +0200)]
Adjust newsyslog(8) and pkill(1) for the new PID_MAX.

Reported-by: marino
6 years agokernel/drm: Fix two warnings in the radeon driver.
Sascha Wildner [Wed, 23 Apr 2014 09:35:34 +0000 (11:35 +0200)]
kernel/drm: Fix two warnings in the radeon driver.

6 years agovtnet.4: Use .Mt for email addresses.
Sascha Wildner [Wed, 23 Apr 2014 07:52:47 +0000 (09:52 +0200)]
vtnet.4: Use .Mt for email addresses.

6 years agohammer2 - Retool dmsg mechanics to improve virtual circuit design 1/2
Matthew Dillon [Wed, 23 Apr 2014 07:04:04 +0000 (00:04 -0700)]
hammer2 - Retool dmsg mechanics to improve virtual circuit design 1/2

* Rip-out the circuit structures and forging code.  These changes simplify
  the DMSG code considerably.

* Retool the core command/response messaging mechanics to allow either
  side of a transaction to initiate commands and receive responses.

  This means we cannot use DMSGF_REPLY to determine whether the transmit-side
  or receive-side state RBTREE holds the msgid.  Instead we add two more
  flags DMSGF_REVTRANS and DMSGF_REVCIRC to tell the receiver which RBTREE
  holds the msgid and/or circuit id.

* Retool to allow transaction stacking.  Sub-transactions can now run under
  their parents.

* Retool the transaction code to provide virtual circuit functionality
  through the use of transaction stacking.

  With these changes, the normal SPAN mechanism which operates using
  open transactions can also be used to route messages over the SPAN.
  There is no longer a need to forge a return path because sub-transaction
  commands can now be initiated 'out' over an active, received SPAN

  This part is not completely working yet, it needs the actual routing
  code and some adjustments to the SPAN mechanism to prevent path ripups
  from interfering with any in-progress transactions.  Ultimately the
  availability of a new path would have two be detected by the end points
  so new 'connections' can be forged over the new, better path.

6 years agodrm/i915: Use the Linux timer API
François Tigeot [Tue, 22 Apr 2014 18:21:11 +0000 (20:21 +0200)]
drm/i915: Use the Linux timer API

Reduce differences with Linux 3.8.13

6 years agodrm: Use the Linux timer API
François Tigeot [Tue, 22 Apr 2014 18:18:43 +0000 (20:18 +0200)]
drm: Use the Linux timer API

Reduce differences with Linux 3.8.13

6 years agolinux/timer.h: Adapt to Dragonfly
François Tigeot [Tue, 22 Apr 2014 18:15:34 +0000 (20:15 +0200)]
linux/timer.h: Adapt to Dragonfly

* Protect callout structures from concurrent operations on MP machines

* Expand the API for use with drm code from Linux 3.8.x

6 years agodrm: Import linux/timer.h from FreeBSD's OFED stack
François Tigeot [Tue, 22 Apr 2014 18:14:01 +0000 (20:14 +0200)]
drm: Import linux/timer.h from FreeBSD's OFED stack

6 years agokernel - Improve pid-reuse algorithm, fix bug
Matthew Dillon [Mon, 21 Apr 2014 22:00:00 +0000 (15:00 -0700)]
kernel - Improve pid-reuse algorithm, fix bug

* Fix a bug where under extreme loads it was possible for a PID to be
  allocated twice.

* Implement a minimum pid-reuse delay of 10 seconds.  No pid, session id,
  or pgid will be reused for at least 10 seconds after being reaped.

  This shouldn't really be necessary but it should help scripts, particularly
  bulk builds, which rely on testing out-of-band PIDs with pwait.

* Increase PID_MAX from 99999 to 999999

Reported-by: marino
6 years agovtnet.4: Add a reference to ifmedia(4).
Sascha Wildner [Mon, 21 Apr 2014 21:56:40 +0000 (23:56 +0200)]
vtnet.4: Add a reference to ifmedia(4).

6 years agoImporting slightly modified virtio-net by vsrinivas
Imre Vadasz [Sat, 19 Apr 2014 16:44:45 +0000 (18:44 +0200)]
Importing slightly modified virtio-net by vsrinivas

* TSO and LRO are off for now by default.

* Makefile changes. Adapting manpages. Fixing a typo in vtnet_tx_offload.

* Allocating tx headers with contigmalloc during attach instead of using
  kmalloc in the transmit path.
  In the worst case we need one tx header for two virtqueue ring entries.

* Additionally some whitespace fixes

6 years agokernel: Remove some unused options (forgotten in the IPX removal).
Sascha Wildner [Mon, 21 Apr 2014 18:21:44 +0000 (20:21 +0200)]
kernel: Remove some unused options (forgotten in the IPX removal).

6 years agohammer2 - more dmsg/separation work
Matthew Dillon [Mon, 21 Apr 2014 03:12:01 +0000 (20:12 -0700)]
hammer2 - more dmsg/separation work

* Use msg->tcmd in a few places.

* Remove some debugging.

* Move the iocom in the hammer2 VFS from the pmp to the hmp, allowing
  all supported PFSs to be advertised without having to mount each one.

* Preliminary work on hammer2-generated SPANs for all PFSs on a
  hammer2_volume.  Since multiple PFSs can be advertised, we can
  no longer use AUTOTXSPAN (which can only transmit one).

* More adjustments to newfs_hammer2.  When generating multiple PFSs,
  each one is given its own clid and fsid.

6 years agohammer2 - more dmsg/separation work
Matthew Dillon [Mon, 21 Apr 2014 03:07:24 +0000 (20:07 -0700)]
hammer2 - more dmsg/separation work

* More separation work in libdmsg, kern_dmsg.c, and kernel dmsg consumers.

* subr_diskiocom.c should no longer need hammer2_disk.h (sys/dmsg.h)
  for the kernel build.

* Add dmsg->tcmd to smooth some switch() use cases.

6 years agoRevert "Add missing libraries to some program Makefiles"
François Tigeot [Sun, 20 Apr 2014 18:54:29 +0000 (20:54 +0200)]
Revert "Add missing libraries to some program Makefiles"

This reverts commit 35617968ec499b8b149c69bdcacfb952b81264bc.

* It turns out the above referenced changes were not necessary; other
  /lib fixes made the link issue go away.

* This commit should fix issue #2661

6 years agoRemove support for the IPX and NCP protocols, and for NWFS.
Sascha Wildner [Sun, 20 Apr 2014 14:38:10 +0000 (16:38 +0200)]
Remove support for the IPX and NCP protocols, and for NWFS.

This was on the list for a longer time now. FreeBSD removed it
recently, too. Their commit msg has some more info:

"IPX was a network transport protocol in Novell's NetWare network
 operating system from late 80s and then 90s. The NetWare itself
 switched to TCP/IP as default transport in 1998. Later, in this
 century the Novell Open Enterprise Server became successor of
 Novell NetWare. The last release that claimed to still support
 IPX was OES 2 in 2007. Routing equipment vendors (e.g. Cisco)
 discontinued support for IPX in 2011."

The commit removes support for NCP (NetWare Core Protocol) and
NWFS (NetWare File System) along with it (both gone from FreeBSD
too since a while).

6 years agoroute.8: Remove NS remains.
Sascha Wildner [Sun, 20 Apr 2014 12:04:41 +0000 (14:04 +0200)]
route.8: Remove NS remains.

6 years agoRemove some XEROX Network Systems (NS) protocol remains.
Sascha Wildner [Sun, 20 Apr 2014 11:43:15 +0000 (13:43 +0200)]
Remove some XEROX Network Systems (NS) protocol remains.

We removed most of it in 2011 (62b5ec1d702a90f4c4f06347b3ad258a29ff8929).

6 years agohammer2 - more dmsg/separation work, add nmasters field to inode
Matthew Dillon [Sun, 20 Apr 2014 03:56:14 +0000 (20:56 -0700)]
hammer2 - more dmsg/separation work, add nmasters field to inode

* More separation and stability work

* Remove unused HAMMER2_OPFLAG_SUPROOT (the super-root can be
  distinguished by pfs_type).

* Add pfs_nmasters field to the inode structure.  This will be
  used to record how many hard masters a PFS has so the
  cluster code can determine the status of the cluster.

6 years agodmsg, hammer2 - refactor remove hammer2-specific code
Matthew Dillon [Sun, 20 Apr 2014 03:55:28 +0000 (20:55 -0700)]
dmsg, hammer2 - refactor remove hammer2-specific code

* More cleanups in libdmsg and various hammer2 utilities

* Stability pass, get the hammer2 service demon working again.

6 years agohammer2 - Revise newfs_hammer2
Matthew Dillon [Sun, 20 Apr 2014 00:56:57 +0000 (17:56 -0700)]
hammer2 - Revise newfs_hammer2

* Bring newfs_hammer2 up-to-date with the cluster mechanics I intend to use
  for the filesytem.

  Generally change the default label from "ROOT" to "LOCAL", the intention
  being that all formatted volumes will at least mount device@LOCAL in order
  to make a HAMMER2 volume available to the cluster protocol.  Once the
  volume is made available, the intension is to then allow other PFSs can
  be created/deleted/managed via the cluster protocol.

  newfs_hammer2 will also create a BOOT and ROOT PFS by default, intended for
  simple non-clustered configurations, and the -L label option works
  differently now.

* Generally speaking, all block devices to be used in the cluster must be
  formatted with newfs_hammer2.  A formatted HAMMER2 volume can be used to
  host any number of PFSs (Pseudo-FileSystems).  Each PFS is independent
  and can be part of different clusters.

6 years agokernel: fix buildkernel by adding include to subr_diskiocom.c
Markus Pfeiffer [Sat, 19 Apr 2014 20:52:42 +0000 (21:52 +0100)]
kernel: fix buildkernel by adding include to subr_diskiocom.c

Include vfs/hammer2/hammer2_disk.h to sys/kern/subr_diskiocom.c

6 years agohammer2 - refactor libdmsg volume configuration
Matthew Dillon [Sat, 19 Apr 2014 19:55:21 +0000 (12:55 -0700)]
hammer2 - refactor libdmsg volume configuration

* Move the libdmsg volume configuration structures and commands, which
  are hammer2-specific, over to hammer2.

6 years agolibdmsg - refactor remove hammer2-specific code
Matthew Dillon [Sat, 19 Apr 2014 19:52:38 +0000 (12:52 -0700)]
libdmsg - refactor remove hammer2-specific code

* Remove hammer2-specific code.

* Refactor the callback API to allow the hammer service code to handle
  the H2-specific LNK_CONN commands... mostly VOLCONF.

6 years agoExclude libdmsg temporarily from the build until it is fixed.
Sascha Wildner [Sat, 19 Apr 2014 17:58:44 +0000 (19:58 +0200)]
Exclude libdmsg temporarily from the build until it is fixed.

Requested-by: dillon
6 years agonetinet/in - Fix yet another NULL pointer panic.
Antonio Huete Jimenez [Tue, 15 Apr 2014 14:20:16 +0000 (16:20 +0200)]
netinet/in - Fix yet another NULL pointer panic.

DragonFly-bug: <http://bugs.dragonflybsd.org/issues/2662>
Submitted-by: Vasily Postnicov
This commit closes #2662

6 years agopasswd(1): Allow password changes for PAM users
François Tigeot [Sat, 19 Apr 2014 08:32:03 +0000 (10:32 +0200)]
passwd(1): Allow password changes for PAM users

* passwd(1) previously only allowed changes for local or NIS users, which
  doesn't make sense

* Fixes FreeBSD PR bin/59638

* Tested with a DragonFly (password change) and a Debian system (login)

6 years agohammer2 - Shift dmsg structures around
Matthew Dillon [Sat, 19 Apr 2014 00:37:12 +0000 (17:37 -0700)]
hammer2 - Shift dmsg structures around

* Shift dmsg structures around so sys/dmsg.h does not contain hammer2-specific
  structures.  Move those structures to hammer2_disk.h

6 years agourtwn.4: Fix synopsis (usb4bsd -> usb).
Sascha Wildner [Thu, 17 Apr 2014 13:21:31 +0000 (15:21 +0200)]
urtwn.4: Fix synopsis (usb4bsd -> usb).

6 years agoDynamic root: Add "/lib" to gold and ld linker search paths
John Marino [Thu, 17 Apr 2014 07:06:17 +0000 (09:06 +0200)]
Dynamic root: Add "/lib" to gold and ld linker search paths

This fixes numerous new dports failures seen during linking.

6 years agomount{,d}(8): Use the pidfile(3) API for handling mountd's PID file.
Sascha Wildner [Wed, 16 Apr 2014 17:40:07 +0000 (19:40 +0200)]
mount{,d}(8): Use the pidfile(3) API for handling mountd's PID file.

Taken-from: FreeBSD

6 years agolibthread_xu - Clean up the red zone on library unload
Matthew Dillon [Wed, 16 Apr 2014 17:01:14 +0000 (10:01 -0700)]
libthread_xu - Clean up the red zone on library unload

* If the main program is not linked against -pthread but dynamically
  loads a shared library that is via dlopen(), then dlclose()'s it,
  libthread_xu leaves red-zone and cached thread stacks dangling.

  The second attempt to (indirectly) load libthread_xu then fails with a
  red-zone panic.

* Add a destructor for libthread_xu to unmap the red-zone and to clean out
  any cached thread stacks.

* Note that neither libthread_xu nor most other large libraries are designed
  to be unloaded.  That is, even if loading/unloading works, numerous libraries
  will almost certainly leak memory.  This change prevents the fatal error but
  doesn't fix the general memory leakage problem.

  IMHO Only libraries designed to be unloadable should be unloaded.

Reported-by: Vasily Postnicov <shamaz.mazum@gmail.com>
6 years agoFix a number of typos in messages and manual pages.
Sascha Wildner [Wed, 16 Apr 2014 16:34:59 +0000 (18:34 +0200)]
Fix a number of typos in messages and manual pages.

6 years agoinitrd: Fix installation during make release
François Tigeot [Wed, 16 Apr 2014 08:47:14 +0000 (10:47 +0200)]
initrd: Fix installation during make release

* mkinitrd needs to know ramdisk images are to be installed in
  ${DESTDIR}/boot/kernel and not just /boot/kernel

* ${DESTDIR}/boot/kernel also has to exist first. Create it with

6 years agoloader/acpi: Fix/remove some comments and remove a misleading error msg.
Sascha Wildner [Tue, 15 Apr 2014 20:10:29 +0000 (22:10 +0200)]
loader/acpi: Fix/remove some comments and remove a misleading error msg.

6 years agoacpi: machdep.acpi_root should have the RSDP, so taking that should be fine.
Sascha Wildner [Tue, 15 Apr 2014 20:07:27 +0000 (22:07 +0200)]
acpi: machdep.acpi_root should have the RSDP, so taking that should be fine.

6 years agokernel/acpi: In the OS dependent layer, sync the debug code w/ FreeBSD.
Sascha Wildner [Tue, 15 Apr 2014 19:28:49 +0000 (21:28 +0200)]
kernel/acpi: In the OS dependent layer, sync the debug code w/ FreeBSD.

* Remove an unused function.

* Enter the debugger only when ACPI_DEBUG is set.

* Fix indent and whitespace.

6 years agoinitrd: Not everyone keeps their source in /usr/src.
Sascha Wildner [Tue, 15 Apr 2014 19:24:05 +0000 (21:24 +0200)]
initrd: Not everyone keeps their source in /usr/src.

6 years agounits(1): Sync the manual page with FreeBSD too.
Sascha Wildner [Tue, 15 Apr 2014 16:53:57 +0000 (18:53 +0200)]
units(1): Sync the manual page with FreeBSD too.

While here, add back units.c's SVN ID.

6 years agoDynamic root: Remove old libraries from /usr/lib
François Tigeot [Tue, 15 Apr 2014 08:06:38 +0000 (10:06 +0200)]
Dynamic root: Remove old libraries from /usr/lib

6 years agoUpdate the pciconf(8) database.
Sascha Wildner [Tue, 15 Apr 2014 07:33:22 +0000 (09:33 +0200)]
Update the pciconf(8) database.

April 14, 2014 snapshot from http://pciids.sourceforge.net/

6 years agounits(1): bring in latest changes from FreeBSD
Eitan Adler [Mon, 14 Apr 2014 22:40:55 +0000 (15:40 -0700)]
units(1): bring in latest changes from FreeBSD

In the interest of further compatibility with GNU units this brings in:
: -U for units file
: -v for verbose
: -V for version
: libedit support
:  -f support for multiple files

And other additional improvements.

Note that this introduces a breaking change from prior: -V and -v have been swapped (and a new -v has been added).

6 years agoFix typo
YONETANI Tomokazu [Mon, 14 Apr 2014 21:51:29 +0000 (06:51 +0900)]
Fix typo

6 years agounits(1): update to the latest library from FreeBSD
Eitan Adler [Mon, 14 Apr 2014 20:58:32 +0000 (13:58 -0700)]
units(1): update to the latest library from FreeBSD

This brings some new units along with enhanced compatibility with GNU units(1).

6 years agokernel: Sync ACPICA with Intel's version 20140325.
Sascha Wildner [Mon, 14 Apr 2014 21:06:12 +0000 (23:06 +0200)]
kernel: Sync ACPICA with Intel's version 20140325.

As far as I can see, the most important change is a fix for the auto-
serialization of control methods so that the currently executing AML
SyncLevel is ignored when invoking such a method. This fixes an issue
seen in some systems showing AE_AML_MUTEX exceptions since 20140214
which had to set hw.acpi.auto_serialize_methods to 0 to work around
the issue.

This was actually reported for DragonFly by Andrey Oktyabrskiy (see

See sys/contrib/dev/acpica/changes.txt for a complete list of all

6 years agobuildsystem: Fix libfoo.so links for /lib libraries
François Tigeot [Mon, 14 Apr 2014 10:20:43 +0000 (12:20 +0200)]
buildsystem: Fix libfoo.so links for /lib libraries

* When installing to a non-default location by using DESTDIR on the make
  installworld command line, /usr/lib/libfoo.so links pointed to wrong

* DESTDIR is used both as an installworld parameter and internally by the
  build system and these two cases expect different behaviors

* Symlinks locations in /usr/obj must be relative to the host (builder)
  filesystem namespace
  libc.so -> /usr/obj/usr/src/world_x86_64/lib/libc.so

* Symlinks locations in the final destination directory must be relative to
  the target world filesystem namespace
  libc.so -> /lib/libc.so

* The symlinks themselves must be absolute in order to not break
  installations where /usr is a symlink

Inspired-by: FreeBSD's historical transition to /lib
6 years agoDynamic root: Move required libraries to /lib
François Tigeot [Sun, 13 Apr 2014 07:03:10 +0000 (09:03 +0200)]
Dynamic root: Move required libraries to /lib

* Add /lib to the standard run-time loader library search path

* Ensure libxxx.so symbolic links stay in /usr/lib, the build
  tools won't pick them up in /lib

6 years agoDynamic root: Build /bin and /sbin dynamically
François Tigeot [Sun, 13 Apr 2014 07:01:55 +0000 (09:01 +0200)]
Dynamic root: Build /bin and /sbin dynamically

* Introduce a NO_DYNAMICROOT variable for people wanting to keep
  fully static /bin and /sbin directories

* Keep building /sbin/init statically

* Keep a few other binaries static to avoid moving too many libraries
  to /lib and/or creating many symlinks.
  Those few binaries do not handle user names and thus don't need to be
  NSS aware/dynamically linked.

* In particular, keeping udevd static allow us to avoid moving libpthread
  and its associated links to libc_r or libthread_xu

6 years agoDynamic root: Move ld-elf.so.2 to /libexec
François Tigeot [Sat, 12 Apr 2014 06:41:54 +0000 (08:41 +0200)]
Dynamic root: Move ld-elf.so.2 to /libexec

* Install it first to avoid breaking upgrades for systems previously
  having it located in /usr/libexec. install(1), beeing a dynamic binary,
  needs it at runtime.

* Since ld-elf.so.2's path is embedded in ELF binaries, also create a
  symbolic link in the old location to support existing binaries.

* Code to handle chflags attributes obtained from FreeBSD.

6 years agoDynamic root: Create /lib and /libexec
François Tigeot [Sat, 12 Apr 2014 06:18:31 +0000 (08:18 +0200)]
Dynamic root: Create /lib and /libexec

Make the installer also install these directories

6 years agobuildworld - Make auto-backup smarter.
Matthew Dillon [Fri, 11 Apr 2014 21:37:13 +0000 (14:37 -0700)]
buildworld - Make auto-backup smarter.

* Do not try to auto-backup the world if the backup location is

6 years agoCreate and install an initial ramdisk image
François Tigeot [Fri, 11 Apr 2014 19:33:30 +0000 (21:33 +0200)]
Create and install an initial ramdisk image

* This initrd can be used to mount encrypted filesystems or as a
  minimal rescue system

* Existing initrd.img files will be removed by make upgrade; the
  new ramdisk images are compressed and named initrd.img.gz

6 years agokernel/acpi: Add back another needed include. That should be all.
Sascha Wildner [Fri, 11 Apr 2014 10:06:41 +0000 (12:06 +0200)]
kernel/acpi: Add back another needed include. That should be all.

6 years agokernel/acpi: Add back two includes which are needed.
Sascha Wildner [Fri, 11 Apr 2014 07:55:39 +0000 (09:55 +0200)]
kernel/acpi: Add back two includes which are needed.

6 years agokernel/acpi: Move strstr() to libkern.
Sascha Wildner [Thu, 10 Apr 2014 21:39:21 +0000 (23:39 +0200)]
kernel/acpi: Move strstr() to libkern.

While here, clean up unneeded includes from acdragonfly.h too.

6 years agoAdd some manual pages for the ACPICA utilities provided by Intel.
Sascha Wildner [Thu, 10 Apr 2014 19:07:10 +0000 (21:07 +0200)]
Add some manual pages for the ACPICA utilities provided by Intel.

For now, just list the options and their descriptions (taken from the

6 years agoRemove the acpisrc utility which is for ACPICA distribution maintenance.
Sascha Wildner [Thu, 10 Apr 2014 18:23:08 +0000 (20:23 +0200)]
Remove the acpisrc utility which is for ACPICA distribution maintenance.

This is not necessary in base. In the unlikely case that anyone ever
needed it, we can bring it back.

6 years agonetinet/ip - Avoid a NULL pointer dereference.
Antonio Huete Jimenez [Thu, 10 Apr 2014 13:17:04 +0000 (15:17 +0200)]
netinet/ip - Avoid a NULL pointer dereference.

- Before checking for packets on broadcast addresses, see if there
  is actually a ifnet associated with the mbuf being handled.

FreeBSD-SVN: 130685
DragonFly-bug: <http://bugs.dragonflybsd.org/issues/2660>
Reported-and-Found-by: Vasily Postnicov
This commit closes #2660

6 years agodevd.conf: Comment some entries where we lack support in one way or the other.
Sascha Wildner [Thu, 10 Apr 2014 08:18:13 +0000 (10:18 +0200)]
devd.conf: Comment some entries where we lack support in one way or the other.

We'll gradually uncomment them again once they are known to work.

6 years agokernel/bwn: Replace callout_drain calls. Replace a tsleep by DELAY.
Imre Vadasz [Wed, 9 Apr 2014 22:48:16 +0000 (00:48 +0200)]
kernel/bwn: Replace callout_drain calls. Replace a tsleep by DELAY.

* Adjusting local #include statements to conform to style(9).

* callout_drain calls are replaced by callout_stop_sync.

* Reverting a DELAY -> tsleep replacement.

6 years agomkinitrd(8): gzip newly produced images
François Tigeot [Thu, 10 Apr 2014 06:15:09 +0000 (08:15 +0200)]
mkinitrd(8): gzip newly produced images

The space savings can be considerable with the current 15MB ramdisk images
beeing reduced to 3.9MB once compressed.

6 years agoloader - unset correct kenv for 'r'ecovery ramdisk mode
Matthew Dillon [Thu, 10 Apr 2014 01:26:04 +0000 (18:26 -0700)]
loader - unset correct kenv for 'r'ecovery ramdisk mode

* We have to unset vfs.root.real_root instead of lunset vfs.real_root.

* This will properly drop the loader into the recovery ramdisk without
  trying to do any crypt setup or access the root disk in any way (other
  than what it needs to get /boot stuff).

6 years agomount - Generate correct argv[0] for crunches
Matthew Dillon [Thu, 10 Apr 2014 01:12:43 +0000 (18:12 -0700)]
mount - Generate correct argv[0] for crunches

* The crunchgen consolidated binary uses argv[0] to determine which program
  to actually run.  The 'mount' program was putting the vfstype in argv[0]
  instead of "mount_<vfstype>".

* This caused crunchgen to run 'hammer' instead of 'mount_hammer'.

* Fixes installer encrypted installs with hammer roots.

6 years agokernel - Add mandatory config hooks delay
Matthew Dillon [Wed, 9 Apr 2014 23:49:12 +0000 (16:49 -0700)]
kernel - Add mandatory config hooks delay

* Add a mandatory 5-second minimum delay for config hooks.

  This fixes an issue with U4B's very late port probing.  Essentially the
  other disk devices (aka AHCI) can completely finish probing and attaching
  devices before USB even knows there's a stick in a port.  The result is
  that the run_interrupt_driven_config_hooks() routine thinks that all
  disk devices have attached and does not wait at all.

  In addition, usb devices tend to probe near dead last, making the problem
  worse.  The kernel tries to mount the root device the instant after
  the usb pci probe.

* This is a hack, but to really fix it requires a great deal of surgery in
  the U4B USB stack.

6 years agodloader: Add a rescue ramdisk boot option
François Tigeot [Wed, 9 Apr 2014 21:39:31 +0000 (23:39 +0200)]
dloader: Add a rescue ramdisk boot option

6 years agoinitrd: Add password databases
François Tigeot [Wed, 9 Apr 2014 21:28:39 +0000 (23:28 +0200)]
initrd: Add password databases

6 years agoinitrd: Create a home directory, initialize $HOME
François Tigeot [Wed, 9 Apr 2014 14:48:28 +0000 (16:48 +0200)]
initrd: Create a home directory, initialize $HOME

6 years agoinitrd: Add various /etc files
François Tigeot [Wed, 9 Apr 2014 21:26:28 +0000 (23:26 +0200)]
initrd: Add various /etc files

* /etc/motd submitted by Matthew Dillon <dillon@apollo.backplane.com>

6 years agomkinitrd(8): Stop copying regular binaries to the ramdisk
François Tigeot [Wed, 9 Apr 2014 21:13:48 +0000 (23:13 +0200)]
mkinitrd(8): Stop copying regular binaries to the ramdisk

* initrd binaries are specially tailored versions and don't necessarily
  work in the same way as regular ones

* In fact, regular binaries from newer DragonFly systems are expected to
  use dynamic libraries and won't work at all in the fully static environment
  of the ramdisk

6 years agoinitrd: Add wpa_supplicant
François Tigeot [Wed, 9 Apr 2014 15:56:50 +0000 (17:56 +0200)]
initrd: Add wpa_supplicant

Submitted-by: Matthew Dillon <dillon@apollo.backplane.com>
6 years agoinitrd: Add various binaries and scripts
François Tigeot [Wed, 9 Apr 2014 15:30:44 +0000 (17:30 +0200)]
initrd: Add various binaries and scripts

* Crunch bin and sbin commands with some usr.bin and usr.sbin binaries into
  /bin and /sbin respectively, we don't want to maintain a /usr directory

* Some of the symbols cryptsetup and tcplay use conflict with others used
  by regular /sbin binaries, crunch them separately

* lvm's libraries conflict even more, build it as a separate static binary

6 years agoinitrd: Remount / read-write
François Tigeot [Wed, 9 Apr 2014 15:04:55 +0000 (17:04 +0200)]
initrd: Remount / read-write