]> CyberLeo.Net >> Repos - FreeBSD/stable/9.git/log
FreeBSD/stable/9.git
10 years agoMFC r264835: MFV r264829:
delphij [Fri, 9 May 2014 08:10:33 +0000 (08:10 +0000)]
MFC r264835: MFV r264829:

3897 zfs filesystem and snapshot limits

git-svn-id: svn://svn.freebsd.org/base/stable/9@265754 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264740:
delphij [Fri, 9 May 2014 08:07:05 +0000 (08:07 +0000)]
MFC r264740:

Use case insensitive match in portsnap.

PR: bin/186510
Submitted by: olli

git-svn-id: svn://svn.freebsd.org/base/stable/9@265753 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264671:
delphij [Fri, 9 May 2014 08:02:52 +0000 (08:02 +0000)]
MFC r264671:

MFV r264668:

4754 io issued to near-full luns even after setting noalloc threshold
4755 mg_alloc_failures is no longer needed

git-svn-id: svn://svn.freebsd.org/base/stable/9@265752 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264669: MFV r264666:
delphij [Fri, 9 May 2014 07:54:59 +0000 (07:54 +0000)]
MFC r264669: MFV r264666:

4374 dn_free_ranges should use range_tree_t

git-svn-id: svn://svn.freebsd.org/base/stable/9@265751 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: nc(1) from OpenBSD 5.5.
delphij [Fri, 9 May 2014 07:38:22 +0000 (07:38 +0000)]
MFC: nc(1) from OpenBSD 5.5.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265750 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263889: MFV r263887:
delphij [Fri, 9 May 2014 07:35:39 +0000 (07:35 +0000)]
MFC r263889: MFV r263887:

3993 zpool(1M) and zfs(1M) should support -p for "list" and "get"
4700 "zpool get" doesn't support -H or -o options

git-svn-id: svn://svn.freebsd.org/base/stable/9@265749 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263459 (MFV 263436-263438):
delphij [Fri, 9 May 2014 07:34:38 +0000 (07:34 +0000)]
MFC r263459 (MFV 263436-263438):

  3947 zpool(1M) references nonexistent zfs-features(5)
  4540 zpool(1M) man page doesn't describe "readonly" property
  3948 zfs sync=default is not accepted
  4611 zfs(1M) still mentions 'send -r' in synopsis
  4415 zpool(1M) man page missing "import -m" description
  4570 Document dedupditto pool property
  4572 Dedup-related documentation additions for zpool and zdb.
  1371 Add -D option description to zpool(1M) manpage
  4571 Add documentation for -T and interval to "zpool list"

git-svn-id: svn://svn.freebsd.org/base/stable/9@265748 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoNow that stable/9 is in 9.3 mode, switch default manual page
gjb [Fri, 9 May 2014 04:25:17 +0000 (04:25 +0000)]
Now that stable/9 is in 9.3 mode, switch default manual page
version to 9.3.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265736 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMark stable/9 as 9.3-PRERELEASE to indicate the code slush
gjb [Fri, 9 May 2014 04:21:46 +0000 (04:21 +0000)]
Mark stable/9 as 9.3-PRERELEASE to indicate the code slush
is now in effect for the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265735 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265732:
gjb [Fri, 9 May 2014 04:18:32 +0000 (04:18 +0000)]
MFC r265732:
  Add 9.3 to mdoc.local.

Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265734 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoDocument r265729, addition of mpr(4).
gjb [Fri, 9 May 2014 04:08:40 +0000 (04:08 +0000)]
Document r265729, addition of mpr(4).

Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265731 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC the mpr(4) driver for LSI's 12Gb SAS cards.
ken [Fri, 9 May 2014 03:52:10 +0000 (03:52 +0000)]
MFC the mpr(4) driver for LSI's 12Gb SAS cards.

This includes r265236, r265237, r265241, r265261, r265386, r265424, and
r265473.

  ------------------------------------------------------------------------
  r265236 | ken | 2014-05-02 14:25:09 -0600 (Fri, 02 May 2014) | 51 lines

  Bring in the mpr(4) driver for LSI's MPT3 12Gb SAS controllers.

  This is derived from the mps(4) driver, but it supports only the 12Gb
  IT and IR hardware including the SAS 3004, SAS 3008 and SAS 3108.

  Some notes about this driver:
   o The 12Gb hardware can do "FastPath" I/O, and that capability is included in
     this driver.

   o WarpDrive functionality has been removed, since it isn't supported in
     the 12Gb driver interface.

   o The Scatter/Gather list handling code is significantly different between
     the 6Gb and 12Gb hardware.  The 12Gb boards support IEEE Scatter/Gather
     lists.

  Thanks to LSI for developing and testing this driver for FreeBSD.

  share/man/man4/mpr.4:
   mpr(4) man page.

  sys/dev/mpr/*:
   mpr(4) driver files.

  sys/modules/Makefile,
  sys/modules/mpr/Makefile:
   Add a module Makefile for the mpr(4) driver.

  sys/conf/files:
   Add the mpr(4) driver.

  sys/amd64/conf/GENERIC,
  sys/i386/conf/GENERIC,
  sys/mips/conf/OCTEON1,
  sys/sparc64/conf/GENERIC:
   Add the mpr(4) driver to all config files that currently
   have the mps(4) driver.

  sys/ia64/conf/GENERIC:
   Add the mps(4) and mpr(4) drivers to the ia64 GENERIC
   config file.

  sys/i386/conf/XEN:
   Exclude the mpr module from building here.

  Submitted by: Steve McConnell <Stephen.McConnell@avagotech.com>
  Tested by: Chris Reeves <chrisr@spectralogic.com>
  Sponsored by: LSI, Spectra Logic
  Relnotes: LSI 12Gb SAS driver mpr(4) added

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265237 | ken | 2014-05-02 14:36:20 -0600 (Fri, 02 May 2014) | 8 lines

  Add the mpr(4) man page to the man4 Makefile.

  This should have been included in r265236.

  Submitted by: Steve McConnell <Stephen.McConnell@avagotech.com>
  Sponsored by: LSI, Spectra Logic

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265241 | brueffer | 2014-05-02 15:14:28 -0600 (Fri, 02 May 2014) | 2 lines

  Use our standard SYNOPSIS wording; perform some cleanup while here.

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265261 | brueffer | 2014-05-03 05:15:28 -0600 (Sat, 03 May 2014) | 2 lines

  Add a missing colon.

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265386 | ken | 2014-05-05 13:53:03 -0600 (Mon, 05 May 2014) | 15 lines

  Adjust #if statements inside mprsas_send_smpcmd() to more accurately
  reflect when unmapped I/O support was added.

  For FreeBSD 10, it arrived just prior to __FreeBSD_version 1000028.
  For FreeBSD 9, it arrived just prior to __FreeBSD_version 902001.

  Also, fix compiler warnings in mprsas_send_smpcmd() that happen in the
  i386 PAE build for non-unmapped I/O builds.  These were fixed in mps(4)
  in revision 241145, but didn't make it into the mpr(4) driver.  This
  change should only affect FreeBSD versions outside the above revisions,
  and thus doesn't affect head.

  Sponsored by: Spectra Logic Corporation

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265424 | ken | 2014-05-06 00:18:43 -0600 (Tue, 06 May 2014) | 33 lines

  Fix a problem with async notifications in the mpr(4) driver.

  This problem only occurs on versions of FreeBSD prior to the recent CAM
  locking changes.  (i.e. stable/9 and older versions of stable/10)  This
  change should be a no-op for head and stable/10.

  If a path isn't specified, xpt_register_async() will create a fully
  wildcarded path and acquire a lock (the XPT lock in older versions,
  and via xpt_path_lock() in newer versions) to call xpt_action() for the
  XPT_SASYNC_CB CCB.  It will then drop the lock and if the requested event
  includes AC_FOUND_DEVICE or AC_PATH_REGISTERED, it will get the caller up
  to date with any device arrivals or path registrations.

  The issue is that before the locking changes, each SIM lock would get
  acquired in turn during the EDT tree traversal process.  If a path is
  specified for xpt_register_async(), it won't acquire and drop its own lock,
  but instead expects the caller to hold its own SIM lock.  That works for
  the first part of xpt_register_async(), but causes a recursive lock
  acquisition once the EDT traversal happens and it comes to the SIM in
  question.  And it isn't possible to call xpt_action() without holding a SIM
  lock.

  The locking changes fix this by using the XPT topology lock for EDT
  traversal, so it is no longer an issue to hold the SIM lock while calling
  xpt_register_async().

  The solution for FreeBSD versions before the locking changes is to request
  notification of all device arrivals (so we pass a NULL path into
  xpt_register_async()) and then filter out the arrivals that are not ours.

  Sponsored by: Spectra Logic Corporation

  ------------------------------------------------------------------------
  ------------------------------------------------------------------------
  r265473 | ken | 2014-05-06 16:13:38 -0600 (Tue, 06 May 2014) | 7 lines

  Change the device name for mpr(4) from /dev/mpr_N to /dev/mprN.

  This is more consistent with the existing mps(4) behavior.

  Reviewed by: Steve McConnell <stephen.mcconnell@avagotech.com>

  ------------------------------------------------------------------------

Submitted by: Steve McConnell <Stephen.McConnell@avagotech.com>
Tested by: Chris Reeves <chrisr@spectralogic.com>
Sponsored by: LSI, Spectra Logic
Relnotes: LSI 12Gb SAS driver mpr(4) added

git-svn-id: svn://svn.freebsd.org/base/stable/9@265729 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265202:
pfg [Fri, 9 May 2014 01:25:25 +0000 (01:25 +0000)]
MFC r265202:
Remove some unreachable breaks in regex.

This is based on a much bigger cleanup done in Illumos.

Reference:
https://www.illumos.org/issues/2077

git-svn-id: svn://svn.freebsd.org/base/stable/9@265727 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r265252
rmacklem [Fri, 9 May 2014 00:34:29 +0000 (00:34 +0000)]
MFC: r265252
The new draft specification for NFSv4.0 specifies that a server
should either accept owner and owner_group strings that are just
the digits of the uid/gid or return NFS4ERR_BADOWNER.
This patch adds a sysctl vfs.nfsd.enable_stringtouid, which can
be set to enable the server w.r.t. accepting numeric string. It
also ensures that NFS4ERR_BADOWNER is returned if numeric uid/gid
strings are not enabled. This fixes the server for recent Linux
nfs4 clients that use numeric uid/gid strings by default.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265724 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264888
rmacklem [Fri, 9 May 2014 00:28:07 +0000 (00:28 +0000)]
MFC: r264888
The PR reported that the old NFS server did not set uio_td == NULL
for the VOP_READ() call. This patch fixes both the old and new
server for this case.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265723 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264845
rmacklem [Fri, 9 May 2014 00:24:11 +0000 (00:24 +0000)]
MFC: r264845
Remove an unnecessary level of indirection for an argument.
This simplifies the code and should avoid the clang sparc
port from generating an abort() call.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265722 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264842
rmacklem [Fri, 9 May 2014 00:19:08 +0000 (00:19 +0000)]
MFC: r264842
Modify the NFSv4 client's Pathconf RPC (actually a Getattr Op.)
so that it only does the RPC for names that are answered by the RPC.
Doing the RPC for other names is harmless, but unnecessary.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265721 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMerge 260488, r260508.
melifaro [Thu, 8 May 2014 20:57:13 +0000 (20:57 +0000)]
Merge 260488, r260508.

r260488:
  Split rt_newaddrmsg_fib() into two different functions.
  Adding/deleting interface addresses involves access to 3 different subsystems,
  int different parts of code. Each call can fail, so reporting successful
  operation by rtsock in the middle of the process error-prone.

  Further split routing notification API and actual rtsock calls via creating
  public-available rt_addrmsg() / rt_routemsg() functions with "private"
  rtsock_* backend.

r260508:
  Simplify inet alias handling code: if we're adding/removing alias which
  has the same prefix as some other alias on the same interface, use
  newly-added rt_addrmsg() instead of hand-rolled in_addralias_rtmsg().

  This eliminates the following rtsock messages:

  Pinned RTM_ADD for prefix (for alias addition).
  Pinned RTM_DELETE for prefix (for alias withdrawal).

  Example (got 10.0.0.1/24 on vlan4, playing with 10.0.0.2/24):

  before commit, addition:

    got message of size 116 on Fri Jan 10 14:13:15 2014
    RTM_NEWADDR: address being added to iface: len 116, metric 0, flags:
    sockaddrs: <NETMASK,IFP,IFA,BRD>
     255.255.255.0 vlan4:8.0.27.c5.29.d4 10.0.0.2 10.0.0.255

    got message of size 192 on Fri Jan 10 14:13:15 2014
    RTM_ADD: Add Route: len 192, pid: 0, seq 0, errno 0, flags:<UP,PINNED>
    locks:  inits:
    sockaddrs: <DST,GATEWAY,NETMASK>
     10.0.0.0 10.0.0.2 (255) ffff ffff ff

  after commit, addition:

    got message of size 116 on Fri Jan 10 13:56:26 2014
    RTM_NEWADDR: address being added to iface: len 116, metric 0, flags:
    sockaddrs: <NETMASK,IFP,IFA,BRD>
     255.255.255.0 vlan4:8.0.27.c5.29.d4 14.0.0.2 14.0.0.255

  before commit, wihdrawal:

    got message of size 192 on Fri Jan 10 13:58:59 2014
    RTM_DELETE: Delete Route: len 192, pid: 0, seq 0, errno 0, flags:<UP,PINNED>
    locks:  inits:
    sockaddrs: <DST,GATEWAY,NETMASK>
     10.0.0.0 10.0.0.2 (255) ffff ffff ff

    got message of size 116 on Fri Jan 10 13:58:59 2014
    RTM_DELADDR: address being removed from iface: len 116, metric 0, flags:
    sockaddrs: <NETMASK,IFP,IFA,BRD>
     255.255.255.0 vlan4:8.0.27.c5.29.d4 10.0.0.2 10.0.0.255

  adter commit, withdrawal:

    got message of size 116 on Fri Jan 10 14:14:11 2014
    RTM_DELADDR: address being removed from iface: len 116, metric 0, flags:
    sockaddrs: <NETMASK,IFP,IFA,BRD>
     255.255.255.0 vlan4:8.0.27.c5.29.d4 10.0.0.2 10.0.0.255

  Sending both RTM_ADD/RTM_DELETE messages to rtsock is completely wrong
  (and requires some hacks to keep prefix in route table on RTM_DELETE).

  I've tested this change with quagga (no change) and bird (*).

  bird alias handling is already broken in *BSD sysdep code, so nothing
  changes here, too.

  I'm going to MFC this change if there will be no complains about behavior
  change.

  While here, fix some style(9) bugs introduced by r260488
  (pointed by glebius and bde).

git-svn-id: svn://svn.freebsd.org/base/stable/9@265715 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMerge r260379, r260460.
melifaro [Thu, 8 May 2014 20:33:47 +0000 (20:33 +0000)]
Merge r260379, r260460.

r260379:
  Partially fix IPv4 interface routes deletion in RADIX_MPATH.

  Noticed by:   Nikolay Denev <ndenev at gmail.com>

r260460:
  Constanly use RT_ALL_FIBS everywhere instead of -1.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265710 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMerge r259528, r259528, r260295.
melifaro [Thu, 8 May 2014 20:24:13 +0000 (20:24 +0000)]
Merge r259528, r259528, r260295.

r259528:
  Simplify contiguous mask checking.

  Suggested by: glebius

r260228:
  Remove useless register variable modifiers.
  Do some more style(9).

r260295:
  Change semantics for rnh_lookup() function: now
  it performs exact match search, regardless of netmask existance.
  This simplifies most of rnh_lookup() consumers.

  Fix panic triggered by deleting non-existent host route.

  PR:           kern/185092
  Submitted by: Nikolay Denev <ndenev at gmail.com>

git-svn-id: svn://svn.freebsd.org/base/stable/9@265707 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMerge r260524,r260540
melifaro [Thu, 8 May 2014 19:35:29 +0000 (19:35 +0000)]
Merge r260524,r260540

r260524:
  Add -4/-6 shorthand for -finet/-finet6 in route(8) and netstat(8).

r260540:
  Bump dates in nestat(1) and route(8) man pages.
  Fix several small errors introduced by r260524.

  Suggested by: glebius

git-svn-id: svn://svn.freebsd.org/base/stable/9@265702 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMerge r258708, r258711, r260247, r261117.
melifaro [Thu, 8 May 2014 19:11:14 +0000 (19:11 +0000)]
Merge r258708, r258711, r260247, r261117.

r258708:
Check ipfw table numbers in both user and kernel space before rule addition.
Found by:       Saychik Pavel <umka@localka.net>

r258711:
Simplify O_NAT opcode handling.

r260247:
Use rnh_matchaddr instead of rnh_lookup for longest-prefix match.
rnh_lookup is effectively the same as rnh_matchaddr if called with
empy network mask.

r261117:
Reorder struct ip_fw_chain:
* move rarely-used fields down
* move uh_lock to different cacheline
* remove some usused fields

git-svn-id: svn://svn.freebsd.org/base/stable/9@265699 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r265360
brueffer [Thu, 8 May 2014 19:04:54 +0000 (19:04 +0000)]
MFC: r265360

Remove stray comma.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265696 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMerge r258677.
melifaro [Thu, 8 May 2014 18:06:44 +0000 (18:06 +0000)]
Merge r258677.

Fix key lookup in ipfw(8) broken since r232865.
Print warning for IPv4 address strings which are valid in
inet_aton() but not valid in inet_pton(). (1)

Found by: Özkan KIRIK <ozkan.kirik@gmail.com>
Submitted by: Ian Smith <smithi@nimnet.asn.au> (1)

git-svn-id: svn://svn.freebsd.org/base/stable/9@265692 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265201
brooks [Thu, 8 May 2014 16:26:36 +0000 (16:26 +0000)]
MFC r265201

Fix a 2038 bug.

If time_t is 64-bit (i.e. isn't 32-bit) allow any value of year, not
just years less than 2038.

Don't bother fixing the underflow in the case of years before 1903.

Sponsored by: DARPA, AFRL

git-svn-id: svn://svn.freebsd.org/base/stable/9@265688 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264313:
mav [Thu, 8 May 2014 12:50:31 +0000 (12:50 +0000)]
MFC r264313:
Do not increment bio_data in case of BIO_DELETE.

This fixes KASSERT() panic in g_io_request().

git-svn-id: svn://svn.freebsd.org/base/stable/9@265676 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265054:
mav [Thu, 8 May 2014 12:39:07 +0000 (12:39 +0000)]
MFC r265054:
Reduce number of opens by REOM RAID during provider taste.

Instead opening/closing provider by each of metadata classes, do it only
once in core code.  Since for SCSI disks open/close means sending some
SCSI commands to the device, this change reduces taste time.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265675 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r256607, r259247:
mav [Thu, 8 May 2014 12:35:37 +0000 (12:35 +0000)]
MFC r256607, r259247:
Fix passing uninitialized bio_resid argument to g_trace().

git-svn-id: svn://svn.freebsd.org/base/stable/9@265674 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r256610:
mav [Thu, 8 May 2014 12:28:24 +0000 (12:28 +0000)]
MFC r256610:
Add unmapped I/O support to GEOM RAID.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265673 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r256606:
mav [Thu, 8 May 2014 12:27:24 +0000 (12:27 +0000)]
MFC r256606:
Move g_io_deliver() out of the lock, as required for direct dispatch.
Move g_destroy_bio() out too to reduce lock scope even more.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265672 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r256603:
mav [Thu, 8 May 2014 12:26:08 +0000 (12:26 +0000)]
MFC r256603:
Introduce new function devstat_end_transaction_bio_bt(), adding new argument
to specify present time.  Use this function to move binuptime() out of lock,
substantially reducing lock congestion when slow timecounter is used.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265671 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r254252:
mav [Thu, 8 May 2014 12:23:30 +0000 (12:23 +0000)]
MFC r254252:
Fix the formatting of the error message.

The G_MIRROR_DEBUG() macro already appends a newline. Also, most of the
log messages emitted by gmirror start with an uppercase letter.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265670 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264849 & r264883
smh [Thu, 8 May 2014 08:37:32 +0000 (08:37 +0000)]
MFC r264849 & r264883

Exposed debug.acpi.max_tasks and debug.acpi.max_threads via sysctls so their
values can be viewed.

Sponsored by: Multiplay

git-svn-id: svn://svn.freebsd.org/base/stable/9@265665 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265159:
mav [Thu, 8 May 2014 08:35:24 +0000 (08:35 +0000)]
MFC r265159:
Respect MAXIMUM TRANSFER LENGTH field of Block Limits VPD page.

Nobody yet reported disk supporting I/Os less then our MAXPHYS value, but
since we any way have code to read Block Limits VPD page, that is easy.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265664 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264878
smh [Thu, 8 May 2014 08:34:49 +0000 (08:34 +0000)]
MFC r264878

Increase ACPI_MAX_TASKS to be 4 x the number of CPU's as 2 x was still
insufficient on some machines.

Sponsored by: Multiplay

git-svn-id: svn://svn.freebsd.org/base/stable/9@265663 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264863
smh [Thu, 8 May 2014 08:33:32 +0000 (08:33 +0000)]
MFC r264863

Add information about supported NCQ functionality to camcontrol identify.

Sponsored by: Multiplay

git-svn-id: svn://svn.freebsd.org/base/stable/9@265662 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264853
smh [Thu, 8 May 2014 08:32:48 +0000 (08:32 +0000)]
MFC r264853

Add some new ATA defines for SATA 3.1 spec

Sponsored by: Multiplay

git-svn-id: svn://svn.freebsd.org/base/stable/9@265661 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265150:
mav [Thu, 8 May 2014 08:31:53 +0000 (08:31 +0000)]
MFC r265150:
Do not reread SCSI disk VPD pages on every device open.

Instead of rereading VPD pages on every device open, do it only on initial
device probe, and in cases when device reported via UNIT ATTENTIONs that
something has changed.  Capacity is still rereaded on every open because
it is more critical for operation and more probable to change in run time.

On my tests with Intel 530 SSDs on mps(4) HBA this change reduces time
GEOM needs to retaste the device (that includes few open/close cycles)
from ~150ms to ~30ms.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265660 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264851
smh [Thu, 8 May 2014 08:26:20 +0000 (08:26 +0000)]
MFC r264851

Eliminated optarg global being used outside of the function which called getopt

Sponsored by: Multiplay

git-svn-id: svn://svn.freebsd.org/base/stable/9@265658 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264020 (by trasz):
mav [Thu, 8 May 2014 08:25:27 +0000 (08:25 +0000)]
MFC r264020 (by trasz):
Remove the homegrown ctl_be_block_io allocator, replacing it with UMA.
There is no performance difference.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265657 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263979 (by trasz):
mav [Thu, 8 May 2014 08:24:08 +0000 (08:24 +0000)]
MFC r263979 (by trasz):
Hide CTL messages about SCSI error responses.  Too many users take
them for actual target errors.  They can be enabled back by setting
kern.cam.ctl.verbose=1, or booting with bootverbose.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265656 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263811 (by trasz):
mav [Thu, 8 May 2014 08:21:52 +0000 (08:21 +0000)]
MFC r263811 (by trasz):
Remove ctl_mem_pool.{c,h}.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265654 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r262782 (by trasz):
mav [Thu, 8 May 2014 08:18:46 +0000 (08:18 +0000)]
MFC r262782 (by trasz):
Fix missing unlock in persistent reservations code, which resulted in panics
with Hyper-V Failover Cluster.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265651 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r258871:
mav [Thu, 8 May 2014 08:17:04 +0000 (08:17 +0000)]
MFC r258871:
Properly report an error instead of panicing when user tries to create
LUN backed by non-disk device, e.g. /dev/null.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265649 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r257946:
mav [Thu, 8 May 2014 08:15:42 +0000 (08:15 +0000)]
MFC r257946:
Introduce seperate mutex lock to protect protect CTL I/O pools, slightly
reducing global CTL lock scope and congestion.

While there, simplify CTL I/O pools KPI, hiding implementation details.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265648 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r256547 (by smh):
mav [Thu, 8 May 2014 08:11:44 +0000 (08:11 +0000)]
MFC r256547 (by smh):
Added 4K quirks for Corsair Neutron GTX SSD's

git-svn-id: svn://svn.freebsd.org/base/stable/9@265647 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r255043 (by ken):
mav [Thu, 8 May 2014 08:08:24 +0000 (08:08 +0000)]
MFC r255043 (by ken):
Bump up the default timeouts for move commands in the ch(4) driver
to 15 minutes, and 5 minutes for things like READ ELEMENT STATUS.

This is needed to account for the worst case scenarios on at least
some Spectra Logic tape libraries.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265646 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r244015 (by ken):
mav [Thu, 8 May 2014 07:56:05 +0000 (07:56 +0000)]
MFC r244015 (by ken):
Fix the CTL OOA queue dumping code so that it does not hold a mutex
while doing a copyout.  That can cause a panic, because copyout
can trigger VM faults, and we can't handle VM faults while holding
a mutex.

The solution here is to malloc a separate buffer to hold the OOA
queue entries, so that we don't risk a VM fault while filling up
the buffer and we don't have to drop the lock.  The other solution
would be to wire the user's memory while filling their buffer with
copyout, but that would have been a little more complex.

Also fix a debugging parenthesis issue in ctl_abort_task() pointed
out by Chuck Tuffli.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265645 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264834:
mav [Thu, 8 May 2014 07:06:15 +0000 (07:06 +0000)]
MFC r264834:
Disable UNMAP support for STEC 842 SSDs.

In some unknown cases UNMAP commands make device firmware stuck.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265639 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264406:
mav [Thu, 8 May 2014 07:02:46 +0000 (07:02 +0000)]
MFC r264406:
Report more readable state "-" for idle CAM scan thread.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265636 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r260509:
mav [Thu, 8 May 2014 06:56:59 +0000 (06:56 +0000)]
MFC r260509:
Replace several instances of -1 with appropriate CAM_*_WILDCARD and types.

It was equal before r259397, but for good or bad, not any more for LUNs.

This change fixes at least CAM debugging.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265633 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoAdd a missing comma, and add a missing space.
gjb [Wed, 7 May 2014 22:17:16 +0000 (22:17 +0000)]
Add a missing comma, and add a missing space.

Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265619 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoDocument r264699, find(1) -ignore_readdir_race
gjb [Wed, 7 May 2014 21:46:06 +0000 (21:46 +0000)]
Document r264699, find(1) -ignore_readdir_race

Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265617 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoDocument r264423, sh(1) changes in variable assignments
gjb [Wed, 7 May 2014 21:39:01 +0000 (21:39 +0000)]
Document r264423, sh(1) changes in variable assignments
with 'local', 'export', and 'readonly'.

Helped by: jilles (thanks!)
Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265615 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMerge r259393 from head:
gavin [Wed, 7 May 2014 21:01:35 +0000 (21:01 +0000)]
Merge r259393 from head:

  Fix several panics when initialization of an ISA or PC-CARD device fails:

  o  Assign sc->an_dev in an_probe() (which isn't really a probe function in
     the standard newbus sense) as we may need it for printing errors.
  o  Use device_printf() rather than if_printf() in an_reset() - this is
     called from an_probe() long before the ifp structure is initialised
     in an_attach().
  o  Initialize the ifp structure early in an_attach() as we use if_printf()
     in cases where allocation of descriptors etc fails.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265612 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r259569, r259770 (by joel@), and r263451.
np [Wed, 7 May 2014 20:40:23 +0000 (20:40 +0000)]
MFC r259569, r259770 (by joel@), and r263451.

r259569:
cxgbe.4: Belated update to the man page to reflect T5 support.

r259770:
mdoc: nuke whitespace.

r263451:
cxgbe(4): man page updates.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265608 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC 254959:
gavin [Wed, 7 May 2014 20:09:17 +0000 (20:09 +0000)]
MFC 254959:

  Allow more space for interface names.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265597 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r253870, r258698 (by gnn@), r259048, and r261534.
np [Wed, 7 May 2014 19:13:09 +0000 (19:13 +0000)]
MFC r253870, r258698 (by gnn@), r259048, and r261534.

r253870:
Teach cxgbetool to display T5 congestion manager context.

r258698:
cxgbetool: "modinfo" command to display SFP+ module information.

trantor:~# cxgbetool t5nex0 modinfo 1
ID: SFP
Vendor FINISAR CORP.
SN AJ10JQR
PN FTLX8571D3BCL
Rev A
Temp: +35C
Vcc 3.225600V
TX Bias 2.176000uA
TX Power 0.588800mW
RX Power 0.486400mW

r259048:
Two new cxgbetool subcommands to set up scheduler classes and to bind
them to NIC queues.

r261534:
cxgbetool: Display the congestion channel map in hex.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265589 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r258692 and r260207 (both by gnn@)
np [Wed, 7 May 2014 19:05:14 +0000 (19:05 +0000)]
MFC r258692 and r260207 (both by gnn@)

r258692:
Add constants for use in interrogating various fiber and copper connectors
most often used with network interfaces.

The SFF-8472 standard defines the information that can be retrieved
from an optic or a copper cable plugged into a NIC, most often
referred to as SFP+.  Examples of values that can be read
include the cable vendor's name, part number, date of manufacture
as well as running data such as temperature, voltage and tx
and rx power.

Copious comments on how to use these values with an I2C interface
are given in the header file itself.

r260207:
Convert #defines to enums so that the values are visible in the debugger.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265587 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r259527, r260210 (by adrian@), r261533, r261536, r261537, r261558 (by
np [Wed, 7 May 2014 18:15:20 +0000 (18:15 +0000)]
MFC r259527, r260210 (by adrian@), r261533, r261536, r261537, r261558 (by
scottl@), r263317, r263412, r263457, and r264621 (by emax@).

r259527:
Do not create a hardware IPv6 server if the listen address is not
in6addr_any and is not in the CLIP table either.  This fixes a reported
TOE+IPv6 NULL-dereference panic in do_pass_open_rpl().

While here, stop creating hardware servers for any loopback address.
It's just a waste of server tids.

r260210:
Add an option to enable or disable the small RX packet copying that
is done to improve performance of small frames.

When doing RX packing, the RX copying isn't necessarily required.

r261533:
cxgbe(4): Use the port's tx channel to identify it to t4_clr_port_stats.

r261536:
cxgbe(4): The T5 allows for a different freelist starvation threshold
for queues with buffer packing.  Use the correct value to calculate a
freelist's low water mark.

r261537:
cxgbe(4): Use the rx channel map (instead of the tx channel map) as the
congestion channel map.

r261558:
Add a new sysctl, dev.cxgbe.N.rsrv_noflow, and a companion tunable,
hw.cxgbe.rsrv_noflow.  When set, queue 0 of the port is reserved for
TX packets without a flowid.  The hash value of packets with a flowid
is bumped up by 1.  The intent is to provide a private queue for
link-level packets like LACP that is unlikely to overflow or suffer
deep queue latency.

r263317:
cxgbe(4): significant rx rework.

- More flexible cluster size selection, including the ability to fall
  back to a safe cluster size (PAGE_SIZE from zone_jumbop by default) in
  case an allocation of a larger size fails.
- A single get_fl_payload() function that assembles the payload into an
  mbuf chain for any kind of freelist.  This replaces two variants: one
  for freelists with buffer packing enabled and another for those without.
- Buffer packing with any sized cluster.  It was limited to 4K clusters
  only before this change.
- Enable buffer packing for TOE rx queues as well.
- Statistics and tunables to go with all these changes.  The driver's
  man page will be updated separately.

r263412:
cxgbe(4): if_iqdrops statistic should include tunnel congestion drops.

r263457:
cxgbe(4):  Recognize the "spider" configuration where a T5 card's 40G
QSFP port is presented as 4 distinct 10G SFP+ ports to the driver.

r264621:
use correct (integer) type for the temperature sysctl

git-svn-id: svn://svn.freebsd.org/base/stable/9@265582 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263311:
jimharris [Wed, 7 May 2014 16:48:43 +0000 (16:48 +0000)]
MFC r263311:

nvme: Allocate all MSI resources up front so that we can fall back to
INTx if necessary.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265566 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263310:
jimharris [Wed, 7 May 2014 16:47:58 +0000 (16:47 +0000)]
MFC r263310:

nvme: Close hole where nvd(4) would not be notified of all nvme(4)
instances if modules loaded during boot.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265565 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263303:
jimharris [Wed, 7 May 2014 16:46:56 +0000 (16:46 +0000)]
MFC r263303:

Update nvme(4) and nvd(4) man pages to clarify the differences between
their respective device nodes.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265564 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263278:
jimharris [Wed, 7 May 2014 16:45:50 +0000 (16:45 +0000)]
MFC r263278:

nvme:  NVMe specification dictates 4-byte alignment for PRPs (not 8).

git-svn-id: svn://svn.freebsd.org/base/stable/9@265563 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263277:
jimharris [Wed, 7 May 2014 16:45:05 +0000 (16:45 +0000)]
MFC r263277:

nvme: Remove the software progress marker SET_FEATURE command during
controller initialization.

The spec says OS drivers should send this command after controller
initialization completes successfully, but other NVMe OS drivers are
not sending this command.  This change will therefore reduce differences
between the FreeBSD and other OS drivers.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265562 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263276:
jimharris [Wed, 7 May 2014 16:44:02 +0000 (16:44 +0000)]
MFC r263276:

Base the max number of SG elements on MAXPHYS.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265561 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r263275:
jimharris [Wed, 7 May 2014 16:43:10 +0000 (16:43 +0000)]
MFC r263275:

isci: Ensure ATA passthrough commands with RETURN_RESPONSE bit set
translate their response.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265560 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r260382:
jimharris [Wed, 7 May 2014 16:42:19 +0000 (16:42 +0000)]
MFC r260382:

For IDENTIFY passthrough commands to Chatham prototype controllers, copy
the spoofed identify data into the user buffer rather than issuing the
command to the controller, since Chatham IDENTIFY data is always spoofed.

While here, fix a bug in the spoofed data for Chatham submission and
completion queue entry sizes.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265559 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r260381:
jimharris [Wed, 7 May 2014 16:40:44 +0000 (16:40 +0000)]
MFC r260381:

For "nvmecontrol devlist", show namespace sizes in terms of MB instead of
GB to improve granularity of the reporting - especially for namespaces
that are on the order of 1 or 2 GB.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265558 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r258071:
jimharris [Wed, 7 May 2014 16:37:04 +0000 (16:37 +0000)]
MFC r258071:

Check for special status code from FIRMWARE_ACTIVATE command
signifying that a reboot is required to complete activation
of the requested firmware image.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265557 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r262338
alc [Wed, 7 May 2014 15:52:41 +0000 (15:52 +0000)]
MFC r262338
  When the kernel is running in a virtual machine, it cannot rely upon the
  processor family to determine if the workaround for AMD Family 10h Erratum
  383 should be enabled.  To enable virtual machine migration among a
  heterogeneous collection of physical machines, the hypervisor may have
  been configured to report an older processor family with a reduced feature
  set.  Effectively, the reported processor family and its features are like
  a "least common denominator" for the collection of machines.

  Therefore, when the kernel is running in a virtual machine, instead of
  relying upon the processor family, we now test for features that prove
  that the underlying processor is not affected by the erratum.  (The
  features that we test for are unlikely to ever be emulated in software
  on an affected physical processor.)

PR: 186061

git-svn-id: svn://svn.freebsd.org/base/stable/9@265554 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r259103 and r259382.
np [Wed, 7 May 2014 15:34:04 +0000 (15:34 +0000)]
MFC r259103 and r259382.

r259103:
cxgbe(4): save a copy of the RSS map for each port for the driver's use.

r259382:
Read card capabilities after firmware initialization, instead of setting
them up as part of firmware initialization (which the driver gets to do
only if it's the master driver).

Read the range of tids available for the ETHOFLD functionality if it's
enabled.

New is_ftid() and is_etid() functions to test whether a tid falls within
the range of filter tids or ETHOFLD tids respectively.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265553 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r258879:
np [Wed, 7 May 2014 15:24:24 +0000 (15:24 +0000)]
MFC r258879:
cxgbe(4):  T4_SET_SCHED_CLASS and T4_SET_SCHED_QUEUE ioctls to program
scheduling classes in the chip and to bind tx queue(s) to a scheduling
class respectively.  These can be used for various kinds of tx traffic
throttling (to force selected tx queues to drain at a fixed Kbps rate,
or a % of the port's total bandwidth, or at a fixed pps rate, etc.).

git-svn-id: svn://svn.freebsd.org/base/stable/9@265552 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r257772, r258441, and r258689.
np [Wed, 7 May 2014 15:13:57 +0000 (15:13 +0000)]
MFC r257772, r258441, and r258689.

r257772:
cxgbe(4): Tidy up the display for payload memory statistics (pm_stats).

# sysctl -n dev.t4nex.0.misc.pm_stats
# sysctl -n dev.t5nex.0.misc.pm_stats

r258441:
cxgbe(4): update the internal list of device features.

r258689:
Disable an assertion that relies on some code[1] that isn't in HEAD yet.

[1] http://lists.freebsd.org/pipermail/freebsd-net/2013-August/036573.html

git-svn-id: svn://svn.freebsd.org/base/stable/9@265551 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r257654
np [Wed, 7 May 2014 15:01:14 +0000 (15:01 +0000)]
MFC r257654
cxgbe(4): Exclude MPS_RPLC_MAP_CTL (0x11114) from the register dump.  Turns
out it's a write-only register with strange side effects on read.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265549 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r265248
marius [Wed, 7 May 2014 09:56:14 +0000 (09:56 +0000)]
MFC: r265248

Allow GEOM_VINUM to be statically compiled into the kernel.

Submitted by: gleb

git-svn-id: svn://svn.freebsd.org/base/stable/9@265537 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r256477:
np [Wed, 7 May 2014 05:28:23 +0000 (05:28 +0000)]
MFC r256477:
cxgbe(4): Store the log2 of the # of doorbells per BAR2 page for both
ingress and egress queues, and for both T4 and T5.  These values are
used by the T4/T5 iWARP driver.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265486 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r256459:
np [Wed, 7 May 2014 05:06:55 +0000 (05:06 +0000)]
MFC r256459:
cxgbe(4): Update T4 and T5 firmwares to 1.9.12.0

git-svn-id: svn://svn.freebsd.org/base/stable/9@265483 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r255198, r255410, and r255411.
np [Wed, 7 May 2014 04:21:07 +0000 (04:21 +0000)]
MFC r255198, r255410, and r255411.

r255198:
For TOE connections, the window scale factor in CPL_PASS_ACCEPT_REQ is
set to 15 to indicate that the peer did not send a window scale option
with its SYN.  Do not send a window scale option in the SYN|ACK reply
in that case.

r255410:
Fix a miscalculation that caused cxgbe/tom to auto-increment
a TOE socket's tx buffer size too aggressively.

r255411:
Rework the tx credit mechanism between the cxgbe/tom driver
and the card.  This helps smooth out some burstiness in the
exchange.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265482 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r255050, r255052.
np [Wed, 7 May 2014 04:00:05 +0000 (04:00 +0000)]
MFC r255050, r255052.

r255050:
Implement support for rx buffer packing.  Enable it by default for T5
cards.

This is a T4 and T5 chip feature which lets the chip deliver multiple
Ethernet frames in a single buffer.  This is more efficient within the
chip, in the driver, and reduces wastage of space in rx buffers.

- Always allocate rx buffers from the jumbop zone, no matter what the
  MTU is.  Do not use the normal cluster refcounting mechanism.
- Reserve space for an mbuf and a refcount in the cluster itself and let
  the chip DMA multiple frames in the rest.
- Use the embedded mbuf for the first frame and allocate mbufs on the
  fly for any additional frames delivered in the cluster.  Each of these
  mbufs has a reference on the underlying cluster.

r255052:
Fix the sysctl that displays whether buffer packing is enabled
or not.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265481 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r255111, r255112, r255131, r255167, r256066, r261150, r261151,
bryanv [Wed, 7 May 2014 03:17:21 +0000 (03:17 +0000)]
MFC r255111, r255112, r255131, r255167, r256066, r261150, r261151,
    r261164, r261166, r261167, r261168, r261394, r261395:

This updates the network driver to support multiple queues, and several bug
fixes. Note that multiqueue support is not compiled in by default since that
would change ALTQ behavior.

  - Sync VirtIO net device header file from recent Linux
  - Import multiqueue VirtIO net driver
  - Fix build with gcc
  - Do not hold the vtnet Rx queue lock when calling up into the stack
  - Read and write the MAC address in the config space byte by byte
  - Also include the mbuf's csum_flags in an assert message
  - Remove stray space
  - Move duplicated transmit start code into a single function
  - Avoid queue unlock followed by relock when the enable interrupt race is
    lost
  - Check for a full virtqueue in the multiqueue transmit path
  - Do not place the sglist used for Rx/Tx on the stack
  - Use m_defrag() instead of m_collapse() to compact a long mbuf chain

git-svn-id: svn://svn.freebsd.org/base/stable/9@265480 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r255047 (with a manual tweak to match the ext_free in stable/9):
np [Wed, 7 May 2014 03:06:50 +0000 (03:06 +0000)]
MFC r255047 (with a manual tweak to match the ext_free in stable/9):

Add a routine for attaching an mbuf to a buffer with an external
refcount.  This one is willing to work with buffers that may already be
referenced.  MEXTADD/m_extadd are suitable only for the first attachment
to a cluster -- they initialize the refcount to 1.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265479 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r253701, r253829, r253873, r253889, r253890, r254577, r254727, and r254933.
np [Wed, 7 May 2014 02:13:55 +0000 (02:13 +0000)]
MFC r253701, r253829, r253873, r253889, r253890, r254577, r254727, and r254933.

r253701:
Display a string instead of a numeric code in the linkdnrc sysctl.

r253829:
Display SGE tunables in the sysctl tree.

dev.t5nex.0.fl_pktshift: payload DMA offset in rx buffer (bytes)
dev.t5nex.0.fl_pad: payload pad boundary (bytes)
dev.t5nex.0.spg_len: status page size (bytes)
dev.t5nex.0.cong_drop: congestion drop setting

r253873:
Set up congestion manager context properly for T5 based cards.

r253889:
Fix previous commit (r253873).  "cong" has one bit per channel but the
congestion channel map has 1 nibble per channel.  So bits wxyz need to
be blown up into 000w000x000y000z.

r253890:
Display temperature sensor data.  Shows -1 if sensor not
available on the card.

# sysctl dev.t4nex.0.temperature
# sysctl dev.t5nex.0.temperature

r254577:
Display P/N information in the description.

r254727:
There is no need to hold the freelist lock around alloc/free of
software descriptors.  This also silences WITNESS warnings when
the software descriptors are allocated with M_WAITOK.

r254933:
Use correct mailbox and PCIe PF number when querying RDMA parameters.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265478 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agor253688:
np [Tue, 6 May 2014 19:18:20 +0000 (19:18 +0000)]
r253688:
Reserve room for ioctls that aren't in this copy of the driver yet.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265459 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r265097
brooks [Tue, 6 May 2014 15:38:44 +0000 (15:38 +0000)]
MFC: r265097

Merge from CheriBSD:

commit 1d1b908107255ffdff4d17f015d8f057d73cc6cb
Author: Brooks Davis <brooks@one-eyed-alien.net>
Date:   Fri Mar 28 16:24:45 2014 +0000

    Add a long needed seatbelt.

    Exit with an error when make is called without a target at the top level
    rather than poluting the source tree and causing use confusion in future
    builds.

commit a9d9aa341b2f4308a227ab460ba85f1f287ad028
Author: Brooks Davis <brooks@one-eyed-alien.net>
Date:   Tue Apr 29 16:06:12 2014 +0000

    Simplify seatbelt added in 1d1b908 based in feedback.

    Discussed with:     imp@FreeBSD.org

Reviewed by: imp
Sponsored by: DARPA, AFRL

git-svn-id: svn://svn.freebsd.org/base/stable/9@265450 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265102:
kib [Tue, 6 May 2014 12:39:23 +0000 (12:39 +0000)]
MFC r265102:
Fix one cases of recursive acquisitions of the vm object lock, only
possible in rare failure situations.  The second part of r265102 is
not applicable to stable/9 since vm_page_insert() cannot fail there.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265439 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265100:
kib [Tue, 6 May 2014 12:35:19 +0000 (12:35 +0000)]
MFC r265100:
Fix the comparision for the end of range in vm_phys_fictitious_reg_range().

git-svn-id: svn://svn.freebsd.org/base/stable/9@265438 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r264610:
mav [Tue, 6 May 2014 09:55:49 +0000 (09:55 +0000)]
MFC r264610:
Correct AMD chipsets identification.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265431 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r260830:
mav [Tue, 6 May 2014 09:52:37 +0000 (09:52 +0000)]
MFC r260830:
Add ID for one more ASMedia AHCI-compatible controller.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265429 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264738
rmacklem [Mon, 5 May 2014 20:55:37 +0000 (20:55 +0000)]
MFC: r264738
For an NFSv4 mount with the "nocto" option, don't get the
up to date file attributes upon close. This reduces the
Getattr RPC count by about 65% for software builds.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265390 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264705, r264749
rmacklem [Mon, 5 May 2014 20:48:36 +0000 (20:48 +0000)]
MFC: r264705, r264749
Modify the NFSv4 client create/mkdir RPC so that it acquires
post-create/mkdir directory attributes. This allows the RPC to
name cache the newly created directory and reduces the lookup RPC
count for applications creating a lot of directories.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265389 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r250916: coexist with /etc/localtime being a symlink
peter [Mon, 5 May 2014 19:35:02 +0000 (19:35 +0000)]
MFC r250916: coexist with /etc/localtime being a symlink

git-svn-id: svn://svn.freebsd.org/base/stable/9@265383 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264739
rmacklem [Mon, 5 May 2014 11:30:45 +0000 (11:30 +0000)]
MFC: r264739
Add {} braces so that the code conforms to the indentation.
Fortunately, I don't think doing the assignment of cap->tsomax
unconditionally causes any problem.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265357 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMRC r265230:
gjb [Mon, 5 May 2014 01:29:33 +0000 (01:29 +0000)]
MRC r265230:
  Clarify that MAKEOBJDIRPREFIX and MAKEOBJDIR are not
  honored as make(1) arguments.

Sponsored by: The FreeBSD Foundation

git-svn-id: svn://svn.freebsd.org/base/stable/9@265343 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r262661:
markj [Mon, 5 May 2014 01:26:28 +0000 (01:26 +0000)]
MFC r262661:
Fix emulation of call and jmp instructions on i386 and for 32-bit processes
on amd64.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265341 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264681
rmacklem [Mon, 5 May 2014 01:07:56 +0000 (01:07 +0000)]
MFC: r264681
Modify the NFSv4 client open/create RPC so that it acquires
post-open/create directory attributes. This allows the RPC to
name cache the newly created file and reduces the lookup RPC
count by about 10% for software builds.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265340 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC: r264672
rmacklem [Mon, 5 May 2014 01:01:30 +0000 (01:01 +0000)]
MFC: r264672
Modify the Lookup RPC for NFSv4 so that it acquires directory
attributes. This allows the client to cache directory names
when they are looked up, reducing the Lookup RPC count by
about 40% for software builds.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265339 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265002:
kib [Sun, 4 May 2014 08:00:07 +0000 (08:00 +0000)]
MFC r265002:
Fix vm_fault_copy_entry() operation on upgrade; allow it to find the
pages in the shadowed objects.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265315 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r265003:
kib [Sun, 4 May 2014 07:57:20 +0000 (07:57 +0000)]
MFC r265003:
Fix order of libthr and libc in the global dso list for sshd.

git-svn-id: svn://svn.freebsd.org/base/stable/9@265314 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f

10 years agoMFC r261147, r261149:
bryanv [Sun, 4 May 2014 01:03:54 +0000 (01:03 +0000)]
MFC r261147, r261149:

 - Remove spaces before tabs in the function prototype list
 - Read each field of the configuration individually

git-svn-id: svn://svn.freebsd.org/base/stable/9@265302 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f