Page MenuHomeFreeBSD

D47006.diff
No OneTemporary

D47006.diff

diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -6074,8 +6074,12 @@
if (!withoutpkts && ltxq_empty)
goto out;
- /* Make sure we do not double-schedule. */
- if (ltxq->txq_entry.tqe_next != NULL)
+ /*
+ * Make sure we do not double-schedule. We do this by checking tqe_prev,
+ * the previous entry in our tailq. tqe_prev is always valid if this entry
+ * is queued, tqe_next may be NULL if this is the only element in the list.
+ */
+ if (ltxq->txq_entry.tqe_prev != NULL)
goto out;
lhw = HW_TO_LHW(hw);

File Metadata

Mime Type
text/plain
Expires
Thu, Nov 7, 8:54 AM (21 h, 34 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
13864942
Default Alt Text
D47006.diff (684 B)

Event Timeline