Commit Graph

39 Commits

Author SHA1 Message Date
kmacy
252acbdc5f Add pmap includes needed by i386 2007-04-15 15:30:45 +00:00
kmacy
99993e1232 suck in more of busdma to enable more efficient mappings
kill redundant INVARIANTS check
2007-04-15 05:46:34 +00:00
kmacy
8d122756a5 Add sysctl for disabling/enabling mbuf chain collapsing
remove map creation before calling bus_dmamap_load_mvec_sg
2007-04-15 05:45:10 +00:00
kmacy
f6d283a04e Implement ZERO_COPY_SOCKETS check in a way that doesn't make LINT unhappy 2007-04-15 04:55:39 +00:00
kmacy
df7c6cd2a9 Add support for mbuf iovec in the TX path 2007-04-14 20:40:22 +00:00
kmacy
a8a962f8f6 add reference count pointer to mbuf iovec
implement robust version of m_collapse
add support for sf_buf
add fix for m_iovappend
add calls to m_sanity under INVARIANTS
fix m_freem_vec to correctly travese the mbuf iovec chain
2007-04-14 20:38:38 +00:00
kmacy
73a329aba9 restore sense to get_imm_packet
MFC after: 3 days
2007-04-12 04:48:54 +00:00
kmacy
70fb9b909b switch over to per-txq dma tag to facilitate parallelism on TX
MFC after: 3 days
2007-04-12 04:31:44 +00:00
kmacy
e5733cf7f2 explicitly check TSO flag
don't clear and then set M_PKTHDR, m_gethdr sets it correctly
improve error handling on m_gethdr failure

MFC after: 3 days
2007-04-12 03:33:30 +00:00
kmacy
560360bd84 Add ETHER_HDR_LEN to hardware accepted mtu
MFC after: 3 days
2007-04-12 03:07:24 +00:00
jhb
081fdb71d7 Fix m_freem_vec() to actually traverse the mbuf chain. This avoids
double free's and an infinite loop.

CID:		1834
Found by:	Coverity Prevent (tm)
2007-04-11 13:47:24 +00:00
kmacy
22667b1b7e throw sun4v into the check while we're at it 2007-04-09 17:05:54 +00:00
kmacy
4083aff7c8 busdma tags are opaque on all architectures except sparc64
for now simply don't compile/use on sparc64
2007-04-09 17:01:23 +00:00
kmacy
47ca069c43 Add missing paren 2007-04-08 22:56:18 +00:00
kmacy
04099f707e remove stale variable reference 2007-04-08 18:02:37 +00:00
kmacy
9d80aa5292 add busdma function for mapping mbuf iovecs
change m_collapse to return an error code
2007-04-08 15:59:07 +00:00
kmacy
89cfec3b05 Convert driver RX path over to using mbuf iovec 2007-04-08 15:04:19 +00:00
kmacy
c2173d9689 Add driver private mbuf iovec support routines 2007-04-08 14:56:16 +00:00
kmacy
7db0b7227a Make DMA tags per-queue to facilate parallel mappings
Defer mbuf allocation and initialization until after data has already been
received in a cluster

This reduces cpu utilization somewhat, but it only improves the rx path.
Recent changes to TCP appear to make us rate limited by the TX path.

This is the first step in reducing mbuf management overhead for manipulating
clusters.

MFC after: 3 days
2007-04-04 05:29:18 +00:00
kmacy
758c270b77 bus_size_t is a bad cross-architectural type with respect to printf, use uint32_t instead 2007-03-24 04:28:33 +00:00
kmacy
eeef57ea74 - Increase coalesce_nsecs
- commit fixes for the following coverity warnings: 1765, 1760, 1758, 1756
2007-03-23 22:03:55 +00:00
kmacy
109b79fc3c commit missed change 2007-03-23 22:02:11 +00:00
kmacy
4bfdd681e7 Check PCI-e link width to avoid foot shooting with 4x links
MFC after: 3 days
2007-03-23 20:18:07 +00:00
kmacy
0fdeee32de move call to t3_prep_adapter earlier in attach before msi-x setup occurs
this works around the fact that pci_config_{save,restore} doesn't adequately
restore state for msi-x

MFC after: 3 days
2007-03-21 16:40:37 +00:00
kmacy
8c807af8fa allocate 9 messages in all cases 2007-03-21 09:16:10 +00:00
kmacy
88ef185ca9 make MSI-X the default and allocate up to mp_ncpus queues per port
MFC after: 3 days
2007-03-21 07:25:40 +00:00
kmacy
febce07b18 Synchronize with version 1.0.071 of Chelsio's common code
(with the notable exception of improvements for using multiple TX queues)

This adds support for the T3B2 ASIC rev

Obtained from: Chelsio
MFC after: 3 days
2007-03-20 21:43:32 +00:00
kmacy
b3f52e360c cxgb_stop is only called from cxgb_ioctl so:
- don't acquire port lock, already held in ioctl
- rename to cxgb_stop_locked
- switch callout_drain to callout_stop to avoid a hang from having the port lock held
2007-03-20 06:21:47 +00:00
kmacy
9fd1f2e0cc move inline function above use so that -O works 2007-03-17 05:23:45 +00:00
kmacy
9670a35463 #define L1_CACHE_BYTES for non-x86 2007-03-14 16:18:51 +00:00
kmacy
08b5519b43 define prefetch as a no-op macro for non-x86 arches 2007-03-14 16:05:39 +00:00
kmacy
a331dd52f8 play it safe for now and go back to kicking off tx cleaning from the tx path 2007-03-14 07:57:59 +00:00
kmacy
8ee973ffa9 #define memory barrier macros for the non-i386 && non-amd64 case 2007-03-14 06:40:46 +00:00
kmacy
d1f948fe66 remove unused code for recycling descriptors
kick tx cleaner from credit update function
2007-03-14 06:36:58 +00:00
kmacy
98a2d252b3 add cxgb_config.h to define values that are defined in the Makefile when compiled as a
module

move prefetch out of cxgb_sge.c into header under arch conditional compilation
2007-03-14 06:35:38 +00:00
kmacy
d784e1ab37 move taskqueue_enqueue of tx clean operation out of the start path 2007-03-14 06:34:10 +00:00
kmacy
9273d036f8 make desc_reclaimable macro safe to arbitrary arguments 2007-03-14 06:33:28 +00:00
kmacy
110c717ac8 Add firmware for cxgb 2007-03-14 02:44:48 +00:00
kmacy
9e34f4996b First of several commits for driver support for the Chelsio T3B 10 Gigabit
Ethernet adapter.

Reviewed by: scottl, sam

For those interested in the preliminary performance work see below.

Plots of mxge vs. cxgb running netpipe:

blocksize vs. bandwidth:
http://www.fsmware.com/chelsio.random/bsvsbw.gif

blocksize vs. RTT:
First of several commits for driver support for the Chelsio T3B 10 Gigabit
Ethernet adapter.

Reviewed by: scottl, sam

For those interested in the preliminary performance work see below.

Plots of mxge vs. cxgb running netpipe:

blocksize vs. bandwidth:
http://www.fsmware.com/chelsio.random/bsvsbw.gif

blocksize vs. RTT:
http://www.fsmware.com/chelsio.random/bsvstime.gif

blocksize vs. RTT for block sizes <= 10kb:
http://www.fsmware.com/chelsio.random/bsvstime_10kb.gif
http://www.fsmware.com/chelsio.random/bsvstime_10kb3.gif
2007-03-14 02:37:44 +00:00