Date: Fri, 9 Mar 2012 08:36:31 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r232719 - head/sys/dev/ath Message-ID: <201203090836.q298aVOg087072@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adrian Date: Fri Mar 9 08:36:30 2012 New Revision: 232719 URL: http://svn.freebsd.org/changeset/base/232719 Log: Insert extra paranoia into the ath(4) driver. This function must be called with both the source and destination TXQs locked or things will get hairy. I added this as part of some debugging in a PR but it turned out to not be the cause. I still think it's -correct- so, here it is. Modified: head/sys/dev/ath/if_ath.c Modified: head/sys/dev/ath/if_ath.c ============================================================================== --- head/sys/dev/ath/if_ath.c Fri Mar 9 07:53:44 2012 (r232718) +++ head/sys/dev/ath/if_ath.c Fri Mar 9 08:36:30 2012 (r232719) @@ -2908,6 +2908,10 @@ ath_beacon_update(struct ieee80211vap *v static void ath_txqmove(struct ath_txq *dst, struct ath_txq *src) { + + ATH_TXQ_LOCK_ASSERT(dst); + ATH_TXQ_LOCK_ASSERT(src); + TAILQ_CONCAT(&dst->axq_q, &src->axq_q, bf_list); dst->axq_link = src->axq_link; src->axq_link = NULL;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201203090836.q298aVOg087072>