kernel - Fix performance issue due to buffer fragmentation

* Systems with a lot of memory have very large buffer pools.  Defragmenting
  these pools can be expensive.  Often the buffer_map becomes full well
  before the bufspace actually hits its limits.  Filesystems such as HAMMER
  which use large buffer sizes (64K) are more likely to cause the problem.

  The result is extremely bad I/O performance for data not in the buffer
  cache which requires a new buffer to be instantiated.

* To solve this we double the size of the buffer_map's KVA area on
  64-bit systems while leaving the maximum buffer space allowed the
  same.  The larger virtual space greatly reduces KVA allocation
  failures due to fragmentation.

* This solves significant performance issues on monster with its 64G
  of ram, but should improve performance on any 64-bit system by
  reducing buffer cache defrag iterations.

* Also fix a possible intermediate value overflow in vlrureclaim().
altq/hfsc: Fix wrong malloc size

Reported-by: pavalos@
bce: Free serializer array in detach path
bce: Move RX serializers before TX serializers

RX serializers will be use to protect MSI-X
kernel - Increase NCMOUNT_NUMCACHE, add enable & statistics

* Increase NCMOUNT_NUMCACHE to 1009 (prime number), change to modulo.
  This cache improves long namecache path lookups.

* Add enable and statistics.  Cache defaults to enabled.

    debug.ncmount_cache_enable	(defaults to 1)
    debug.ncmount_cache_hit
    debug.ncmount_cache_miss
    debug.ncmount_cache_overwrite
Merge branch 'master' into gsocdrm_alter