]> CyberLeo.Net >> Repos - FreeBSD/stable/9.git/commit
MFC r259527, r260210 (by adrian@), r261533, r261536, r261537, r261558 (by
authornp <np@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 7 May 2014 18:15:20 +0000 (18:15 +0000)
committernp <np@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 7 May 2014 18:15:20 +0000 (18:15 +0000)
commit7b1a84eef6c7b18234b5ad485c815c46e5bc7df1
tree59da5fe041632bf90a466e55611b7a29316e13ae
parent6dc902d4e1fd3b90169b80bf0ea5e83ed07d89ef
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
sys/dev/cxgbe/adapter.h
sys/dev/cxgbe/common/t4_hw.c
sys/dev/cxgbe/common/t4_hw.h
sys/dev/cxgbe/t4_main.c
sys/dev/cxgbe/t4_sge.c
sys/dev/cxgbe/tom/t4_listen.c
sys/dev/cxgbe/tom/t4_tom.h