Page MenuHomeFreeBSD

D12257.diff
No OneTemporary

D12257.diff

Index: head/sys/dev/neta/if_mvneta.c
===================================================================
--- head/sys/dev/neta/if_mvneta.c
+++ head/sys/dev/neta/if_mvneta.c
@@ -3008,7 +3008,7 @@
* bytecnt cover MH, PKT, CRC
*/
pktlen = r->bytecnt - ETHER_CRC_LEN - MVNETA_HWHEADER_SIZE;
- pktbuf = (uint8_t *)r->bufptr_va + MVNETA_PACKET_OFFSET +
+ pktbuf = (uint8_t *)rx->rxbuf_virt_addr[rx->dma] + MVNETA_PACKET_OFFSET +
MVNETA_HWHEADER_SIZE;
/* Prefetch mbuf data. */
@@ -3135,7 +3135,7 @@
rxbuf->m = m;
r = &rx->desc[rx->cpu];
r->bufptr_pa = segs.ds_addr;
- r->bufptr_va = (uint32_t)m->m_data;
+ rx->rxbuf_virt_addr[rx->cpu] = m->m_data;
rx->cpu = rx_counter_adv(rx->cpu, 1);
}
Index: head/sys/dev/neta/if_mvnetavar.h
===================================================================
--- head/sys/dev/neta/if_mvnetavar.h
+++ head/sys/dev/neta/if_mvnetavar.h
@@ -118,6 +118,9 @@
bus_dmamap_t desc_map;
bus_addr_t desc_pa;
+ /* Virtual address of the RX buffer */
+ void *rxbuf_virt_addr[MVNETA_RX_RING_CNT];
+
/* Managment entries for each of descritors */
struct mvneta_buf rxbuf[MVNETA_RX_RING_CNT];

File Metadata

Mime Type
text/plain
Expires
Sat, Oct 11, 2:51 PM (19 h, 40 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23581139
Default Alt Text
D12257.diff (1 KB)

Event Timeline