dragonfly.git
9 years agosshlockout - Add back blocking out IPs via ipfw(8)
Michael Neumann [Sun, 15 Mar 2015 13:25:06 +0000 (14:25 +0100)]
sshlockout - Add back blocking out IPs via ipfw(8)

Now takes -pf and -ipfw options to distinguish which firewall to use.

9 years agolibc: Use NELEM().
Sascha Wildner [Sun, 15 Mar 2015 11:06:36 +0000 (12:06 +0100)]
libc: Use NELEM().

9 years agokernel/acpi: Adjust the definition of some statically declared functions.
Sascha Wildner [Sun, 15 Mar 2015 10:54:11 +0000 (11:54 +0100)]
kernel/acpi: Adjust the definition of some statically declared functions.

9 years agokernel: Remove fdescfs. devfs handles this.
Sascha Wildner [Sun, 15 Mar 2015 09:48:43 +0000 (10:48 +0100)]
kernel: Remove fdescfs. devfs handles this.

9 years agoUpdate the pciconf(8) database.
Sascha Wildner [Sun, 15 Mar 2015 09:45:23 +0000 (10:45 +0100)]
Update the pciconf(8) database.

March 14, 2015 snapshot from http://pciids.sourceforge.net/

9 years agohammer2 - Optimize out read I/O on new allocations (2)
Matthew Dillon [Sun, 15 Mar 2015 07:03:37 +0000 (00:03 -0700)]
hammer2 - Optimize out read I/O on new allocations (2)

* One more patch needed to fix the regression.

9 years agohammer2 - Optimize out read I/O on new allocations
Matthew Dillon [Sun, 15 Mar 2015 06:26:59 +0000 (23:26 -0700)]
hammer2 - Optimize out read I/O on new allocations

* Fix a regression.  When DIO went strictly to 64KB blocks,
  hammer2_devblksize() did not follow suit.  This resulted it
  unnecessary read-before-write I/Os on smaller blocks allocated from
  fresh full-block freemap areas.

  This fix effectively removes almost all read I/O when writing fresh files
  to HAMMER2 filesystem, or copying from data already cached into the
  HAMMER2 filesystem.

* Allow inodes to be locked without having to load the related meta-data.
  This removes unnecessary read I/Os when reclaiming old vnodes from the
  vnode cache (whos inodes might no longer be in the buffer cache or the
  VM page cache).  Removes unnecessary reads during a umount and during
  normal vnode recyclement once system caches have reached steady-state.

  This change involved flagging the nlinks == 0 inode state in the chain
  flags so the inode meta-data does not have to be read.

9 years agohammer2 - Misc cluster protocol work
Matthew Dillon [Sun, 15 Mar 2015 04:31:23 +0000 (21:31 -0700)]
hammer2 - Misc cluster protocol work

* Adjust debugging a bit so hammer2 -d bumps DMsgDebugOpt to sucessively
  higher values.

* mount_hammer2 now connects the hammer2 service daemon to the mount
  via localhost instead of via 0 (0 does not bind to localhost if the
  machine has an IP address).  Allows differentiation between remote
  connections and local connections.

* Begin splitting the dmsg iocom stuff off from vfsops.c in the hammer2 VFS
  and test.

* Issue SPANs relative to state0 rather than the LNK_CONN state in the hammer2
  VFS, to match how SPANs are implemented in the service demon.

* Recognize remote HAMMER2 filesystem SPANs (but don't do anything with them
  yet).

* Fix a brace bug in hammer2_bulkscan.c (from swildner).

9 years agosbin/hammer: Properly break from cache flush loop
Tomohiro Kusumi [Sat, 14 Mar 2015 18:55:48 +0000 (03:55 +0900)]
sbin/hammer: Properly break from cache flush loop

- hammer_cache_flush() needs to keep track of the first element
  that was pushed back to tail of the list (ref!=0), and break from
  the loop if it hits that element for the second time.

- It's currently working without above check because it breaks from
  the loop after it has accomplished 'target'. If this function was
  changed to release unlimited number of cache then it'll loop
  forever unless tracking those that can't be released (ref!=0).

9 years agosbin/hammer: Add debug printf on cache flushing
Tomohiro Kusumi [Sat, 14 Mar 2015 17:19:22 +0000 (02:19 +0900)]
sbin/hammer: Add debug printf on cache flushing

- Add debug fprintf to stderr on cache flushing that shows
  the number of buffers released.

9 years agokernel/ipfw3: Fix LINT64 building.
Sascha Wildner [Sat, 14 Mar 2015 16:00:51 +0000 (17:00 +0100)]
kernel/ipfw3: Fix LINT64 building.

* Remove a duplicate definition of DPRINTF().

* Fix a DPRINTF() argument.

9 years agoRemove more sendmail remains.
Sascha Wildner [Sat, 14 Mar 2015 15:54:50 +0000 (16:54 +0100)]
Remove more sendmail remains.

9 years agomake upgrade: Remove some more files for the sendmail removal.
Sascha Wildner [Sat, 14 Mar 2015 15:37:43 +0000 (16:37 +0100)]
make upgrade: Remove some more files for the sendmail removal.

9 years agoacpi_thinkpad.4: Add missing space.
Sascha Wildner [Sat, 14 Mar 2015 14:45:33 +0000 (15:45 +0100)]
acpi_thinkpad.4: Add missing space.

9 years agodrm/i915: Reorder some function definitions
François Tigeot [Sat, 14 Mar 2015 13:03:37 +0000 (14:03 +0100)]
drm/i915: Reorder some function definitions

* Reducing differences with Linux 3.11

* No functional changes

9 years agodrm/i915: add trace functions
François Tigeot [Sat, 14 Mar 2015 09:26:11 +0000 (10:26 +0100)]
drm/i915: add trace functions

9 years agodrm: Sync drm_mm.c with Linux 3.11
François Tigeot [Sat, 14 Mar 2015 06:45:32 +0000 (07:45 +0100)]
drm: Sync drm_mm.c with Linux 3.11

9 years agorpc.rusersd(8): Cleanup indentation.
Sascha Wildner [Sat, 14 Mar 2015 00:24:09 +0000 (01:24 +0100)]
rpc.rusersd(8): Cleanup indentation.

9 years agoUpdate MPC library from version 1.0.1 to 1.0.3
John Marino [Fri, 13 Mar 2015 16:13:10 +0000 (17:13 +0100)]
Update MPC library from version 1.0.1 to 1.0.3

This library is internal; it's used by both gcc47 and gcc50.
Fixed: mpc_pow, mpc_atan, mpc_atanh

9 years agoMerge branch 'vendor/MPC'
John Marino [Fri, 13 Mar 2015 17:14:46 +0000 (18:14 +0100)]
Merge branch 'vendor/MPC'

9 years agoUpdate MPC library from version 1.0.1 to 1.0.3 vendor/MPC
John Marino [Fri, 13 Mar 2015 16:03:07 +0000 (17:03 +0100)]
Update MPC library from version 1.0.1 to 1.0.3

9 years agoless(1): Upgrade from version 458 to 471
John Marino [Fri, 13 Mar 2015 15:35:53 +0000 (16:35 +0100)]
less(1): Upgrade from version 458 to 471

9 years agoMerge branch 'vendor/LESS'
John Marino [Fri, 13 Mar 2015 16:35:25 +0000 (17:35 +0100)]
Merge branch 'vendor/LESS'

9 years agoUpdate less from version 458 to 471
John Marino [Fri, 13 Mar 2015 14:30:40 +0000 (15:30 +0100)]
Update less from version 458 to 471

9 years agogcc50: Update to 13 Mar 2015 snapshot (SVN 221423)
John Marino [Fri, 13 Mar 2015 13:24:26 +0000 (14:24 +0100)]
gcc50: Update to 13 Mar 2015 snapshot (SVN 221423)

New config headers were brought in for libstdc++ (thanks J.Wakely)
and libgomp.  The former enables some time-based functionality, the
latter I think has no net effect, it changed for libmpx which isn't
built on DragonFly currently.

9 years agoMerge branch 'vendor/GCC50'
John Marino [Fri, 13 Mar 2015 15:04:18 +0000 (16:04 +0100)]
Merge branch 'vendor/GCC50'

9 years agoUpdate gcc-50 to SVN version 221423
John Marino [Fri, 13 Mar 2015 13:20:38 +0000 (14:20 +0100)]
Update gcc-50 to SVN version 221423

Last Changed Date: 2015-03-13 14:48:21 +0100 (Fri, 13 Mar 2015)

9 years agortsock: Make sysctl NET_RT_DUMP MPSAFE.
Sepherosa Ziehau [Mon, 9 Mar 2015 14:28:15 +0000 (22:28 +0800)]
rtsock: Make sysctl NET_RT_DUMP MPSAFE.

- Add rn_walktree_at(), which walks the radix tree from a target node,
  if it could be found, or from the closest node of the target node.
- Allocate temporary buffer for rtm batch, which should be large enough
  for duplicated keys.  We could consider reallocate it if there are
  any real cases that this temporary buffer could not hold rtms for all
  duplicated keys.  In the current implementation, it just logs one
  error and stop.
- Convert the rtentries to rtms in temporary buffer in netisr; unlike
  what we do for inpcbs, routing table could be in inconsistent state
  (due to blocking malloc), if we are not accessing the routing table
  in netisr.  If there is no more space in the temporary buffer, the
  current rtentry's key and netmask are saved and we will start from it
  next time.  Since rn_walktree_at() only starts from the first node of
  duplicated keys, we have to make sure that there is enough space for
  all duplicated keys in the temoprary buffer.
- Once the temporary buffer can't hold more rtms, the rtms in it will
  be delivered to userland.  And we start converting the rtentries in
  netisr from the last node again, until all rtentries are iterated.

9 years agoipfw/ipfw3 - Document new sysctl, clean-up manual pages
Matthew Dillon [Fri, 13 Mar 2015 01:17:21 +0000 (18:17 -0700)]
ipfw/ipfw3 - Document new sysctl, clean-up manual pages

* Document the new net.filters_default_to_accept sysctl and tunable.

* Adjust the ipfw3 manual page to call the program 'ipfw3' rather
  than 'ipfw'.

9 years agoipfw/ipfw3 - Add pre-load sysctl to default filter to accept
Matthew Dillon [Fri, 13 Mar 2015 01:08:56 +0000 (18:08 -0700)]
ipfw/ipfw3 - Add pre-load sysctl to default filter to accept

* Add sysctl and tunable 'net.filters_default_to_accept', which defaults
  to off.  If this variable is set to non-zero prior to loading the ipfw
  or ipfw3 modules, IPFW will default to allowing all packets through instead
  of denying all packets.

* It is necessary to use this feature for netbooted systems with NFS roots
  as the system will not be able to load the rules table after kldloading
  the related module(s) otherwise.

9 years agoipfw2 - Rename FreeBSD ipfw port to ipfw3 (2)
Matthew Dillon [Fri, 13 Mar 2015 00:27:14 +0000 (17:27 -0700)]
ipfw2 - Rename FreeBSD ipfw port to ipfw3 (2)

* Unbreak buildworld

9 years agoRevert "if_clone_detach twice when unload the if_lagg module."
Sascha Wildner [Fri, 13 Mar 2015 00:03:28 +0000 (01:03 +0100)]
Revert "if_clone_detach twice when unload the if_lagg module."

This reverts commit 2574878feac65235315e1557d2e15c5d01c2ed7d.

It was already fixed in our tree and this is a merge issue.

9 years agoipfw2 - Rename FreeBSD ipfw port to ipfw3
Matthew Dillon [Thu, 12 Mar 2015 23:10:34 +0000 (16:10 -0700)]
ipfw2 - Rename FreeBSD ipfw port to ipfw3

* Rename all elements of the port to ipfw3 to reduce confusion.

9 years agokernel/usb4bsd: Unbreak 'template' module (new file missing in Makefile).
Sascha Wildner [Thu, 12 Mar 2015 21:57:46 +0000 (22:57 +0100)]
kernel/usb4bsd: Unbreak 'template' module (new file missing in Makefile).

9 years agokernel/usb4bsd: Unbreak building with USB_DEBUG in the config.
Sascha Wildner [Thu, 12 Mar 2015 21:56:49 +0000 (22:56 +0100)]
kernel/usb4bsd: Unbreak building with USB_DEBUG in the config.

9 years agoipfw2 - Final whitespace cleanup
Matthew Dillon [Thu, 12 Mar 2015 21:33:36 +0000 (14:33 -0700)]
ipfw2 - Final whitespace cleanup

* Do final cleanup of a few more whitespace issues

9 years agoNew IPFW2 for DragonflyBSD which is:
Bill Yuan [Sun, 8 Mar 2015 17:49:34 +0000 (01:49 +0800)]
New IPFW2 for DragonflyBSD which is:
1. source clean and following the Dfly coding style.
2. able to run parallelly together with the existing ipfw.
3. support in-kernel NAT.
4. some enhanced features.
5. designed in modular.

9 years agoipfw2 man page, keep-state
Bill Yuan [Tue, 3 Mar 2015 10:52:56 +0000 (18:52 +0800)]
ipfw2 man page, keep-state

9 years agoipfw2 man page
Bill Yuan [Mon, 2 Mar 2015 09:08:02 +0000 (17:08 +0800)]
ipfw2 man page

9 years agoforward action description.
Bill Yuan [Sun, 1 Mar 2015 17:58:05 +0000 (01:58 +0800)]
forward action description.

9 years ago'forward action' section of ipfw2 man page.
Bill Yuan [Sat, 28 Feb 2015 10:33:28 +0000 (18:33 +0800)]
'forward action' section of ipfw2 man page.

9 years agoif_clone_detach twice when unload the if_lagg module.
Bill Yuan [Thu, 26 Feb 2015 02:34:32 +0000 (10:34 +0800)]
if_clone_detach twice when unload the if_lagg module.
http://bugs.dragonflybsd.org/issues/2795

9 years agoallow layer2 filtering on ipfw2 when net.link.ether.ipfw=1
Bill Yuan [Wed, 25 Feb 2015 09:15:42 +0000 (17:15 +0800)]
allow layer2 filtering on ipfw2 when net.link.ether.ipfw=1

9 years agoremove the sysctl handler.
Bill Yuan [Wed, 25 Feb 2015 06:38:02 +0000 (14:38 +0800)]
remove the sysctl handler.

9 years agoadjust lock in ipfw2_nat.
Bill Yuan [Tue, 24 Feb 2015 17:42:30 +0000 (01:42 +0800)]
adjust lock in ipfw2_nat.

9 years agoM_DONTWAIT -> M_NOWAIT in ipfw2_basic
Bill Yuan [Tue, 24 Feb 2015 08:04:08 +0000 (16:04 +0800)]
M_DONTWAIT -> M_NOWAIT in ipfw2_basic

9 years agoMB_DONTWAIT -> M_NOWAIT
Bill Yuan [Tue, 24 Feb 2015 07:58:50 +0000 (15:58 +0800)]
MB_DONTWAIT -> M_NOWAIT

9 years agoLock release in ipfw2_nat module.
Bill Yuan [Tue, 24 Feb 2015 04:04:15 +0000 (12:04 +0800)]
Lock release in ipfw2_nat module.

9 years agofix for 'multi-dest forwarding'
Bill Yuan [Thu, 12 Feb 2015 16:37:38 +0000 (00:37 +0800)]
fix for 'multi-dest forwarding'

9 years agoenhanced forward action in kernel space
Bill Yuan [Thu, 12 Feb 2015 15:27:07 +0000 (23:27 +0800)]
enhanced forward action in kernel space
1. giveup the 'fwd' keyword
2. forward support multiple destination
3. forward accept a strategy parameter. round-robin/sticky
use random dest without any strategy option
use round-robin when ...
use sticky when ...

9 years agoadd round-robin and sticky to forward action
Bill Yuan [Wed, 11 Feb 2015 14:26:03 +0000 (22:26 +0800)]
add round-robin and sticky to forward action

9 years agoreformat for textwidth=80
Bill Yuan [Tue, 10 Feb 2015 17:19:40 +0000 (01:19 +0800)]
reformat for textwidth=80

9 years agofilter functionality of keyword 'mac dst src' in layer2 module.
Bill Yuan [Tue, 10 Feb 2015 15:38:59 +0000 (23:38 +0800)]
filter functionality of keyword 'mac dst src' in layer2 module.

9 years agofix header file include.
Bill Yuan [Tue, 10 Feb 2015 13:18:05 +0000 (21:18 +0800)]
fix header file include.

9 years agorename the header files.
Bill Yuan [Tue, 10 Feb 2015 03:58:25 +0000 (11:58 +0800)]
rename the header files.

9 years agoVersion 'alpha 1' of ipfw2 firewall module for DragonflyBSD.
Bill Yuan [Sat, 7 Feb 2015 10:26:10 +0000 (18:26 +0800)]
Version 'alpha 1' of ipfw2 firewall module for DragonflyBSD.
1. Modular design
2. Lockless stateful firewall
3. In-kernel NAT using libalias
4. Enhanced policy routing. (coming soon)

9 years agoRefactor the source for ipfw2.
Bill Yuan [Thu, 4 Dec 2014 14:56:56 +0000 (22:56 +0800)]
Refactor the source for ipfw2.

9 years agoNew ipfw2 for DragonflyBSD which is able to run parallelly with the original ipfw.
Bill Yuan [Wed, 4 Feb 2015 12:44:15 +0000 (20:44 +0800)]
New ipfw2 for DragonflyBSD which is able to run parallelly with the original ipfw.
1. sbin/ipfw2
2. lib/libipfw2
3. sys/net/ipfw2
4. sys/net/dummynet2

9 years agokernel/netgraph7: Add missing braces.
Sascha Wildner [Thu, 12 Mar 2015 20:53:35 +0000 (21:53 +0100)]
kernel/netgraph7: Add missing braces.

9 years agokernel/sound: Add missing braces.
Sascha Wildner [Thu, 12 Mar 2015 20:53:17 +0000 (21:53 +0100)]
kernel/sound: Add missing braces.

9 years agousb - Update bus/u4b
Matthew Dillon [Thu, 12 Mar 2015 20:50:38 +0000 (13:50 -0700)]
usb - Update bus/u4b

* Update bus/u4b from FreeBSD to commit 3121e258c76aa, 10 March 2015,
  with the following commit message:

      Lock softc before clearing bits.

* Some bits not updated.  Some changes around the MSI handling work
  differently in DFly so I punted on that.  And the serial/tty in FreeBSD
  is a bit different, particular this 'pps' stuff.

* Numerous bits of code currently conditionalized out use ABI features
  from FreeBSD, particularly RWTUN, which we do not yet have.  Currently
  non-critical, we can fix these as the related code gets used (if the
  related code gets used).

Reviewed-by: Markus Pfeiffer
9 years agobmake(1): Move -w info to the right place (it's not a debug flag).
Sascha Wildner [Thu, 12 Mar 2015 20:17:02 +0000 (21:17 +0100)]
bmake(1): Move -w info to the right place (it's not a debug flag).

9 years agokernel/crypto: Remove some unneeded semicolons.
Sascha Wildner [Thu, 12 Mar 2015 17:10:56 +0000 (18:10 +0100)]
kernel/crypto: Remove some unneeded semicolons.

9 years ago<sys/malloc.h>: Remove an unneeded semicolon.
Sascha Wildner [Thu, 12 Mar 2015 17:10:06 +0000 (18:10 +0100)]
<sys/malloc.h>: Remove an unneeded semicolon.

9 years agokernel: Followup commit to f3f3eadbf9de7a55ef1ff8cb23a68641403906ea.
Sascha Wildner [Thu, 12 Mar 2015 17:06:13 +0000 (18:06 +0100)]
kernel: Followup commit to f3f3eadbf9de7a55ef1ff8cb23a68641403906ea.

Fix some more SYSINIT() cases (all in code which isn't compiled for
one reason or the other), mainly to make a branch merge better here.

9 years agokernel: Move semicolon from the definition of SYSINIT() to its invocations.
Sascha Wildner [Thu, 12 Mar 2015 16:41:56 +0000 (17:41 +0100)]
kernel: Move semicolon from the definition of SYSINIT() to its invocations.

This affected around 70 of our (more or less) 270 SYSINIT() calls.

style(9) advocates the terminating semicolon to be supplied by the
invocation too, because it can make life easier for editors and other
source code parsing programs.

9 years agosbin/hammer: Don't use the same buffer for blockmap layer1 and layer2
Tomohiro Kusumi [Wed, 11 Mar 2015 23:30:30 +0000 (08:30 +0900)]
sbin/hammer: Don't use the same buffer for blockmap layer1 and layer2

- Functions that lookup blockmap layer1 and layer2 should use
  different buffer variable (set to NULL) for each get_buffer_data()
  call to retrieve ondisk data unless isnew flag is set to 1.

- From the way newfs_hammer allocates layer entries on disks,
  any given layer1 entry and layer2 entry are never both cached in
  a single hammer buffer. Passing layer1 buffer to get_buffer_data()
  as a cache for layer2 happens to be overhead as it takes extra cache
  boundary check (and we know layer2 isn't cached in layer1 buffer).

9 years agosys/vfs/hammer: Cleanups on undo
Tomohiro Kusumi [Wed, 11 Mar 2015 13:57:44 +0000 (22:57 +0900)]
sys/vfs/hammer: Cleanups on undo

- hunk1 - These macros were added in 36f82b23 in 2008 but never used.

- hunk2 - Not only zone1 but also zone2 can generate undo.

- hunk3 - Show there is no undo on undo.

9 years agosbin/hammer: Add additional info to "BO"
Tomohiro Kusumi [Wed, 11 Mar 2015 12:28:32 +0000 (21:28 +0900)]
sbin/hammer: Add additional info to "BO"

- Make hammer show command print additional 3 characters after "BO"
  based on error type.

- Happened to see following "BO" while running a test script to
  observe btree growth but there are 9 cases that cause "BO" (EDOM).
  It needs additional info to tell what caused "BO".

  G------ ELM  1 R lo=00000001 obj=0000000000000001 rt=11 key=2ec64cba42580000 ot=02
                   tids 0000000100008020:0000000000000000
  BO               dataoff=9000000022000080/21 crc=94bf75d4
                   fills=z9:68=BADZ
                   dir-entry ino=0000000100000576 lo=00000000 name="0.out"
  G------ ELM  2 R lo=00000001 obj=0000000100000576 rt=01 key=0000000000000000 ot=02
                   tids 0000000100008020:0000000000000000
  BO               dataoff=9000000022000000/128 crc=19f26cd
                   fills=z9:68=BADZ

9 years agokernel/acpi: Avoid double semicolons.
Sascha Wildner [Wed, 11 Mar 2015 22:15:22 +0000 (23:15 +0100)]
kernel/acpi: Avoid double semicolons.

9 years agokernel/acpi: Use semicolons in macro invocations.
Sascha Wildner [Wed, 11 Mar 2015 22:15:08 +0000 (23:15 +0100)]
kernel/acpi: Use semicolons in macro invocations.

9 years agokernel: Use BSD types, not System V types (ulong -> u_long).
Sascha Wildner [Wed, 11 Mar 2015 20:47:27 +0000 (21:47 +0100)]
kernel: Use BSD types, not System V types (ulong -> u_long).

9 years agolvm2: More cleanup (include <unistd.h>, use default CSTD, WARNS = 1).
Sascha Wildner [Wed, 11 Mar 2015 20:09:12 +0000 (21:09 +0100)]
lvm2: More cleanup (include <unistd.h>, use default CSTD, WARNS = 1).

<unistd.h> is required for some prototypes (getpid(), unlink(), ...).

WARNS?=2 requires some more work.

9 years agoRemove more lvm2 related _XOPEN_SOURCE definitions.
Sascha Wildner [Wed, 11 Mar 2015 19:35:25 +0000 (20:35 +0100)]
Remove more lvm2 related _XOPEN_SOURCE definitions.

9 years ago<sys/fcntl.h>: Fix comment that I forgot to change.
Sascha Wildner [Wed, 11 Mar 2015 17:40:01 +0000 (18:40 +0100)]
<sys/fcntl.h>: Fix comment that I forgot to change.

9 years ago<sys/fcntl.h>: Clean up usage of _POSIX_SOURCE.
Sascha Wildner [Wed, 11 Mar 2015 17:16:28 +0000 (18:16 +0100)]
<sys/fcntl.h>: Clean up usage of _POSIX_SOURCE.

Use the normal __BSD_VISIBLE macro instead.

While here, also add some more specific visibility for AT_* and O_NOFOLLOW.

9 years ago<sys/fcntl.h>: Whitespace cleanup. No functional change.
Sascha Wildner [Wed, 11 Mar 2015 17:15:42 +0000 (18:15 +0100)]
<sys/fcntl.h>: Whitespace cleanup. No functional change.

9 years agolvm2: Stop requiring _XOPEN_SOURCE=700 and use our default environment.
Sascha Wildner [Wed, 11 Mar 2015 17:14:26 +0000 (18:14 +0100)]
lvm2: Stop requiring _XOPEN_SOURCE=700 and use our default environment.

The 'stack' macro conflict was solved by renaming the struct lwp_params
members. That define is really a stupid thing to do. :(

9 years ago<sys/unistd.h>: Rename struct lwp_params member names.
Sascha Wildner [Wed, 11 Mar 2015 17:10:55 +0000 (18:10 +0100)]
<sys/unistd.h>: Rename struct lwp_params member names.

This is mainly to better "protect" them against 3rd party software doing
silly things like lvm2 which has a "#define stack ..." that conflicted
with the struct's 'stack' member, for example. It's a lame reason to
rename the struct members, but, given that it is a public struct, it's
a good thing to do so generally.

Also, because it is a public structure, bump __DragonFly_version so it
can be dealt with in code. I didn't find any usage of our lwp_* code
in dports but it might be used in someone's own code still.

9 years agogpt - Bump size of the boot partition from 768MB to 1GB
Matthew Dillon [Wed, 11 Mar 2015 06:10:24 +0000 (23:10 -0700)]
gpt - Bump size of the boot partition from 768MB to 1GB

* Bump the default size of the boot partition to 1GB.

9 years agokernel/acpi: Reduce code duplication with ACPICA.
Sascha Wildner [Tue, 10 Mar 2015 21:31:02 +0000 (22:31 +0100)]
kernel/acpi: Reduce code duplication with ACPICA.

Use the types which the ACPICA framework provides whereever possible in
our acpi_fadt and acpi_madt code. Since we do not use any actual ACPICA
functions here, this is no problem even for code which (so far) runs
before ACPICA is initialized.

Discussed-with-and-approved-by: sephe
9 years agomake upgrade: Remove more installer stuff if WANT_INSTALLER isn't set.
Sascha Wildner [Tue, 10 Mar 2015 21:32:36 +0000 (22:32 +0100)]
make upgrade: Remove more installer stuff if WANT_INSTALLER isn't set.

9 years agomake upgrade: Clear out installer files conditionally
John Marino [Tue, 10 Mar 2015 14:08:52 +0000 (15:08 +0100)]
make upgrade: Clear out installer files conditionally

Installing DragonFly from an image installer will end up coping the
installer itself to /usr/sbin.  This is just cpdup doing what it's told.

The other way these installers could get there is if it's intentionally
built using the WANT_INSTALLER knob.  So remove these files if the
WANT_INSTALLER variable is not defined.

suggested-by: swildner

9 years agosbin/hammer: Remove unnecessary workarond after f0b930f3
Tomohiro Kusumi [Tue, 10 Mar 2015 11:36:18 +0000 (20:36 +0900)]
sbin/hammer: Remove unnecessary workarond after f0b930f3

- Revert one of the workarounds made in commit 2f8c6a59 since it's
  no longer necessary after commit f0b930f3 fixed it in filesystem.

- The other workaround in commit 2f8c6a59 (suppress 'd') is
  still there as it has nothing to do with mirror_tid fix in f0b930f3.

9 years agosys/vfs/hammer: Properly set mirror_tid on root node split
Tomohiro Kusumi [Tue, 10 Mar 2015 11:09:36 +0000 (20:09 +0900)]
sys/vfs/hammer: Properly set mirror_tid on root node split

- Set elms[0].internal.mirror_tid of the new root node
  after root split.

- Without this commit elms[0].internal.mirror_tid of the new root
  node is 0 which is not appropriate given that its children have
  non-zero mirror_tid.

- Submit #2801

- Following hammer show results shows difference.

  /* the root node right after root split without this commit */
       NODE 8000000020801000 cnt=02 p=0000000000000000 type=I depth=0 mirror 00000001000087a0 fill=z8:65=1% {
  G------ ELM  0 L lo=00000000 obj=8000000000000000 rt=00 key=8000000000000000 ot=00
                 d tids 0000000000000001:0000000000000001 suboff=8000000020800000 mirror 0000000000000000
  G------ ELM  1 L lo=00000001 obj=0000000080000209 rt=01 key=0000000000000000 ot=00
                   tids 0000000100008420:0000000000000000 suboff=8000000020802000 mirror 00000001000087a0
  G------ RBN  2 ? lo=ffffffff obj=7fffffffffffffff rt=ffff key=7fffffffffffffff ot=00
                   tids ffffffffffffffff:0000000000000000 suboff=0000000000000000 mirror 0000000000000000
       }
  BM   NODE 8000000020800000 cnt=32 p=8000000020801000 type=L depth=1 mirror 00000001000087a0 fill=z8:65=1%
  ...

  /* the root node right after root split with this commit */
       NODE 8000000020801000 cnt=02 p=0000000000000000 type=I depth=0 mirror 00000001000087a0 fill=z8:65=1% {
  G------ ELM  0 L lo=00000000 obj=8000000000000000 rt=00 key=8000000000000000 ot=00
                 d tids 0000000000000001:0000000000000001 suboff=8000000020800000 mirror 00000001000087a0
  G------ ELM  1 L lo=00000001 obj=0000000080000209 rt=01 key=0000000000000000 ot=00
                   tids 0000000100008420:0000000000000000 suboff=8000000020802000 mirror 00000001000087a0
  G------ RBN  2 ? lo=ffffffff obj=7fffffffffffffff rt=ffff key=7fffffffffffffff ot=00
                   tids ffffffffffffffff:0000000000000000 suboff=0000000000000000 mirror 0000000000000000
       }
       NODE 8000000020800000 cnt=32 p=8000000020801000 type=L depth=1 mirror 00000001000087a0 fill=z8:65=1% {
  ...

9 years agoRemove contrib/sendmail-8.14
John Marino [Tue, 10 Mar 2015 11:06:09 +0000 (12:06 +0100)]
Remove contrib/sendmail-8.14

The deletion of these source files should complete the removal of
Sendmail from base.

9 years agosendmail transition: Do not pre-generate sendmail.cf
John Marino [Tue, 10 Mar 2015 10:46:07 +0000 (11:46 +0100)]
sendmail transition: Do not pre-generate sendmail.cf

Originally a starter sendmail.cf file was created using the .mc template
files and the m4 files installed from contrib/sendmail-8.14 directory.
This starter sendmail.cf was installed with "make distribution".  The
template files were only changed with "make upgrade" (not sure why but
maybe people tried editing them directly) and the Makefile was only
installed once.

This commit accomplishes these things:
  * No sendmail.cf or submit.cf file is created.  This was the last
    user of contrib/sendmail-8.14
  * etc/sendmail was altered to just install files
  * the README file the was recently placed in libexec/dma was relocated
    to etc/sendmail and updated
  * the /etc/mail/Makefile is now updated with installworld
  * the dragonfl*.mc templates are now updated with installworld

The suggested method to creating /etc/mail/sendmail.cf and
/etc/mail/submit.cf now on a new system is:
  1. cd /etc/mail
  2. type "make cf"
  3. <optional> edit new <hostname>.mc and <hostname>.submit.mc files
  4. <optional> type "make cf" again
  5. type "make install"

9 years agoMore sendmail transition work
John Marino [Tue, 10 Mar 2015 09:56:40 +0000 (10:56 +0100)]
More sendmail transition work

Several changes were made, including
  * set default SENDMAIL_CF_DIR to standard dports location
  * add SENDMAIL_CF_DIR to defaults/make.conf
  * remove SENDMAIL_CF completely (it wasn't even documented)
  * Update dragonfly.mc templates
  * Move SENDMAIL_PERMS definition to defaults/make.conf
  * change SENDMAIL and MAKEMAP definitions to point to dports locations
  * Tweak make.conf.5 man page accordingly
  * and other tweaks ...

9 years agomake.conf(5): Remove SENDMAIL_SET_USER_ID functionality
John Marino [Tue, 10 Mar 2015 08:20:33 +0000 (09:20 +0100)]
make.conf(5): Remove SENDMAIL_SET_USER_ID functionality

This sendmail option has been deprecated and off by default since version
8.12.  It is also not supported by dports Sendmail, probably due to its
security risks.  It makes no sense anymore, so remove it separately ahead
of additional anticipated base Sendmail changes.

9 years agoRemove NO_SENDMAIL and all it masks, except one
John Marino [Mon, 9 Mar 2015 23:53:02 +0000 (00:53 +0100)]
Remove NO_SENDMAIL and all it masks, except one

The next step in the removal of Sendmail is to remove all the components
that NO_SENDMAIL masked, and then remove the internal NO_SENDMAIL knob
itself.

There is one component that got unmasked though: the etc/sendmail
dragonfl*.mc files.  I think we may need to keep building these, and
they require contrib/sendmail-8.14 source files.  I'll figure out what
needs to have to remove the contrib directory later.

9 years agodmsg - Formalize most of the debugging output, cleanup, fix uninit bug
Matthew Dillon [Tue, 10 Mar 2015 00:09:20 +0000 (17:09 -0700)]
dmsg - Formalize most of the debugging output, cleanup, fix uninit bug

* Macroize and formalize most of the debugging output.

* Add LNK_PING support.

* Fix a bug in kdmsg_iocom_uninit().  The RX thread can stall reading
  from the pipe and never wakeup to see the KILLRX flag if no traffic
  comes in.

  To deal with this kdmsg_iocom_uninit() sends a LNK_PING over the link,
  then gives the threads 10 seconds to shutdown nicely.  If they do not
  the pipe descriptor is not-so-nicely shutdown().

9 years agohammer - Fix a vsetisdirty() race
Matthew Dillon [Mon, 9 Mar 2015 22:54:11 +0000 (15:54 -0700)]
hammer - Fix a vsetisdirty() race

* Fix a vsetisdirty() race which can result in a panic by holding a lock
  around the operation.

Reported-by: tuxillo
9 years agoGive better "Quick" fix for passing Sendmail upgrade check
John Marino [Mon, 9 Mar 2015 22:47:37 +0000 (23:47 +0100)]
Give better "Quick" fix for passing Sendmail upgrade check

The original Quick instructions required the administrator to come
back and install the DMA mailer.conf (3 steps).  Let's reduce this
to 2 steps which doesn't require a post-upgrade step

9 years agomail(1): call sendmail, not send-mail
John Marino [Mon, 9 Mar 2015 06:33:45 +0000 (07:33 +0100)]
mail(1): call sendmail, not send-mail

There is no actual executable or link to executable named "send-mail".
Somehow the request must be processed by the mailwrapper because tuxillo
reports mail(1) will not function without an entry in mailer.conf.

Rather than fix all the sample mailer.conf files, the installed one, and
the MTA switch instructions, just make mail(1) spawn "sendmail" instead.
This works because send-mail is always an alias for sendmail in
/etc/mail/mailer.conf

9 years agoxdisk - Fix improper EIO
Matthew Dillon [Mon, 9 Mar 2015 07:36:18 +0000 (00:36 -0700)]
xdisk - Fix improper EIO

* Fix an issue when xa_strategy() is called when no spans are valid,
  but before open_tag could be terminated.  This improperly caused the
  BIO to fail.

  If the BIO is not flagged to allow failures, place the BIO on sc->bioq
  when this situation occurs instead of causing it to fail.  The BIO will
  be requeued when a new span becomes valid.

* With this change a hammer2 mount on a xdisk appears to survive multiple
  communications failures without error (i.e. killing the hammer2 service
  demon either box, then restarting it).

* Fix a locking panic.

9 years agoxdisk - Reprobe when new SPAN state is available
Matthew Dillon [Mon, 9 Mar 2015 04:01:27 +0000 (21:01 -0700)]
xdisk - Reprobe when new SPAN state is available

* Reprobe the disks when new SPAN state is available, in case probes from
  prior span states failed (since their I/Os are allowed to fail).

* Add more debugging for now.

9 years agodmsg - Stabilization work
Matthew Dillon [Mon, 9 Mar 2015 03:49:31 +0000 (20:49 -0700)]
dmsg - Stabilization work

* Refactor the circuit failure handling code.  When a connection is lost
  circuits running through that connection and all sub-circuits/states
  (recursively) are aborted.  This will propagate through the graph and
  there are plenty of edge cases where a failure may be propagating in
  one direction and a request in the other direction.

  The library is responsible for providing missing transaction closures
  when circuits and states fail.

* Add code to handle circuit failure races against newly created messages.
  The STATE_DYING flag is now inherited by the newly created message from
  its parent.

* The state structure on receive is now updated before the callback is
  made so it can be atomic with the lock, instead of after.

* Lots of debugging added and some cleanup.

9 years agokernel: Remove (unhooked) acx(4), bwi(4), iwl(4) and rtw(4).
Sascha Wildner [Mon, 9 Mar 2015 02:06:04 +0000 (03:06 +0100)]
kernel: Remove (unhooked) acx(4), bwi(4), iwl(4) and rtw(4).

The first three were written by sephe and rtw(4) was ported from NetBSD
by him. They were all never ported to the newer wlan(4) upgrades we got,
starting with Rui Paulo's back in 2010.

Approved-by: sephe
9 years agomailer.conf - Add missing send-mail for dma.
Antonio Huete Jimenez [Mon, 9 Mar 2015 01:31:31 +0000 (02:31 +0100)]
mailer.conf - Add missing send-mail for dma.

- This allows mail(1) program to send mails again.

9 years agoFix modes and ownership of /etc/mail reinstallable files
John Marino [Sun, 8 Mar 2015 20:09:38 +0000 (21:09 +0100)]
Fix modes and ownership of /etc/mail reinstallable files

The new sample files and old README were being installed with the
wrong permissions and the wrong group ownership.  Reset that back
to 644 and standard perms.