Date: Sun, 17 Apr 2016 16:52:29 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-wireless@FreeBSD.org Subject: [Bug 208860] [net80211]: ieee80211_waitfor_parent() will hang forever if something is enqueued into the taskqueue Message-ID: <bug-208860-21060@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D208860 Bug ID: 208860 Summary: [net80211]: ieee80211_waitfor_parent() will hang forever if something is enqueued into the taskqueue Product: Base System Version: 11.0-CURRENT Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: wireless Assignee: freebsd-wireless@FreeBSD.org Reporter: avos@freebsd.org Manual tracing (wlan0 and wlan2 are monitor mode vaps on wpi0): wlan0: wlan0: ieee80211_ioctl: before ieee80211_start_locked() wlan0: start running, 0 vaps running wlan0: ieee80211_start_locked: up parent wpi0 wlan0: ieee80211_ioctl: before ieee80211_waitfor_parent(), wait=3D1 wlan0: ieee80211_waitfor_parent: before taskqueue_block() wlan0: ieee80211_waitfor_parent: ieee80211_draintask(ic, &ic->ic_parent_tas= k); <<< hangs here wlan2: wlan2: ieee80211_ioctl: before ieee80211_start_locked() wlan2: start running, 1 vaps running wlan2: ieee80211_new_state_locked: INIT -> RUN (nrunning 0 nscanning 0) wlan2: ieee80211_ioctl: before ieee80211_waitfor_parent(), wait=3D0 <<< no progress too Since the manpage for taskqueue(9) states > The taskqueue_block() function blocks the taskqueue. It prevents any > enqueued but not running tasks from being executed. and > Note that if taskqueue_drain() is called on a task that is enqueued on a > taskqueue that is blocked by taskqueue_block(), then taskqueue_drain() > can not return until the taskqueue is unblocked. this function will never work as expected (probably, it should set a flag f= or ieee80211_runtask() + call taskqueue_drain_all() instead). --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-208860-21060>