summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/io/simnet/simnet.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/io/simnet/simnet.c')
-rw-r--r--usr/src/uts/common/io/simnet/simnet.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/usr/src/uts/common/io/simnet/simnet.c b/usr/src/uts/common/io/simnet/simnet.c
index efce703cb7..7fb48c90e4 100644
--- a/usr/src/uts/common/io/simnet/simnet.c
+++ b/usr/src/uts/common/io/simnet/simnet.c
@@ -693,7 +693,7 @@ simnet_rx(void *arg)
/* Check for valid packet header */
if (mac_header_info(sdev->sd_mh, mp, &hdr_info) != 0) {
- freemsg(mp);
+ mac_drop_pkt(mp, "invalid L2 header");
sdev->sd_stats.recv_errors++;
goto rx_done;
}
@@ -754,7 +754,7 @@ simnet_m_tx(void *arg, mblk_t *mp_chain)
if ((sdev_rx = sdev->sd_peer_dev) == NULL) {
/* Discard packets when no peer exists */
rw_exit(&simnet_dev_lock);
- freemsgchain(mp_chain);
+ mac_drop_chain(mp_chain, "no peer");
return (NULL);
}
@@ -771,14 +771,14 @@ simnet_m_tx(void *arg, mblk_t *mp_chain)
*/
if (!simnet_thread_ref(sdev_rx)) {
rw_exit(&simnet_dev_lock);
- freemsgchain(mp_chain);
+ mac_drop_chain(mp_chain, "simnet peer dev not ready");
return (NULL);
}
rw_exit(&simnet_dev_lock);
if (!simnet_thread_ref(sdev)) {
simnet_thread_unref(sdev_rx);
- freemsgchain(mp_chain);
+ mac_drop_chain(mp_chain, "simnet dev not ready");
return (NULL);
}
@@ -798,7 +798,7 @@ simnet_m_tx(void *arg, mblk_t *mp_chain)
mp_new = allocb(size, BPRI_HI);
if (mp_new == NULL) {
sdev->sd_stats.xmit_errors++;
- freemsg(mp);
+ mac_drop_pkt(mp, "allocb failed");
continue;
}
bzero(mp_new->b_wptr, size);
@@ -814,7 +814,7 @@ simnet_m_tx(void *arg, mblk_t *mp_chain)
/* Pullup packet into a single mblk */
if ((nmp = msgpullup(mp, -1)) == NULL) {
sdev->sd_stats.xmit_errors++;
- freemsg(mp);
+ mac_drop_pkt(mp, "msgpullup failed");
continue;
} else {
mac_hcksum_clone(mp, nmp);
@@ -824,8 +824,8 @@ simnet_m_tx(void *arg, mblk_t *mp_chain)
/* Hold reference for taskq receive processing per-pkt */
if (!simnet_thread_ref(sdev_rx)) {
- freemsg(mp);
- freemsgchain(mpnext);
+ mac_drop_pkt(mp, "failed to get thread ref");
+ mac_drop_chain(mpnext, "failed to get thread ref");
break;
}