diff options
author | adrian <adrian@FreeBSD.org> | 2009-05-27 01:56:37 +0000 |
---|---|---|
committer | adrian <adrian@FreeBSD.org> | 2009-05-27 01:56:37 +0000 |
commit | 6732387afd46b6badf6c60288e12b9b5dd4884c6 (patch) | |
tree | 459f78c06d4661baacca60c90fa73d1421a56b40 /sys/dev/xen/netfront/netfront.c | |
parent | fc20aee93bd489bc9ed7ce5ea82fae98f8cb15a8 (diff) | |
download | FreeBSD-src-6732387afd46b6badf6c60288e12b9b5dd4884c6.zip FreeBSD-src-6732387afd46b6badf6c60288e12b9b5dd4884c6.tar.gz |
Do the invariant check before the mbuf is dereferenced.
Diffstat (limited to 'sys/dev/xen/netfront/netfront.c')
-rw-r--r-- | sys/dev/xen/netfront/netfront.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/xen/netfront/netfront.c b/sys/dev/xen/netfront/netfront.c index 282b1d7..6b1a2bf 100644 --- a/sys/dev/xen/netfront/netfront.c +++ b/sys/dev/xen/netfront/netfront.c @@ -1065,6 +1065,8 @@ xn_txeof(struct netfront_info *np) id = txr->id; m = np->xn_cdata.xn_tx_chain[id]; + KASSERT(m != NULL, ("mbuf not found in xn_tx_chain")); + M_ASSERTVALID(m); /* * Increment packet count if this is the last @@ -1072,8 +1074,6 @@ xn_txeof(struct netfront_info *np) */ if (!m->m_next) ifp->if_opackets++; - KASSERT(m != NULL, ("mbuf not found in xn_tx_chain")); - M_ASSERTVALID(m); if (unlikely(gnttab_query_foreign_access( np->grant_tx_ref[id]) != 0)) { printf("network_tx_buf_gc: warning " |