From owner-svn-src-all@freebsd.org Mon Sep 12 18:41:18 2016 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D479FBD872B; Mon, 12 Sep 2016 18:41:18 +0000 (UTC) (envelope-from andriyvos@gmail.com) Received: from mail-lf0-f46.google.com (mail-lf0-f46.google.com [209.85.215.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 64ED3BF8; Mon, 12 Sep 2016 18:41:18 +0000 (UTC) (envelope-from andriyvos@gmail.com) Received: by mail-lf0-f46.google.com with SMTP id h127so94397595lfh.0; Mon, 12 Sep 2016 11:41:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:to:cc:subject:references:date:mime-version :content-transfer-encoding:from:message-id:in-reply-to:user-agent; bh=BefrUrcfXp3noE+gyd3qDc6vj89Ka3W40Nz9tmMJ1I0=; b=JQbzMwdoJ9rJYropKBn6ll4mmcZoPGRHo4JOpgtYcKX3hjMOmSfi4h0zbUe36Mg6ss dq7e8aBqEc+cTkeMRUd1gQoHSyiYDWyGJW0Q6UwPxuBKa6t/Z7vvgmK5OLmxWuwJkfE6 Gc4yI/EuOq6GmTZoKaJmI2Z0bW/szEAHmDOMa6FvPA4KXaq/luHQi3FYIltQ0wIMPOPk YjLoWx6vlN/EBsIK/if+q/jbFL3IcRUHtRz64EtXOTadEVsuA+vGUgwMLw/KZrRYW1Fz XOgbhqXo9j0OQF4vQQjwwevN+TJH/pq4P/j8cU1+ulO+HKlD9ccsBBLC+CTQx+4e4jJX y08g== X-Gm-Message-State: AE9vXwNF3EI+WZOOce8UGio4gWS+kqZJb/FUZLnjcX11aeYUAnYLlx6ybtdPSo57+CsbUg== X-Received: by 10.25.215.35 with SMTP id o35mr6363466lfg.40.1473705675914; Mon, 12 Sep 2016 11:41:15 -0700 (PDT) Received: from localhost (host-176-37-109-22.la.net.ua. [176.37.109.22]) by smtp.gmail.com with ESMTPSA id r196sm3251952lfd.41.2016.09.12.11.41.14 (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 12 Sep 2016 11:41:15 -0700 (PDT) Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes To: "Adrian Chadd" Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r305745 - head/sys/dev/urtwn References: <201609121646.u8CGkEck004615@repo.freebsd.org> Date: Mon, 12 Sep 2016 21:40:54 +0300 MIME-Version: 1.0 Content-Transfer-Encoding: Quoted-Printable From: "Andriy Voskoboinyk" Message-ID: In-Reply-To: User-Agent: Opera Mail/12.16 (FreeBSD) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Sep 2016 18:41:18 -0000 Mon, 12 Sep 2016 21:10:54 +0300 =D0=B1=D1=83=D0=BB=D0=BE =D0=BD=D0=B0=D0= =BF=D0=B8=D1=81=D0=B0=D0=BD=D0=BE Adrian Chadd = : Hi, The error handling is splitted between ieee80211_raw_output() and = ic_raw_xmit(); it cannot be moved completely to net80211 because of https://lists.freebsd.org/pipermail/freebsd-wireless/2015-November/00627= 2.html > Hi, > > That's why I created ieee80211_tx_complete(). Is that not "right" here= ? > > > > -a > > > On 12 September 2016 at 09:46, Andriy Voskoboinyk = > wrote: >> Author: avos >> Date: Mon Sep 12 16:46:14 2016 >> New Revision: 305745 >> URL: https://svnweb.freebsd.org/changeset/base/305745 >> >> Log: >> urtwn: fix possible driver hang when beacon miss is detected. >> >> Modified: >> head/sys/dev/urtwn/if_urtwn.c >> >> Modified: head/sys/dev/urtwn/if_urtwn.c >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D >> --- head/sys/dev/urtwn/if_urtwn.c Mon Sep 12 16:44:21 2016 = = >> (r305744) >> +++ head/sys/dev/urtwn/if_urtwn.c Mon Sep 12 16:46:14 2016 = = >> (r305745) >> @@ -5628,8 +5628,11 @@ urtwn_raw_xmit(struct ieee80211_node *ni >> callout_reset(&sc->sc_watchdog_ch, hz, urtwn_watchdog, sc); >> >> end: >> - if (error !=3D 0) >> + if (error !=3D 0) { >> + if (m->m_flags & M_TXCB) >> + ieee80211_process_callback(ni, m, 1); >> m_freem(m); >> + } >> >> URTWN_UNLOCK(sc); >>