diff --git a/sys/dev/netif/txp/if_txp.c b/sys/dev/netif/txp/if_txp.c
--- a/sys/dev/netif/txp/if_txp.c
+++ b/sys/dev/netif/txp/if_txp.c
@@ -792,8 +792,9 @@
err_mbuf:
m_freem(sd->sd_mbuf);
+ sd->sd_mbuf = NULL;
err_sd:
- kfree(sd, M_DEVBUF);
+ return;
}
/*