Kip Macy
64c43db51c
Default to using a single queue as this is currently the only way to achieve
...
line rate
2007-04-26 08:38:00 +00:00
Kip Macy
ea5143feaf
Disable mbuf chain collapsing - it is currently causing an mbuf leak
2007-04-26 08:36:59 +00:00
Kip Macy
5f1e4ae331
Free cluster if we fail to create the dmamap.
...
Fixes CID 1829
Found by: Coverity
2007-04-20 05:16:42 +00:00
Kip Macy
527888d7c0
Eliminate CID 1842 by comparing against (type != EXT_MBUF) => refcnt != NULL
2007-04-20 05:12:54 +00:00
Kip Macy
f297a9d336
Fix memory leak in m_collapse (CID 1843)
...
Found by: Coverity
Submitted by: jhb
2007-04-20 05:06:02 +00:00
Kip Macy
d302816a12
PHYS_TO_VM_PAGE requires explicit vm_page.h include on sparc64
2007-04-15 22:17:10 +00:00
Matt Jacob
07589439e5
Use %j and args cast to uintmax_t to print bus_addr_t && length args.
2007-04-15 19:03:45 +00:00
Kip Macy
2b6dbb2afa
Add pmap includes needed by i386
2007-04-15 15:30:45 +00:00
Kip Macy
ba68b814cc
suck in more of busdma to enable more efficient mappings
...
kill redundant INVARIANTS check
2007-04-15 05:46:34 +00:00
Kip Macy
d43f50b93a
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
Kip Macy
52c81add3c
Implement ZERO_COPY_SOCKETS check in a way that doesn't make LINT unhappy
2007-04-15 04:55:39 +00:00
Kip Macy
51580731ae
Add support for mbuf iovec in the TX path
2007-04-14 20:40:22 +00:00
Kip Macy
642046797b
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
Kip Macy
aa84193acf
restore sense to get_imm_packet
...
MFC after: 3 days
2007-04-12 04:48:54 +00:00
Kip Macy
98d6fba71d
switch over to per-txq dma tag to facilitate parallelism on TX
...
MFC after: 3 days
2007-04-12 04:31:44 +00:00
Kip Macy
dd782506d8
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
Kip Macy
23ed7b513f
Add ETHER_HDR_LEN to hardware accepted mtu
...
MFC after: 3 days
2007-04-12 03:07:24 +00:00
John Baldwin
e403490aa6
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
Kip Macy
a53b1c1753
throw sun4v into the check while we're at it
2007-04-09 17:05:54 +00:00
Kip Macy
3a0a4ac13d
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
Kip Macy
dc5a36e241
Add missing paren
2007-04-08 22:56:18 +00:00
Kip Macy
cae1990513
remove stale variable reference
2007-04-08 18:02:37 +00:00
Kip Macy
db2faf119f
add busdma function for mapping mbuf iovecs
...
change m_collapse to return an error code
2007-04-08 15:59:07 +00:00
Kip Macy
c0a24dd4aa
Convert driver RX path over to using mbuf iovec
2007-04-08 15:04:19 +00:00
Kip Macy
a8d9a363f5
Add driver private mbuf iovec support routines
2007-04-08 14:56:16 +00:00
Kip Macy
fa0521c0e9
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
Kip Macy
ac6b4cf110
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
Kip Macy
20fe52b816
- Increase coalesce_nsecs
...
- commit fixes for the following coverity warnings: 1765, 1760, 1758, 1756
2007-03-23 22:03:55 +00:00
Kip Macy
f309e60da0
commit missed change
2007-03-23 22:02:11 +00:00
Kip Macy
fc01c613c5
Check PCI-e link width to avoid foot shooting with 4x links
...
MFC after: 3 days
2007-03-23 20:18:07 +00:00
Kip Macy
24cdd0676c
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
Kip Macy
94f7a09823
allocate 9 messages in all cases
2007-03-21 09:16:10 +00:00
Kip Macy
693d746cc1
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
Kip Macy
577e9bbe3e
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
Kip Macy
77f07749f3
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
Kip Macy
8db477416c
move inline function above use so that -O works
2007-03-17 05:23:45 +00:00
Kip Macy
c8411d871a
#define L1_CACHE_BYTES for non-x86
2007-03-14 16:18:51 +00:00
Kip Macy
58bcd3238c
define prefetch as a no-op macro for non-x86 arches
2007-03-14 16:05:39 +00:00
Kip Macy
f467efb7b5
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
Kip Macy
bede276b07
#define memory barrier macros for the non-i386 && non-amd64 case
2007-03-14 06:40:46 +00:00
Kip Macy
4f199f0379
remove unused code for recycling descriptors
...
kick tx cleaner from credit update function
2007-03-14 06:36:58 +00:00
Kip Macy
7d9ca96411
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
Kip Macy
1940bc694e
move taskqueue_enqueue of tx clean operation out of the start path
2007-03-14 06:34:10 +00:00
Kip Macy
b9d6bc3b79
make desc_reclaimable macro safe to arbitrary arguments
2007-03-14 06:33:28 +00:00
Kip Macy
cc57017c60
Add firmware for cxgb
2007-03-14 02:44:48 +00:00
Kip Macy
b6d90eb779
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