diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2015-07-10 18:50:37 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2015-07-10 18:50:37 +0200 |
commit | 34a0f4660d47cd34340fee4444af5b16ffef5d02 (patch) | |
tree | 241bec13b50c7daca897c64ffca46c4819c34a8f /sys/src/9/pc/etheriwl.c | |
parent | b5655b7247a657bd4b590218a68ed99bbab318f6 (diff) |
etheriwl: dont clear descriptors after completion
Diffstat (limited to 'sys/src/9/pc/etheriwl.c')
-rw-r--r-- | sys/src/9/pc/etheriwl.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/sys/src/9/pc/etheriwl.c b/sys/src/9/pc/etheriwl.c index a5c68bf4c..e086cb54e 100644 --- a/sys/src/9/pc/etheriwl.c +++ b/sys/src/9/pc/etheriwl.c @@ -2240,7 +2240,7 @@ static void receive(Ctlr *ctlr) { Block *b, *bb; - uchar *d, *dd, *cc; + uchar *d; RXQ *rx; TXQ *tx; uint hw; @@ -2275,11 +2275,6 @@ receive(Ctlr *ctlr) if(tx->n > 0){ bb = tx->b[idx]; tx->b[idx] = nil; - /* paranoia: clear tx descriptors */ - dd = tx->d + idx*Tdscsize; - cc = tx->c + idx*Tcmdsize; - memset(dd, 0, Tdscsize); - memset(cc, 0, Tcmdsize); tx->n--; wakeup(tx); @@ -2362,13 +2357,10 @@ receive(Ctlr *ctlr) case 197: /* rx compressed ba */ break; } - - /* paranoia: clear the descriptor */ - memset(b->rp, 0, Rdscsize); } + csr32w(ctlr, FhRxWptr, ((hw+Nrx-1) % Nrx) & ~7); if(bb != nil) freeb(bb); - csr32w(ctlr, FhRxWptr, ((hw+Nrx-1) % Nrx) & ~7); } static void |