summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2019-02-07 07:38:34 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2019-02-07 07:38:34 +0000
commit2f1b930f14157ea72b22d461918e8adf60073df2 (patch)
tree43c46059632a78fff2933aadf6c81956485f90e0 /sys
parent08d73077302b84179b58e304cbfb2d2ada720f01 (diff)
There's a task ring for executing commands in a sleep-safe context.
This task is used to deliver mbufs (for events, not data), but it's possible that the queue overruns. In that case it does leak mbufs. For now, assert the size to see if we hit the issue.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/ic/bwfm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/ic/bwfm.c b/sys/dev/ic/bwfm.c
index 69624040ff4..4b69a9be7f0 100644
--- a/sys/dev/ic/bwfm.c
+++ b/sys/dev/ic/bwfm.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: bwfm.c,v 1.55 2019/01/30 09:20:56 stsp Exp $ */
+/* $OpenBSD: bwfm.c,v 1.56 2019/02/07 07:38:33 patrick Exp $ */
/*
* Copyright (c) 2010-2016 Broadcom Corporation
* Copyright (c) 2016,2017 Patrick Wildt <patrick@blueri.se>
@@ -2426,6 +2426,7 @@ bwfm_do_async(struct bwfm_softc *sc,
int s;
s = splsoftnet();
+ KASSERT(ring->queued < BWFM_HOST_CMD_RING_COUNT);
if (ring->queued >= BWFM_HOST_CMD_RING_COUNT) {
splx(s);
return;