Page MenuHomeFreeBSD

D34076.1788993685.diff
No OneTemporary

Size
1 KB
Referenced Files
None
Subscribers
None

D34076.1788993685.diff

Index: sys/kern/kern_mbuf.c
===================================================================
--- sys/kern/kern_mbuf.c
+++ sys/kern/kern_mbuf.c
@@ -1650,11 +1650,16 @@
struct ifnet *
m_rcvif_restore(struct mbuf *m)
{
+ struct ifnet *ifp;
M_ASSERTPKTHDR(m);
+ NET_EPOCH_ASSERT();
+
+ ifp = ifnet_byindexgen(m->m_pkthdr.rcvidx, m->m_pkthdr.rcvgen);
+ if (ifp == NULL || (ifp->if_flags & IFF_DYING))
+ return (NULL);
- return ((m->m_pkthdr.rcvif = ifnet_byindexgen(m->m_pkthdr.rcvidx,
- m->m_pkthdr.rcvgen)));
+ return (m->m_pkthdr.rcvif = ifp);
}
/*
Index: sys/netpfil/ipfw/dn_sched_wf2q.c
===================================================================
--- sys/netpfil/ipfw/dn_sched_wf2q.c
+++ sys/netpfil/ipfw/dn_sched_wf2q.c
@@ -243,6 +243,8 @@
q = HEAP_TOP(sch)->object;
alg_fq = (struct wf2qp_queue *)q;
m = dn_dequeue(q);
+ if (m == NULL)
+ return NULL;
heap_extract(sch, NULL); /* Remove queue from heap. */
si->V += (uint64_t)(m->m_pkthdr.len) * si->inv_wsum;
alg_fq->S = alg_fq->F; /* Update start time. */

File Metadata

Mime Type
text/plain
Expires
Wed, Sep 9, 10:41 PM (9 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29529755
Default Alt Text
D34076.1788993685.diff (1 KB)

Event Timeline