Page MenuHomeFreeBSD

D18288.id.diff
No OneTemporary

D18288.id.diff

Index: head/sys/dev/sfxge/sfxge_tx.c
===================================================================
--- head/sys/dev/sfxge/sfxge_tx.c
+++ head/sys/dev/sfxge/sfxge_tx.c
@@ -361,6 +361,7 @@
int rc;
int i;
int eop;
+ uint16_t hw_vlan_tci_prev;
int vlan_tagged;
KASSERT(!txq->blocked, ("txq->blocked"));
@@ -412,6 +413,8 @@
used_map = &stmp->map;
+ hw_vlan_tci_prev = txq->hw_vlan_tci;
+
vlan_tagged = sfxge_tx_maybe_insert_tag(txq, mbuf);
if (vlan_tagged) {
sfxge_next_stmp(txq, &stmp);
@@ -463,6 +466,7 @@
return (0);
reject_mapped:
+ txq->hw_vlan_tci = hw_vlan_tci_prev;
bus_dmamap_unload(txq->packet_dma_tag, *used_map);
reject:
/* Drop the packet on the floor. */

File Metadata

Mime Type
text/plain
Expires
Mon, Apr 6, 4:23 PM (14 h, 17 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30984379
Default Alt Text
D18288.id.diff (705 B)

Event Timeline