projects
/
deliverable
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
qla3xxx: bugfix: Multi segment sends were getting whacked.
[deliverable/linux.git]
/
drivers
/
net
/
qla3xxx.c
diff --git
a/drivers/net/qla3xxx.c
b/drivers/net/qla3xxx.c
index 5d358d3779ded532d9dcf63c3281d2d2a36e91dc..9952e3931e34347e385909e6f4f1937034d219eb 100755
(executable)
--- a/
drivers/net/qla3xxx.c
+++ b/
drivers/net/qla3xxx.c
@@
-2217,12
+2217,7
@@
static int ql_send_map(struct ql3_adapter *qdev,
int seg_cnt, seg = 0;
int frag_cnt = (int)skb_shinfo(skb)->nr_frags;
int seg_cnt, seg = 0;
int frag_cnt = (int)skb_shinfo(skb)->nr_frags;
- seg_cnt = tx_cb->seg_count = ql_get_seg_count(qdev,
- (skb_shinfo(skb)->nr_frags));
- if(seg_cnt == -1) {
- printk(KERN_ERR PFX"%s: invalid segment count!\n",__func__);
- return NETDEV_TX_BUSY;
- }
+ seg_cnt = tx_cb->seg_count;
/*
* Map the skb buffer first.
*/
/*
* Map the skb buffer first.
*/
@@
-2278,7
+2273,7
@@
static int ql_send_map(struct ql3_adapter *qdev,
pci_unmap_addr_set(&tx_cb->map[seg], mapaddr,
map);
pci_unmap_len_set(&tx_cb->map[seg], maplen,
pci_unmap_addr_set(&tx_cb->map[seg], mapaddr,
map);
pci_unmap_len_set(&tx_cb->map[seg], maplen,
-
len
);
+
sizeof(struct oal)
);
oal_entry = (struct oal_entry *)oal;
oal++;
seg++;
oal_entry = (struct oal_entry *)oal;
oal++;
seg++;
This page took
0.029621 seconds
and
5
git commands to generate.