From patchwork Mon May 2 05:37:54 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wang YanQing X-Patchwork-Id: 617371 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3qytXV1tj9z9t45 for ; Mon, 2 May 2016 15:44:10 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=MecGBYzi; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752707AbcEBFoI (ORCPT ); Mon, 2 May 2016 01:44:08 -0400 Received: from mail-pa0-f67.google.com ([209.85.220.67]:36758 "EHLO mail-pa0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752472AbcEBFoE (ORCPT ); Mon, 2 May 2016 01:44:04 -0400 Received: by mail-pa0-f67.google.com with SMTP id i5so17337784pag.3; Sun, 01 May 2016 22:44:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:mail-followup-to:mime-version :content-disposition:user-agent; bh=ksdhyYEso1gRPLi9X/u+n+FNzJ+uF/w3G6Du/VG75h0=; b=MecGBYziey/QJZkNNYzEtMTgY2UVAmIdX430O28Em8gx2sE6CqmQ0Ga4EIs5Uhpb2g mo/SJNQ+rlUwzCVwlw3edOsTCmjYX3IuFmMokBNt34bS2Q2jqYUbLZZvXDWvfGcHrwHc Im78dnrUcYzmanmXEiadm4a2uGPQMyfYiXzXPSw4xU841Qn1As1vbmRqMLc626naQdX2 FRaCF6Oy9KfXn4QNrpGVgjzx3e5KQC6mkyTOcjnTu7mbJr99AdVyOb0r71A0ppzIJ7aH hvVrShPi5weFslONMeW6Vrhz4iiq9G/DcoY65cPXVeU9SLesVGTqpkgllIpzumhFG3r8 J2dA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id :mail-followup-to:mime-version:content-disposition:user-agent; bh=ksdhyYEso1gRPLi9X/u+n+FNzJ+uF/w3G6Du/VG75h0=; b=HjmcF4mX6Xx7SgJXBtxBPtvoF5yxqjfdnxlyq6DDA/IULLpq+J31pLJf+4KSceSCNh 07qoH4PDa+sdBwK12aK/wzBHQxVamIm5Hw12yWSrNfa3aNpRhmj5dD0Yx3Dq5H5oSn4o xKAvGbc2PhEGh1Nw4NPhwWcXLWlaVcfquxggu3Wozg3XRfXlRgzk13SvuzmGQKMRvfp2 W1ptCMW5R6H9X8TShw+HHo7pj/gZR6Kpa35fEDBxGW5laibBv1WELCXh6aQEgbo+J3Ph 6paF0ZVkBNNULpr7ZrjhyD9QfMlTcHnnajZqtdHGck/pbVY+Gg1xuUa5t/Ahayue8s/k ru1g== X-Gm-Message-State: AOPr4FVMQSlloVdqCVO9KPSzGWPE/OE7gJUo33D7SugDdj1hX3nqT2VmJAu3BoFgdQq08g== X-Received: by 10.66.159.196 with SMTP id xe4mr10670171pab.3.1462167843702; Sun, 01 May 2016 22:44:03 -0700 (PDT) Received: from udknight.localhost ([218.66.137.165]) by smtp.gmail.com with ESMTPSA id c190sm41644441pfb.33.2016.05.01.22.44.01 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 01 May 2016 22:44:03 -0700 (PDT) Received: from udknight.localhost (udknight.com [127.0.0.1]) by udknight.localhost (8.14.4/8.14.4) with ESMTP id u425cMGY030395; Mon, 2 May 2016 13:38:22 +0800 Received: (from root@localhost) by udknight.localhost (8.14.4/8.14.4/Submit) id u425bsoR030342; Mon, 2 May 2016 13:37:54 +0800 Date: Mon, 2 May 2016 13:37:54 +0800 From: Wang YanQing To: Larry.Finger@lwfinger.net Cc: chaoming_li@realsil.com.cn, kvalo@codeaurora.org, linux-wireless@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] rtlwifi:rtl_watchdog_wq_callback: fix calling rtl_lps_enter|rtl_lps_leave in opposite condition Message-ID: <20160502053754.GA30313@udknight> Mail-Followup-To: Wang YanQing , Larry.Finger@lwfinger.net, chaoming_li@realsil.com.cn, kvalo@codeaurora.org, linux-wireless@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.22 (2013-10-16) Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Commit a269913c52ad37952a4d9953bb6d748f7299c304 ("rtlwifi: Rework rtl_lps_leave() and rtl_lps_enter() to use work queue") make a mistake, change the meaning of num_tx|rx_inperiod comparison test. Commit fd09ff958777cf583d7541f180991c0fc50bd2f7 ("rtlwifi: Remove extra workqueue for enter/leave power state") follow previous mistake, bring us to current code. This patch fix it. Signed-off-by: Wang YanQing Signed-off-by: Wang YanQing --- I think this patch should be ported back to stable kernels, 3.10+. In my machine, I will lost wifi connection after minutes if I enable fwlps. drivers/net/wireless/realtek/rtlwifi/base.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/realtek/rtlwifi/base.c b/drivers/net/wireless/realtek/rtlwifi/base.c index c74eb13..264466f 100644 --- a/drivers/net/wireless/realtek/rtlwifi/base.c +++ b/drivers/net/wireless/realtek/rtlwifi/base.c @@ -1660,9 +1660,9 @@ void rtl_watchdog_wq_callback(void *data) if (((rtlpriv->link_info.num_rx_inperiod + rtlpriv->link_info.num_tx_inperiod) > 8) || (rtlpriv->link_info.num_rx_inperiod > 2)) - rtl_lps_enter(hw); - else rtl_lps_leave(hw); + else + rtl_lps_enter(hw); } rtlpriv->link_info.num_rx_inperiod = 0;