perror.1: Document which locale related env variables affect perror(1).
Note need for most recent 3.6 possible before updating.
inet: Handle IP fragments in netisr0

For packet whose hash is provided by hardware, the processing netisr
may not be netisr0.  Add a IP fragments check at the beginning of
ip_input(): if the current processing netisr is not netisr0 and the
packet is an IP fragment, then redispatch it to netisr0.

Discussed-with: dillon@
netmap: port if_transmit() to ifq_dispatch()

Suggested by: sephe
Always check the limits of array index variables before using them.
route(8): Fix a sizeof bug.
newsyslog(8): Remove a NULL-check-after-use and instead assert != NULL.

Taken-from: FreeBSD
pfctl - Fix pf_print_state

* Fix a bug where the 'minutes' field in the expiration was not being
  calculated properly.

* Reformat the verbose output so it does not overflow 80 columns, and
  move the rule # printing up a little so it is not confusedly associated
  with the next entry.
pf - make the bulk of PF concurrent under normal operation

* state and ip fragment tables are now per-cpu.

* packet paths acquire pf_token shared instead of exclusive.  Packet
  processing runs concurrently.

* Any dynamic rules updates will run synchronously for now.

* State expiration from the pfpurge thread runs synchronously for now.
  More work can be done here.

* ioctl (and also pfsync) paths acquire pf_token exclusively.  That is,
  primarily pfctl commands.  This includes rules updates and state scans.
  More work can be done here.
buildworld - Add sync/sleep safety before mkinitrd

* Try to mitigate a bug in earlier versions of DragonFly that can be
  triggered by mkinitrd's use of the VN device by ensuring that the world
  is synced to disk before running mkinitrd.
drm/i915: Reorder function definitions in i915_gem.c

* Reducing differences with Linux 3.8.13

* No functional changes
kernel - Force manual hash calculation for IP fragments

* Hardware toeplitz hashes do not always distinguish IP fragments from
  full IP packets.  An IP fragment will typically have the
  (src,dst,srcport,dstport) in the first fragment, but will only have
  (src,dst) in the remaining fragments.  The HW might not understand this
  and generate hashes which prevent the fragments from being directed to
  the same cpu.

* Force a manual recalculation of the hash (ignore the HW hash) for any
  IP fragment.  That is, any IP packet with the IP_MF bit set or with a
  non-zero offset (masked by IP_OFFMASK).

* Direct all IP fragments to a target cpu based on the hash.  We previously
  directed all IP fragments to cpu 0.

* NOTE: The IP fragment handling code in the kernel is still serialized with
	a lock.  This will be addressed in a later commit.  However, fragments
	which are piped into PF will now be properly distributed across
	available cpus.

Submitted-by: sephe
kernel - Fix pf-based NAT

* Concurrency work on PF broke NAT.  Fix NAT for IPV4 TCP.

* This is not a complete fix, the NAT must be able to select from a range
  of local ports to replace sport to properly map the NAT onto the same
  cpu that the originating packet was forwarded to.

* Not fixed for UDP yet.
pfctl - Change default keep-policy to bring more in-line with other BSDs

* Change the default keep-policy to the equivalent of:

  set keep-policy keep state (pickups, sloppy)

* This is being done because without keep state PF is simply going to be
  too inefficient for any reasonable set of rules, and we no longer want
  to make users set the keep-policy line when keep state is already the
  default in other BSD systems.

* Note that we also set pickups and sloppy by default.  This allows the
  router and/or PF to be restarted and allows packet routing to change
  mid-stream without causing all active TCP connections to drop.  This
  may not be the default in other BSD systems but it should be.  Being
  ultra strict here to improve security against ICMP-based attacks removes
  too much flexibility to be appropriate.  Proper TCP implementations
  already do sequence space checks for RST packets.
kernel - merge fixes from FreeBSD

* Merge 8159278dbd8e019, fixes to pf_get_sport().  Primarily fixes the state
  key used to check whether a port is in-use or not.  NAT could previously
  choose a port that was already in-use.

* bzero() the state key to ensure that uninitialized fields are zero,
  otherwise the RB_FIND is likely to fail.

* Cleanup the case where there is no port range or the protocol is not
  supported.  In this situation, sport must be replicated on the host.
kernel: Sync ACPICA with Intel's version 20140627.

* Various bug fixes and enhancements (see changes.txt).

* Use new local printf() like functions for the utilities.

* Use new AcpiLogError for portability.

This that are also changed/new but it don't affect DragonFly so far:

* Support for ACPICA generation within the EFI environment.

* New OSL file I/O interface.

* New global AcpiGbl_VerifyTableChecksum.

For a more detailed list, please see sys/contrib/dev/acpica/changes.txt.
acpi: Sync aapits Makefile with 20140627 ACPICA test suite.
kernel/acpi_thinkpad: Unlock properly before returning.
unlock_return.cocci: Add a check for ACPI_SERIAL_{BEGIN,END}.
vga_pci: Improve vga boot display detection.

* Check the "VGA Enable" bit on the parent bridge only if it is a
  PCI-to-PCI bridge.

* Always check the "I/O" and "Memory address space decoding" bits on the
  video card itself.

* Furthermore, vga_pci_attach() logs "Boot video device" if the card
  being attached is the Chosen One:
    vgapci0: <VGA-compatible display> [...]
    vgapci0: Boot video device

This is FreeBSD's r259579.

Tested-by: François Tigeot <ftigeot@wolfpond.org>