#
27d1c65e |
| 13-Jun-2010 |
Navdeep Parhar <np@FreeBSD.org> |
cxgb(4): add knob to get packet timestamps from the hardware.
The T3 ASIC can provide an incoming packet's timestamp instead of its RSS hash. The timestamp is just a counter running off the card's c
cxgb(4): add knob to get packet timestamps from the hardware.
The T3 ASIC can provide an incoming packet's timestamp instead of its RSS hash. The timestamp is just a counter running off the card's clock. With a 175MHz clock an increment represents ~5.7ns and the 32 bit value wraps around in ~25s.
# sysctl -d dev.cxgbc.0.pkt_timestamp dev.cxgbc.0.pkt_timestamp: provide packet timestamp instead of connection hash
# sysctl -d dev.cxgbc.0.core_clock dev.cxgbc.0.core_clock: core clock frequency (in KHz) # sysctl dev.cxgbc.0.core_clock dev.cxgbc.0.core_clock: 175000
show more ...
|
#
63ae3fec |
| 13-May-2010 |
Navdeep Parhar <np@FreeBSD.org> |
MFC r207639, r207643, r207687, r207688
r207639: Add IFCAP_LINKSTATE to cxgb r207643: T3 hardware filters + cxgbtool interface to this functionality. r207687: if_cxgb should not depend on the T3 firm
MFC r207639, r207643, r207687, r207688
r207639: Add IFCAP_LINKSTATE to cxgb r207643: T3 hardware filters + cxgbtool interface to this functionality. r207687: if_cxgb should not depend on the T3 firmware module directly. r207688: various doorbell adjustments
show more ...
|
#
9307d8bd |
| 08-May-2010 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Merge svn+ssh://svn.freebsd.org/base/head@207793
|
#
1d4942f4 |
| 06-May-2010 |
Navdeep Parhar <np@FreeBSD.org> |
Don't ring the tx doorbell for every frame when we know more frames will follow. Adjust the freelist and response queue doorbells too.
Discussed with: kmacy
|
#
a4bf5fb9 |
| 28-Apr-2010 |
Kirk McKusick <mckusick@FreeBSD.org> |
Update to current version of head.
|
#
e936c968 |
| 14-Apr-2010 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Merge svn+ssh://svn.freebsd.org/base/head@206571
|
#
ece8cb88 |
| 06-Apr-2010 |
Navdeep Parhar <np@FreeBSD.org> |
cxgb(4) MFCs: r204271,r204274,r204348,r204921,r205944,r205945,r205946,r205947,r205948,r205949,r205950,r206109
r204271: Accessing an mbuf after it has been handed off to the hardware is a bad race as
cxgb(4) MFCs: r204271,r204274,r204348,r204921,r205944,r205945,r205946,r205947,r205948,r205949,r205950,r206109
r204271: Accessing an mbuf after it has been handed off to the hardware is a bad race as it could already have been tx'd and freed by that time. Place the bpf tap just _before_ writing the gen bit.
This fixes a panic when running tcpdump on a cxgb interface.
r204274: There is no need to test __FreeBSD_version for features that have been around for a long time now (7.1-ish or even earlier); assume they are present. These includes MSI, TSO, LRO, VLAN, INTR_FILTERS, FIRMWARE, etc.
Also, eliminate some dead code and clean up in other places as part of this quick once-over.
r204348: Support IFCAP_VLANHWTSO in cxgb(4). It works with or without vlanhwtag. While here, remove old DPRINTFs and tidy up the capability code a bit.
r204921: Better TwinAx transceiver detection.
Originally submitted by: <Bruno dot Bittner at isilon dot com> (This is a rewritten, corrected version of that patch)
r205944: Refresh the firmware version immediately after it is upgraded (or downgraded).
r205945: Improved PHY EDC settings.
r205946: Do not attempt to retrieve interrupt information before it is available.
r205947: Fix build with "nooptions INET"
r205948: Fix tx drop statistics.
r205949: Fix signed/unsigned mix-up that allowed txq->in_use to grow beyond txq->size.
r205950: Multiple fixes related to queue set sizing and resources:
- Only the tunnelq (TXQ_ETH) requires a buf_ring, an ifq, and the watchdog/timer callouts. Do not allocate these for the other tx queues.
- Use 16k jumbo clusters only on offload capable cards by default.
- Do not allocate a full tx ring for the offload queue if the card is not offload capable.
- Slightly better freelist size calculation.
- Fix nmbjumbo4 typo, remove unneeded global variables.
r206109: Increase response queue size to avoid starvation, add a counter to track it when it does occur.
show more ...
|
#
489ca05b |
| 02-Apr-2010 |
Navdeep Parhar <np@FreeBSD.org> |
Increase response queue size to avoid starvation, add a counter to track it when it does occur.
|
#
70f89834 |
| 02-Apr-2010 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Merge svn+ssh://svn.freebsd.org/base/head@206063
|
#
97ae3bc3 |
| 31-Mar-2010 |
Navdeep Parhar <np@FreeBSD.org> |
Multiple fixes related to queue set sizing and resources:
- Only the tunnelq (TXQ_ETH) requires a buf_ring, an ifq, and the watchdog/timer callouts. Do not allocate these for the other tx queues.
Multiple fixes related to queue set sizing and resources:
- Only the tunnelq (TXQ_ETH) requires a buf_ring, an ifq, and the watchdog/timer callouts. Do not allocate these for the other tx queues.
- Use 16k jumbo clusters only on offload capable cards by default.
- Do not allocate a full tx ring for the offload queue if the card is not offload capable.
- Slightly better freelist size calculation.
- Fix nmbjumbo4 typo, remove unneeded global variables.
MFC after: 3 days
show more ...
|
#
92f61ecb |
| 31-Mar-2010 |
Navdeep Parhar <np@FreeBSD.org> |
Fix tx drop statistics.
MFC after: 3 days
|
Revision tags: release/7.3.0_cvs, release/7.3.0 |
|
#
1a0fda2b |
| 04-Mar-2010 |
Dag-Erling Smørgrav <des@FreeBSD.org> |
IFH@204581
|
#
e83ec3e5 |
| 24-Feb-2010 |
Navdeep Parhar <np@FreeBSD.org> |
There is no need to test __FreeBSD_version for features that have been around for a long time now (7.1-ish or even earlier); assume they are present. These includes MSI, TSO, LRO, VLAN, INTR_FILTERS
There is no need to test __FreeBSD_version for features that have been around for a long time now (7.1-ish or even earlier); assume they are present. These includes MSI, TSO, LRO, VLAN, INTR_FILTERS, FIRMWARE, etc.
Also, eliminate some dead code and clean up in other places as part of this quick once-over.
MFC after: 1 week
show more ...
|
#
e0d8d4df |
| 21-Jan-2010 |
Navdeep Parhar <np@FreeBSD.org> |
MFC r201907,202671,202678
r201907: Extra parantheses to keep certain compilers happy.
r202671: Fix for a cxgb(4) panic. cxgb_ioctl can be called by the IP and IPv6 layers with non-sleepable locks
MFC r201907,202671,202678
r201907: Extra parantheses to keep certain compilers happy.
r202671: Fix for a cxgb(4) panic. cxgb_ioctl can be called by the IP and IPv6 layers with non-sleepable locks held. Don't (potentially) sleep in those situations.
r202678: Complain if freelist queue sizes are significantly less than desired.
show more ...
|
#
b302b77c |
| 20-Jan-2010 |
Navdeep Parhar <np@FreeBSD.org> |
Fix for a cxgb(4) panic. cxgb_ioctl can be called by the IP and IPv6 layers with non-sleepable locks held. Don't (potentially) sleep in those situations.
|
Revision tags: release/8.0.0_cvs, release/8.0.0 |
|
#
874108ae |
| 12-Nov-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
MFC @199204
|
#
bbec3bb5 |
| 12-Nov-2009 |
Navdeep Parhar <np@FreeBSD.org> |
MFC r197791
cxgb(4) updates, including: - support for the new Gen-2, BT, and LP-CR cards. - T3 firmware 7.7.0 - shared "common code" updates.
|
#
c01f2b83 |
| 05-Oct-2009 |
Navdeep Parhar <np@FreeBSD.org> |
cxgb(4) updates, including: - support for the new Gen-2, BT, and LP-CR cards. - T3 firmware 7.7.0 - shared "common code" updates.
Approved by: gnn (mentor) Obtained from: Chelsio MFC after: 1 month
|
#
10b3b545 |
| 17-Sep-2009 |
Dag-Erling Smørgrav <des@FreeBSD.org> |
Merge from head
|
#
09c817ba |
| 03-Jul-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
- MFC
|
#
5157862a |
| 26-Jun-2009 |
Robert Watson <rwatson@FreeBSD.org> |
Use if_maddr_rlock() instead of IF_ADDR_LOCK() to protect access to if_multiaddrs in if_cxgb.
Approved by: re (kib) MFC after: 6 weeks
|
#
3f345a5d |
| 20-Jun-2009 |
Kip Macy <kmacy@FreeBSD.org> |
Greatly simplify cxgb by removing almost all of the custom mbuf management logic
- remove mbuf iovec - useful, but adds too much complexity when isolated to the driver
- remove driver private ca
Greatly simplify cxgb by removing almost all of the custom mbuf management logic
- remove mbuf iovec - useful, but adds too much complexity when isolated to the driver
- remove driver private caching - insufficient benefit over UMA to justify the added complexity and maintenance overhead
- remove separate logic for managing multiple transmit queues, with the new drbr routines the control flow can be made to much more closely resemble legacy drivers
- remove dedicated service threads, with per-cpu callouts one can get the same benefit much more simply by registering a callout 1 tick in the future if there are still buffered packets
- remove embedded mbuf usage - Jeffr's changes will (I hope) soon be integrated greatly reducing the overhead of using kernel APIs for reference counting clusters
- add hysteresis to descriptor coalescing logic
- add coalesce threshold sysctls to allow users to decide at run-time between optimizing for forwarding / UDP or optimizing for TCP
- add once per second watchdog to effectively close the very rare races occurring from coalescing
- incorporate Navdeep's changes to the initialization path required to convert port and adapter locks back to ordinary mutexes (silencing BPF LOR complaints)
- enable prefetches in get_packet and tx cleaning
Reviewed by: navdeep@ MFC after: 2 weeks
show more ...
|
#
2e370a5c |
| 26-May-2009 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
Merge from HEAD
|
#
0bbdea77 |
| 21-May-2009 |
George V. Neville-Neil <gnn@FreeBSD.org> |
Integrate three changes from Chelsio.
1) Add a sysctl that will say what type of PHYs exist on the card. 2) Fix a bug that occurs when an AEL 2005 PHY resets without a transciever in the card. 3) Un
Integrate three changes from Chelsio.
1) Add a sysctl that will say what type of PHYs exist on the card. 2) Fix a bug that occurs when an AEL 2005 PHY resets without a transciever in the card. 3) Unify the PHY link detection code.
Obtained from: Navdeep Parhar MFC after: 10 days
show more ...
|
Revision tags: release/7.2.0_cvs, release/7.2.0 |
|
#
1829d5da |
| 12-Mar-2009 |
Warner Losh <imp@FreeBSD.org> |
Update the projects tree to a newer FreeBSD current.
|