dragonfly.git
8 years agosys/vfs/tmpfs: Make flag handling consistent [2/2]
Tomohiro Kusumi [Fri, 8 May 2015 11:33:07 +0000 (20:33 +0900)]
sys/vfs/tmpfs: Make flag handling consistent [2/2]

- Remove unnecessary unlock/lock after the previous commit.

8 years agosys/vfs/tmpfs: Make flag handling consistent [1/2]
Tomohiro Kusumi [Fri, 8 May 2015 11:19:09 +0000 (20:19 +0900)]
sys/vfs/tmpfs: Make flag handling consistent [1/2]

- Not taking inode lock on if-test for inode status introduces
  a potential race.

- Above race is basically harmless though since if-test itself
  was redundant and basically results the same with or without it.
  So get rid of it and keep the |= part with inode lock.

8 years agosys/vfs/tmpfs: Cleanups
Tomohiro Kusumi [Fri, 8 May 2015 10:48:47 +0000 (19:48 +0900)]
sys/vfs/tmpfs: Cleanups

- hunk1 - Remove unnecessary #if0/endif.

- hunk2 - Remove unnecessary goto.

8 years agoagp: Remove support for pre-amd64 ALI, AMD, ATI and Nvidia chipsets
François Tigeot [Fri, 8 May 2015 12:14:01 +0000 (14:14 +0200)]
agp: Remove support for pre-amd64 ALI, AMD, ATI and Nvidia chipsets

These chipsets were paired with i386-only CPUs and thus have no
chance of ever being used on DragonFly anymore.

8 years agodrm/i915: Update to Linux 3.14
François Tigeot [Fri, 8 May 2015 07:25:57 +0000 (08:25 +0100)]
drm/i915: Update to Linux 3.14

Changes specific to the DragonFly driver:

* Most GEM code paths are now similar to Linux, leading to increased
  stability and performance.
  Making this change was greatly helped by studying the OpenBSD code.

* We were previously using legacy functions to set up page table entries and
  this was starting to become a serious problem on particular platforms such
  as gen4 or Broadwell. As of this commit, we now use the same chip-specific
  virtual functions as Linux.

* RC6 and Frame Buffer Compression power savings enabled by default, depending
  on the GPU family

Changes brought by the Linux 3.11 => 3.14 driver update:

* Various bug fixes on all GPU generations, especially stability improvements

* Power consumption improvements

* Many Valleyview/Baytrail support improvements

* The giant 128MB L4 cache is now enabled when present on Haswell

* Added support for Broadwell GPUs

* HDMI 4K support

* basic support for 3D/stereo displays on HDMI

8 years agoagp: Fix install_gtt_pte functions
François Tigeot [Fri, 8 May 2015 06:22:24 +0000 (08:22 +0200)]
agp: Fix install_gtt_pte functions

Some chips used the wrong functions and some chip-specific install_gtt_pte
functions were buggy.

Fix both issues.

8 years agoagp: Add Broadwell support
Matthew Dillon [Fri, 8 May 2015 06:17:24 +0000 (08:17 +0200)]
agp: Add Broadwell support

8 years agoinstaller: Add missing dir to install.
Sascha Wildner [Thu, 7 May 2015 16:45:41 +0000 (18:45 +0200)]
installer: Add missing dir to install.

8 years agosys/vfs/tmpfs: Fix lock ordering
Tomohiro Kusumi [Thu, 7 May 2015 15:33:43 +0000 (00:33 +0900)]
sys/vfs/tmpfs: Fix lock ordering

- Get locks in consistent order (dnode -> node).

8 years agokernel/acpi: Remove some local changes from a no-longer used file.
Sascha Wildner [Wed, 6 May 2015 21:26:42 +0000 (23:26 +0200)]
kernel/acpi: Remove some local changes from a no-longer used file.

8 years agosys/vfs/tmpfs: Fix typo
Tomohiro Kusumi [Wed, 6 May 2015 16:09:23 +0000 (01:09 +0900)]
sys/vfs/tmpfs: Fix typo

- Flush all vnodes on unmount(2).

8 years agosys/vfs/tmpfs: Fix assertion
Tomohiro Kusumi [Wed, 6 May 2015 16:03:09 +0000 (01:03 +0900)]
sys/vfs/tmpfs: Fix assertion

- It's always expected to be 2.

8 years agobsd-family-tree: Sync with FreeBSD.
Sascha Wildner [Wed, 6 May 2015 16:40:56 +0000 (18:40 +0200)]
bsd-family-tree: Sync with FreeBSD.

* DragonFly 4.0.2 to 4.0.5

* OpenBSD 5.7

* The Design and Implementation of the FreeBSD Operating System, 2nd Ed.

8 years agocoretemp: Add 'temp' to sensor description.
Sepherosa Ziehau [Tue, 5 May 2015 14:19:36 +0000 (22:19 +0800)]
coretemp: Add 'temp' to sensor description.

8 years agosensor: Factor out helper functions.
Sepherosa Ziehau [Tue, 5 May 2015 14:13:22 +0000 (22:13 +0800)]
sensor: Factor out helper functions.

8 years agomemtemp: Add 'temp' to the sensor description
Sepherosa Ziehau [Tue, 5 May 2015 13:40:32 +0000 (21:40 +0800)]
memtemp: Add 'temp' to the sensor description

8 years agokernel/ddb: Add a DB_COMMAND_FLAG() macro to set the flag, too.
Sascha Wildner [Tue, 5 May 2015 17:59:36 +0000 (19:59 +0200)]
kernel/ddb: Add a DB_COMMAND_FLAG() macro to set the flag, too.

8 years agosys/vfs/tmpfs: Lock tmpfs_mount member
Tomohiro Kusumi [Tue, 5 May 2015 15:33:21 +0000 (00:33 +0900)]
sys/vfs/tmpfs: Lock tmpfs_mount member

- Reading tmp->tm_nodes_inuse needs lock

8 years agosys/vfs/tmpfs: Add comment
Tomohiro Kusumi [Tue, 5 May 2015 15:26:24 +0000 (00:26 +0900)]
sys/vfs/tmpfs: Add comment

- This function unlocks a lock acquired by a caller.

8 years agoarp: Add sysctl to avoid creation failure log
Sepherosa Ziehau [Tue, 5 May 2015 13:03:50 +0000 (21:03 +0800)]
arp: Add sysctl to avoid creation failure log

It could be annoying sometime.

8 years agoecc/e5: Hook up error correction counting into sensors framework.
Sepherosa Ziehau [Tue, 5 May 2015 13:03:12 +0000 (21:03 +0800)]
ecc/e5: Hook up error correction counting into sensors framework.

8 years agocoretemp: Enhance data of devctl notify event.
Sepherosa Ziehau [Mon, 4 May 2015 13:04:33 +0000 (21:04 +0800)]
coretemp: Enhance data of devctl notify event.

8 years agomemtemp: Mention devctl notify event
Sepherosa Ziehau [Mon, 4 May 2015 13:03:31 +0000 (21:03 +0800)]
memtemp: Mention devctl notify event

8 years agoig_hal: Fix improper multicast setup
Sepherosa Ziehau [Mon, 4 May 2015 12:28:30 +0000 (20:28 +0800)]
ig_hal: Fix improper multicast setup

Obtained-from: dillon@

8 years agosys/vfs/tmpfs: Remove #include <sys/spinlock2.h>
Tomohiro Kusumi [Mon, 4 May 2015 18:55:17 +0000 (03:55 +0900)]
sys/vfs/tmpfs: Remove #include <sys/spinlock2.h>

- tmpfs no longer uses spinlock (it did before).

8 years agosys/vfs/tmpfs: Lock tmpfs member on ino allocation
Tomohiro Kusumi [Mon, 4 May 2015 18:32:47 +0000 (03:32 +0900)]
sys/vfs/tmpfs: Lock tmpfs member on ino allocation

- tmp->tm_ino++;
  should be properly protected by TMPFS_LOCK/UNLOCK().

8 years agosys/vfs/tmpfs: Change tm_ino type from 'int' to 'ino_t'
Tomohiro Kusumi [Mon, 4 May 2015 17:54:30 +0000 (02:54 +0900)]
sys/vfs/tmpfs: Change tm_ino type from 'int' to 'ino_t'

- tmpfs_mount::tm_ino needs to be ino_t.

- A wrapper function for ino allocation tmpfs_fetch_ino() and
  inode itself assume it's ino_t, but not int.

8 years agoagp: Remove support for pre-amd64 Intel chipsets
François Tigeot [Mon, 4 May 2015 18:50:49 +0000 (20:50 +0200)]
agp: Remove support for pre-amd64 Intel chipsets

These chipsets were paired with i386-only CPUs and thus have no
chance of being used with current DragonFly releases.

8 years agokernel/ddb: Use NULL for pointers.
Sascha Wildner [Mon, 4 May 2015 18:43:06 +0000 (20:43 +0200)]
kernel/ddb: Use NULL for pointers.

8 years agosys/vfs/tmpfs: Remove trailing whitespace
Tomohiro Kusumi [Mon, 4 May 2015 16:07:52 +0000 (01:07 +0900)]
sys/vfs/tmpfs: Remove trailing whitespace

- Lines changed by 66fa44e7 have trailing whitespaces for some reason.

8 years agodrm: Add alloc_page()
François Tigeot [Mon, 4 May 2015 07:35:03 +0000 (09:35 +0200)]
drm: Add alloc_page()

8 years agodrm: Add pci_resource_start and pci_resource_len()
François Tigeot [Mon, 4 May 2015 07:34:51 +0000 (09:34 +0200)]
drm: Add pci_resource_start and pci_resource_len()

8 years agodrm: Add a pci id field in struct pci_dev
François Tigeot [Mon, 4 May 2015 07:31:19 +0000 (09:31 +0200)]
drm: Add a pci id field in struct pci_dev

8 years agodrm: Add io_mapping_create_wc()
François Tigeot [Mon, 4 May 2015 07:30:58 +0000 (09:30 +0200)]
drm: Add io_mapping_create_wc()

8 years agodrm: Add __free_page()
François Tigeot [Mon, 4 May 2015 07:29:20 +0000 (09:29 +0200)]
drm: Add __free_page()

8 years agodrm: Add sg_page_iter_dma_address()
François Tigeot [Mon, 4 May 2015 07:25:48 +0000 (09:25 +0200)]
drm: Add sg_page_iter_dma_address()

8 years agodrm: Add IS_ENABLED()
François Tigeot [Mon, 4 May 2015 07:23:15 +0000 (09:23 +0200)]
drm: Add IS_ENABLED()

8 years agodrm: Add scatterlist functions
Matthew Dillon [Mon, 4 May 2015 07:21:27 +0000 (09:21 +0200)]
drm: Add scatterlist functions

8 years agodrm: Add alloc_pages and __free_pages()
Matthew Dillon [Mon, 4 May 2015 07:10:53 +0000 (09:10 +0200)]
drm: Add alloc_pages and __free_pages()

8 years agodrm: Add pci_dma_mapping_error()
Matthew Dillon [Mon, 4 May 2015 07:08:38 +0000 (09:08 +0200)]
drm: Add pci_dma_mapping_error()

8 years agodrm: Add asm/pgtable.h and asm/pgtable_types.h
François Tigeot [Mon, 4 May 2015 07:07:27 +0000 (09:07 +0200)]
drm: Add asm/pgtable.h and asm/pgtable_types.h

8 years agodrm: Fix linux/seq_file.h
François Tigeot [Mon, 4 May 2015 07:05:29 +0000 (09:05 +0200)]
drm: Fix linux/seq_file.h

8 years agodrm: Add mutex_trylock() and mutex_lock_interruptible()
François Tigeot [Mon, 4 May 2015 07:03:35 +0000 (09:03 +0200)]
drm: Add mutex_trylock() and mutex_lock_interruptible()

8 years agodrm: Add a few PCI power management definitions
François Tigeot [Mon, 4 May 2015 07:01:26 +0000 (09:01 +0200)]
drm: Add a few PCI power management definitions

8 years agodrm: Add a definition of mmiowb()
François Tigeot [Mon, 4 May 2015 06:57:02 +0000 (08:57 +0200)]
drm: Add a definition of mmiowb()

8 years agodrm: Add __copy_from_user_inatomic()
François Tigeot [Mon, 4 May 2015 06:56:43 +0000 (08:56 +0200)]
drm: Add __copy_from_user_inatomic()

8 years agodrm: Add definitions of ECHRNG and ENOTSUPP
François Tigeot [Mon, 4 May 2015 06:53:43 +0000 (08:53 +0200)]
drm: Add definitions of ECHRNG and ENOTSUPP

8 years agodrm: Add asm/page.h
François Tigeot [Mon, 4 May 2015 06:51:30 +0000 (08:51 +0200)]
drm: Add asm/page.h

8 years agodrm: Add pci_map_page and pci_unmap_page()
François Tigeot [Sun, 3 May 2015 19:25:28 +0000 (21:25 +0200)]
drm: Add pci_map_page and pci_unmap_page()

8 years agodrm: Add linux/uaccess.h
François Tigeot [Sun, 3 May 2015 19:23:41 +0000 (21:23 +0200)]
drm: Add linux/uaccess.h

8 years agodrm: Really implement fault_in_multipages_writeable()
François Tigeot [Sun, 3 May 2015 19:12:32 +0000 (21:12 +0200)]
drm: Really implement fault_in_multipages_writeable()

Obtained-from: FreeBSD

8 years agodrm: Really implement fault_in_multipages_readable()
François Tigeot [Sun, 3 May 2015 19:11:40 +0000 (21:11 +0200)]
drm: Really implement fault_in_multipages_readable()

Obtained-from: FreeBSD

8 years agodrm: linux/mm.h: Add vma_pages()
François Tigeot [Sun, 3 May 2015 19:09:48 +0000 (21:09 +0200)]
drm: linux/mm.h: Add vma_pages()

8 years agodrm: Fix linux/export.h and linux/module.h
François Tigeot [Sun, 3 May 2015 20:07:51 +0000 (21:07 +0100)]
drm: Fix linux/export.h and linux/module.h

8 years agodrm: Import linux/rbtree.h
François Tigeot [Sun, 3 May 2015 20:00:36 +0000 (21:00 +0100)]
drm: Import linux/rbtree.h

Obtained-from: FreeBSD/OFED

8 years agodrm: Add linux/pagemap.h
François Tigeot [Sun, 3 May 2015 19:16:46 +0000 (20:16 +0100)]
drm: Add linux/pagemap.h

8 years agosys/vfs/tmpfs: Fix comments
Tomohiro Kusumi [Sun, 3 May 2015 17:25:39 +0000 (02:25 +0900)]
sys/vfs/tmpfs: Fix comments

- DragonFly has 'struct tmpfs_node *dnode' for the first arg.
  (it was vnode* in FreeBSD)

8 years agodrm: linux/kernel.h: Add mult_frac()
François Tigeot [Sun, 3 May 2015 17:31:58 +0000 (19:31 +0200)]
drm: linux/kernel.h: Add mult_frac()

Obtained-from: NetBSD

8 years agodrm: linux/delay.h: Add ndelay and usleep_range()
François Tigeot [Sun, 3 May 2015 15:31:24 +0000 (17:31 +0200)]
drm: linux/delay.h: Add ndelay and usleep_range()

usleep_range() Obtained from OpenBSD

8 years agokernel/acpi: Expose the AcpiUtConvertStringToUuid() func for the module.
Sascha Wildner [Sun, 3 May 2015 12:05:57 +0000 (14:05 +0200)]
kernel/acpi: Expose the AcpiUtConvertStringToUuid() func for the module.

8 years agokernel/acpi: Fix buildkernel.
Sascha Wildner [Sun, 3 May 2015 11:28:02 +0000 (13:28 +0200)]
kernel/acpi: Fix buildkernel.

Not having ACPI_DEBUG in the kernel configuration broke the build of
the acpi.ko module. Fix this by exposing AcpiUtConvertStringToUuid()'s
prototype always when the ACPICA is built as a module. The other
combinations are covered by 'files' and by the other ifdef checks.

Checking the unmodified X86_64_GENERIC must have slipped through in my
testing of b061b83c16d6660c9e03e24186b0addc5d4115d0 somehow. :(

Reported-by: Robin Hahling <robin.hahling@gw-computing.net>
8 years agosys/vfs/hammer: Add ascii art on pip/ip/rec relation
Tomohiro Kusumi [Sat, 2 May 2015 16:13:31 +0000 (01:13 +0900)]
sys/vfs/hammer: Add ascii art on pip/ip/rec relation

- Add an ascii art which describes the existing comment.

8 years agosbin/hammer: Remove unused READAHEAD flag
Tomohiro Kusumi [Fri, 1 May 2015 17:17:04 +0000 (02:17 +0900)]
sbin/hammer: Remove unused READAHEAD flag

- Cleanup get_buffer() by removing HAMMER_BUFINFO_READAHEAD since
  this flag does nothing, but taking care of negative 'isnew' for
  this flag makes things look complicated than it should.

- For the else case, 'if (isnew >= 0)' is not necessary because it's
  always true from the way get_buffer() is recursively called via
  get_buffer_readahead() via get_buffer().

8 years agosbin/hammer: Add a function find_buffer()
Tomohiro Kusumi [Fri, 1 May 2015 17:05:59 +0000 (02:05 +0900)]
sbin/hammer: Add a function find_buffer()

- Make things a bit more clear by separating hash table stuff
  into a function.

8 years agokernel/acpica: Fix building the debugger/disassembler for the kernel.
Sascha Wildner [Fri, 1 May 2015 21:51:50 +0000 (23:51 +0200)]
kernel/acpica: Fix building the debugger/disassembler for the kernel.

After this commit, the ACPI_DEBUG kernel option will cause the ACPICA
debugger and disassembler to be included in the kernel build. It can
then be called from DDB with 'call acpi_EnterDebugger'.

Most of this commit reverts fe3013ebf55edd20d57e7e806c445a5a5e2e7b11.

The dmresrc2.c changes are from FreeBSD.

8 years agosbin/hammer: Conform to style(9)
Tomohiro Kusumi [Fri, 1 May 2015 12:08:36 +0000 (21:08 +0900)]
sbin/hammer: Conform to style(9)

- Kernel include files (i.e. sys/*.h) come first;
  normally, include <sys/types.h> OR <sys/param.h>, but not both.

- Remove #include <sys/param.h>

8 years agosbin/hammer: Cleanups
Tomohiro Kusumi [Thu, 30 Apr 2015 15:23:10 +0000 (00:23 +0900)]
sbin/hammer: Cleanups

- hunk 1 - The second arg gets |ed with encoded zone address.

- hunk 2 - Remove duplicated comment.

8 years agosys/vfs/hammer: Add inline functions hammer_modify_buffer|volume_noundo()
Tomohiro Kusumi [Thu, 30 Apr 2015 10:15:55 +0000 (19:15 +0900)]
sys/vfs/hammer: Add inline functions hammer_modify_buffer|volume_noundo()

- Add noundo wrappers hammer_modify_buffer|volume_noundo() similar to
  the existing inline function hammer_modify_node_noundo() for better
  readability.

- A pair of args (NULL, 0) indicating that it's not generating undo is
  a bit unclear (and there are even comments for them).

- (The compiler doesn't actually inline hammer_modify_node_noundo()
  in my environment, but these one-line wrappers are inlined)

8 years agokernel - Fix swap-full process killer
Matthew Dillon [Thu, 30 Apr 2015 17:25:27 +0000 (10:25 -0700)]
kernel - Fix swap-full process killer

* Previously once swap became full the kernel could enter a dead zone where
  no new pagouts are possible but there is just barely sufficient memory for
  the system to run.  That is, the minimum free page target is met but the
  pageout target cannot be met.

  This caused a 2+ second stall in the VM system followed by a 1 second
  run (where the pageout demon stops trying for 1 second before trying again),
  making the system unusable anyway.

* Replace that code.  Now we start killing processes once swap becomes full
  and we are unable to reach our paging target.  That is, we require that the
  pageout demon MUST be able to reach its paging target for free pages for
  the system to run well, even if there are barely sufficient pages to run
  the current steady state.

* Total anonymous (pageable) memory is still effectively RAM + SWAP.  It's
  just slightly less than it was before because it requires the free page
  target to be met and not just the free page minimum.

Reported-by: marino
8 years agosbin/hammer: Use existing macro to encode zone2 address
Tomohiro Kusumi [Wed, 29 Apr 2015 16:25:04 +0000 (01:25 +0900)]
sbin/hammer: Use existing macro to encode zone2 address

- Use HAMMER_ENCODE_RAW_BUFFER().

- Using this macro should always be better in the sense that it
  properly masks the input offset (clears zone and volume bits).

8 years agosys/vfs/hammer: Cleanup hammer.h
Tomohiro Kusumi [Wed, 29 Apr 2015 16:02:23 +0000 (01:02 +0900)]
sys/vfs/hammer: Cleanup hammer.h

- It was more appropriate to have hammer_xlate_to_zone2 macro in
  sys/vfs/hammer/hammer_disk.h than sys/vfs/hammer/hammer.h.

8 years agosys/vfs/hammer: Cleanup ifdef/else in hammer.h [2/2]
Tomohiro Kusumi [Wed, 29 Apr 2015 15:21:56 +0000 (00:21 +0900)]
sys/vfs/hammer: Cleanup ifdef/else in hammer.h [2/2]

872a7eee introduced hammer.h to userspace using ifdef/else switches
  that needs to be cleaned up. It ended up that everything in hammer.h
  was kernel stuff. Userspace needs this header only to include other
  hammer headers that are already available in userspace.

- hunk 1,2 - Cleanup and conform to style(9).

- hunk 3,4 - Userspace doesn't need HAMMER_CHKSPC_XXX. These are only
  internally used by big block allocator.

- hunk 5,6 - Userspace doesn't need hammer_modify_xxx(). These are only
  internally used to begin i/o and generate undo for some meta data.

8 years agosys/vfs/hammer: Cleanup ifdef/else in hammer.h [1/2]
Tomohiro Kusumi [Wed, 29 Apr 2015 14:01:27 +0000 (23:01 +0900)]
sys/vfs/hammer: Cleanup ifdef/else in hammer.h [1/2]

872a7eee introduced hammer.h to userspace using ifdef/else switches
  that needs to be cleaned up.

- hunk 1,3,4 - Add comments to endif.

- hunk 2 - These can be combined.

8 years agodefault/compilers.conf: Add two new entries
John Marino [Tue, 28 Apr 2015 21:51:37 +0000 (23:51 +0200)]
default/compilers.conf: Add two new entries

Add lang/clang36 (released) and lang/gcc6-devel (newly opened for
development) to the default compilers.conf file.

8 years agosys/vfs/hammer: Add -A option to reblock|rebalance all pfs
Tomohiro Kusumi [Fri, 24 Apr 2015 16:56:02 +0000 (01:56 +0900)]
sys/vfs/hammer: Add -A option to reblock|rebalance all pfs

- -A option makes certain per pfs hammer commands perform on all pfs
  of the filesystem that the [filesystem] arg belongs to. Currently
  hammer reblock and rebalance commands support this. It does nothing
  to other commands.

- With -A option, above hammer commands use a range of 0 to 0xFFFF
  for pfs id (upper 16 bits) of the cursor localization. This makes
  it iterate all pfs in the filesystem.

- Above difference in localization range means btree iteration
  applies to larger range of nodes in terms of pfs id, since it's
  been used as a top priority key that works as a localizing factor
  of pfs within the btree. There is no logical difference other than
  the range is different. So performing these commands on all pfs is
  as simple as changing the localization range (unless other keys are
  involved as additional parameters like hammer prune does).

8 years agosys/vfs/hammer: Cleanup cursor initialization code on prune
Tomohiro Kusumi [Fri, 24 Apr 2015 14:52:28 +0000 (23:52 +0900)]
sys/vfs/hammer: Cleanup cursor initialization code on prune

- Just make things a bit more clear (for the upcoming changes).

- The rule is the ioctl caller sets localization type to prune,
  and the ioctl code adds up ip localization to initialize cursor.

8 years agosys/vfs/hammer: Cleanup cursor initialization code on rebalance
Tomohiro Kusumi [Fri, 24 Apr 2015 14:40:49 +0000 (23:40 +0900)]
sys/vfs/hammer: Cleanup cursor initialization code on rebalance

- Just make things a bit more clear (for the upcoming changes).

- The rule is the ioctl caller sets localization type to rebalance,
  and the ioctl code adds up ip localization to initialize cursor.

8 years agonrelease: Fix comment typo.
Sascha Wildner [Sun, 26 Apr 2015 11:58:23 +0000 (13:58 +0200)]
nrelease: Fix comment typo.

8 years agousb4bsd: Add Wildcat Point-LP controller
Markus Pfeiffer [Mon, 27 Apr 2015 21:43:40 +0000 (21:43 +0000)]
usb4bsd: Add Wildcat Point-LP controller

This enables routing of ports through the XHCI instead of the EHCI on
devices with this controller, such as the Broadwell NUC.

8 years agousb4bsd: Fix if_run
Markus Pfeiffer [Mon, 27 Apr 2015 18:18:09 +0000 (18:18 +0000)]
usb4bsd: Fix if_run

* if_run was still using the locking from before the last update
  of the wlan stack.

8 years agoRemove old timezone file via 'make upgrade'.
Sascha Wildner [Mon, 27 Apr 2015 16:16:06 +0000 (18:16 +0200)]
Remove old timezone file via 'make upgrade'.

8 years agoktr: Reduce number of early boot KTR entries to 256
Sepherosa Ziehau [Mon, 27 Apr 2015 12:52:02 +0000 (20:52 +0800)]
ktr: Reduce number of early boot KTR entries to 256

This prevents kernel or module loading failure due to excessive BSS
usage if KTR_ENTRIES is large.

While I'm here, staticize some global variables.

8 years agousched/bsd4: Avoid ktr confliction on chooseproc
Sepherosa Ziehau [Mon, 27 Apr 2015 12:51:36 +0000 (20:51 +0800)]
usched/bsd4: Avoid ktr confliction on chooseproc

8 years agortld: Fix a memory leak on thread termination
Imre Vadasz [Sun, 26 Apr 2015 22:20:47 +0000 (00:20 +0200)]
rtld: Fix a memory leak on thread termination

* Plugs a memory leak in the free_tls() function which was leaking
  some memory on every thread termination.

8 years agoktrdump: Fix caller chain support
Sepherosa Ziehau [Sun, 26 Apr 2015 12:18:51 +0000 (20:18 +0800)]
ktrdump: Fix caller chain support

And set default kernel file to /boot/kernel/kernel, if sysctl
kern.bootfile fails.

8 years agoktr/x86_64: Fix caller chain support
Sepherosa Ziehau [Sun, 26 Apr 2015 12:17:20 +0000 (20:17 +0800)]
ktr/x86_64: Fix caller chain support

8 years agoem/emx/igb/ix: Increase opackets stats in if_start method
Sepherosa Ziehau [Fri, 24 Apr 2015 12:30:36 +0000 (20:30 +0800)]
em/emx/igb/ix: Increase opackets stats in if_start method

Since these drivers TX interrupt are aggressively aggregated, increasing
opackets at TX interrupt time will make the opackets statistics vastly
inaccurate.

Noticed-by: dillon@
8 years agosys/vfs/hammer: Remove unnecessary if test
Tomohiro Kusumi [Sun, 26 Apr 2015 09:42:06 +0000 (18:42 +0900)]
sys/vfs/hammer: Remove unnecessary if test

- There is the same 'if (error == 0)' for a local variable error
  right before this one which can be combined.

8 years agosys/vfs/hammer: Make hammer_delete_at_cursor() properly set *stat_bytes
Tomohiro Kusumi [Sat, 25 Apr 2015 18:55:01 +0000 (03:55 +0900)]
sys/vfs/hammer: Make hammer_delete_at_cursor() properly set *stat_bytes

- This commit makes hammer_delete_at_cursor() set *stat_bytes arg.
  *stat_bytes has been ignored although it was supposed to set bytes
  physically deleted from the btree.

- hammer prune command expects this function to set above bytes and
  print it after pruning, however it's always 0 because the function
  ignores it.

- Note that the actual size freed from zone address space may differ
  from *stat_bytes (or what the hammer prune command shows), because
  hammer_blockmap_free() may round it up with its alignment size.

  ==========
  example1 - with existing hammer
  # hammer prune ./test
  TID 000000010404e750 - 0000000104071090
  TID 0000000104034060 - 000000010404e750
  TID 0000000104019cb0 - 0000000104034060
  TID 0000000000000001 - 0000000104019cb0
  Prune /HAMMER/: 4 snapshots
  Prune /HAMMER/: objspace 8000000000000000:0000 7fffffffffffffff:ffff pfs_id 0
  Prune /HAMMER/: prune_min is 0d/00:00:00
  Prune /HAMMER/ succeeded
  Pruned 51/769595 records (10 directory entries) and 0 bytes

  example2 - with this commit
  # hammer prune ./test
  TID 000000010404ea10 - 0000000104071390
  TID 0000000104034360 - 000000010404ea10
  TID 0000000104019fb0 - 0000000104034360
  TID 0000000000000001 - 0000000104019fb0
  Prune /HAMMER/: 4 snapshots
  Prune /HAMMER/: objspace 8000000000000000:0000 7fffffffffffffff:ffff pfs_id 0
  Prune /HAMMER/: prune_min is 0d/00:00:00
  Prune /HAMMER/ succeeded
  Pruned 51/769596 records (11 directory entries) and 6710 bytes

8 years agoSync zoneinfo database with tzdata2015d from ftp://ftp.iana.org/tz/releases
Sascha Wildner [Sat, 25 Apr 2015 13:23:09 +0000 (15:23 +0200)]
Sync zoneinfo database with tzdata2015d from ftp://ftp.iana.org/tz/releases

Changes affecting future time stamps

* Egypt's spring-forward transition is at 24:00 on April's last Thursday,
    not 00:00 on April's last Friday.  2015's transition will therefore
    be on Thursday, April 30 at 24:00, not Friday, April 24 at 00:00.
    Similar fixes apply to 2026, 2037, 2043, etc.
    (Thanks to Steffen Thorsen.)

* Egypt will not observe DST in 2015 and will consider canceling it
    permanently.  For now, assume no DST indefinitely.
    (Thanks to Ahmed Nazmy and Tim Parenti.)

Changes affecting past time stamps

* The following changes affect some pre-1991 Chile-related time stamps
    in America/Santiago, Antarctica/Palmer, and Pacific/Easter.

      The 1910 transition was January 10, not January 1.

      The 1918 transition was September 10, not September 1.

      The UTC-4 time observed from 1932 to 1942 is now considered to be
      standard time, not year-round DST.

      Santiago observed DST (UTC-3) from 1946-07-15 through 1946-08-31,
      then reverted to standard time, then switched its time zone to
      UTC-5 on 1947-04-01.

      Assume transitions before 1968 were at 00:00, since we have no data
      saying otherwise.

      The spring 1988 transition was 1988-10-09, not 1988-10-02.
      The fall 1990 transition was 1990-03-11, not 1990-03-18.

      Assume no UTC offset change for Pacific/Easter on 1890-01-01,
      and omit all transitions on Pacific/Easter from 1942 through 1946
      since we have no data suggesting that they existed.

    One more zone has been turned into a link, as it differed
    from an existing zone only for older time stamps.  As usual,
    this change affects UTC offsets in pre-1970 time stamps only.
    The affected zone is America/Montreal.

* America/Whitehorse switched from UTC-9 to UTC-8 on 1967-05-28, not
    1966-07-01.  Also, Yukon's time zone history is documented better.
    (Thanks to Brian Inglis and Dennis Ferguson.)

Change affecting past and future time zone abbreviations

* The abbreviations for Hawaii-Aleutian standard and daylight times
    have been changed from HAST/HADT to HST/HDT, as per US Government
    Printing Office style.  This affects only America/Adak since 1983,
    as America/Honolulu was already using the new style.

8 years agodntpd - Fix va_list handling bug crash
Matthew Dillon [Fri, 24 Apr 2015 17:22:02 +0000 (10:22 -0700)]
dntpd - Fix va_list handling bug crash

* Later versions of gcc manipulate va_lists in ways that prevent them from
  being reused, use va_copy() to make a copy in the log code which uses
  the va_list twice.

* Fixes a seg-fault on startup.

8 years agohammer - Allow NFS exports of slaves
Matthew Dillon [Fri, 24 Apr 2015 16:42:09 +0000 (09:42 -0700)]
hammer - Allow NFS exports of slaves

* Allows a SLAVE PFS to be exported.

* WARNING: Clients who mount a SLAVE PFS from a server will only mount a
  snapshot.  The client must unmount and remount the slave to resynchronize
  it.  Also, if the server wipes the history pertaining the snapshot the
  client mounted, the client's mount will become corrupt.

8 years agosound - Get sound working on alternative Acer C720p
Matthew Dillon [Fri, 24 Apr 2015 15:30:46 +0000 (08:30 -0700)]
sound - Get sound working on alternative Acer C720p

* This is a bit of a hack but one of our users had a C720p which had
  a HP vendor id for its chips.  It is possible that this was due to
  a BIOS mixup by Google.

* Add hacks for it so sound works on his device.

8 years agowpa_supplicant - CVE-2015-1863 (dead code in DFly so not an issue)
Matthew Dillon [Thu, 23 Apr 2015 23:56:54 +0000 (16:56 -0700)]
wpa_supplicant - CVE-2015-1863 (dead code in DFly so not an issue)

* Correct buffer overflow from CVE-2015-1863.

* Note that this code is NOT compiled into DragonFly's wpa_supplicant anyway,
  so the security advisory is not applicable to DragonFly.  Fix the code
  anyway so it isn't accidently enabled with the security hole before the
  next vendor update.

8 years agosys/vfs/hammer: Make comments up-to-date
Tomohiro Kusumi [Thu, 23 Apr 2015 12:55:05 +0000 (21:55 +0900)]
sys/vfs/hammer: Make comments up-to-date

- There was no 'if (dip)' when the .. comment was added in 5a930e66,
  but ea434b6f needed 'if (dip)' and was added.

8 years agoRevert "sbin/hammer: Print key_end.lo instead of key_beg.lo on reblock"
Tomohiro Kusumi [Thu, 23 Apr 2015 10:41:44 +0000 (19:41 +0900)]
Revert "sbin/hammer: Print key_end.lo instead of key_beg.lo on reblock"

This reverts commit d58869bda15ddc5e96c1c053196fcd3e56e340c6.

- According to the hammer rebalance (cmd_rebalance.c) which has
  a similar printf, this printf was probably intended to show
  localization type('s lower limit) when btree iteration starts,
  rather than localization types to look for during the iteration.
  Then it was right to print 0x0 (key_beg.localization) for %04x.

8 years agoemx: Add errata workaround for multiple TX queues
Sepherosa Ziehau [Thu, 23 Apr 2015 12:21:58 +0000 (20:21 +0800)]
emx: Add errata workaround for multiple TX queues

This makes multiple TX queues work on 82574.

Information-from: Sean Bruno <sbruno@ignoranthack.me>
Tested-with: 82571, 82574, I217

8 years agoSet gcc50 as the primary compiler, gcc47 as secondary
John Marino [Sun, 19 Apr 2015 06:14:37 +0000 (08:14 +0200)]
Set gcc50 as the primary compiler, gcc47 as secondary

Per request, rather than define NO_GCC47 to prevent the building of the
secondary compiler, the new variable is called NO_ALTCOMPILER.  This
will avoid some disruption in the future where the actual version is not
important, only the desire to avoid the secondary compiler.

8 years agogcc50: Update to release version 5.1.0 => 5.1.1
John Marino [Wed, 22 Apr 2015 09:19:58 +0000 (11:19 +0200)]
gcc50: Update to release version 5.1.0 => 5.1.1

Immediately after the release was tagged, another commit was added that
changed the version to 5.1.1.  Other than the version differing by 0.0.1,
this version is identical to what the GCC just released.

8 years agoMerge branch 'vendor/GCC50'
John Marino [Wed, 22 Apr 2015 19:43:22 +0000 (21:43 +0200)]
Merge branch 'vendor/GCC50'