Linux v3.10.11

This commit is contained in:
Justin M. Forbes 2013-09-09 07:24:58 -05:00
parent 9a4816675a
commit ef9abbf29c
4 changed files with 5 additions and 256 deletions

View File

@ -1,140 +0,0 @@
From 6aeddf9d409f3d9938b05b545d65810739237b2e Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Tue, 20 Aug 2013 06:56:08 +0200
Subject: [PATCH] 3.10.{6,7} crashes on network activity
On 2013-08-20 2:28 AM, Greg Kroah-Hartman wrote:
> On Tue, Aug 20, 2013 at 08:26:11AM +0800, Tom Gundersen wrote:
>> On Tue, Aug 20, 2013 at 8:03 AM, Greg Kroah-Hartman
>> <gregkh@linuxfoundation.org> wrote:
>> > On Tue, Aug 20, 2013 at 07:59:47AM +0800, Tom Gundersen wrote:
>> >> Hi guys,
>> >>
>> >> Starting with 3.10.6 (and still present in .7) I get an oops on
>> >> connecting to the network.
>> >>
>> >> The attached picture shows the oops. In case it does not reach the ML,
>> >> the top of the call trace reads:
>> >>
>> >> brcms_c_compute_rtscts_dur
>> >> brcms_c_ampdu_finalize
>> >> ampdu_finalize
>> >> dma_txfast
>> >> brcms_c_txfifo
>> >> brcms_c_sendpkt_mac80211
>> >> brcms_ops_tx
>> >> __ieee80211_tx
>> >>
>> >> I bisected the problem and the first bad commit is
>> >>
>> >> commit ef47a5e4f1aaf1d0e2e6875e34b2c9595897bef6
>> >> Author: Felix Fietkau <nbd@openwrt.org>
>> >> Date: Fri Jun 28 21:04:35 2013 +0200
>> >>
>> >> mac80211/minstrel_ht: fix cck rate sampling
>> >>
>> >> commit 1cd158573951f737fbc878a35cb5eb47bf9af3d5 upstream.
>> >>
>> >> Reverting it on top of .7 fixes the problem.
>> >>
>> >> I had the same (I suppose) problem on mainline some time ago, but I
>> >> have not bisected it, verified that the problem still occurs there, or
>> >> checked if reverting the upstream patch fixes it. I'd be happy to do
>> >> that if it would help though.
>> >>
>> >> Let me know if you need any more information.
>> >
>> > Do you have this same problem with 3.11-rc6 as well?
>>
>> Yes, I just confirmed. I also confirmed that reverting the mainline
>> commit on top of -rc6 fixes the problem.
>
> Great, thanks.
>
> Felix and Johannes, any chance we can get this reverted in Linus tree
> soon, and push that revert back to the 3.10 stable tree as well?
I'd like to avoid a revert, since that will simply replace one set of
issues with another. Let's limit the use of the feature that brcmsmac
can't handle to drivers that are known to work with it. Tom, Please
test this patch to see if it fixes your issue.
- Felix
---
drivers/net/wireless/ath/ath9k/init.c | 3 ++-
drivers/net/wireless/ath/carl9170/main.c | 3 ++-
drivers/net/wireless/rt2x00/rt2800lib.c | 3 ++-
include/net/mac80211.h | 1 +
net/mac80211/rc80211_minstrel_ht.c | 3 +++
5 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c
index 2ba4945..bd126c2 100644
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -767,7 +767,8 @@ void ath9k_set_hw_capab(struct ath_softc *sc, struct ieee80211_hw *hw)
IEEE80211_HW_PS_NULLFUNC_STACK |
IEEE80211_HW_SPECTRUM_MGMT |
IEEE80211_HW_REPORTS_TX_ACK_STATUS |
- IEEE80211_HW_SUPPORTS_RC_TABLE;
+ IEEE80211_HW_SUPPORTS_RC_TABLE |
+ IEEE80211_HW_SUPPORTS_HT_CCK_RATES;
if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_HT)
hw->flags |= IEEE80211_HW_AMPDU_AGGREGATION;
diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
index e9010a4..0686375 100644
--- a/drivers/net/wireless/ath/carl9170/main.c
+++ b/drivers/net/wireless/ath/carl9170/main.c
@@ -1857,7 +1857,8 @@ void *carl9170_alloc(size_t priv_size)
IEEE80211_HW_SUPPORTS_PS |
IEEE80211_HW_PS_NULLFUNC_STACK |
IEEE80211_HW_NEED_DTIM_BEFORE_ASSOC |
- IEEE80211_HW_SIGNAL_DBM;
+ IEEE80211_HW_SIGNAL_DBM |
+ IEEE80211_HW_SUPPORTS_HT_CCK_RATES;
if (!modparam_noht) {
/*
diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
index 705aa33..7e66a90 100644
--- a/drivers/net/wireless/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
@@ -5912,7 +5912,8 @@ static int rt2800_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
IEEE80211_HW_SUPPORTS_PS |
IEEE80211_HW_PS_NULLFUNC_STACK |
IEEE80211_HW_AMPDU_AGGREGATION |
- IEEE80211_HW_REPORTS_TX_ACK_STATUS;
+ IEEE80211_HW_REPORTS_TX_ACK_STATUS |
+ IEEE80211_HW_SUPPORTS_HT_CCK_RATES;
/*
* Don't set IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING for USB devices
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index 885898a..4e50d36 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -1484,6 +1484,7 @@ enum ieee80211_hw_flags {
IEEE80211_HW_SUPPORTS_RC_TABLE = 1<<24,
IEEE80211_HW_P2P_DEV_ADDR_FOR_INTF = 1<<25,
IEEE80211_HW_TIMING_BEACON_ONLY = 1<<26,
+ IEEE80211_HW_SUPPORTS_HT_CCK_RATES = 1<<27,
};
/**
diff --git a/net/mac80211/rc80211_minstrel_ht.c b/net/mac80211/rc80211_minstrel_ht.c
index f5aed96..f3bbea1 100644
--- a/net/mac80211/rc80211_minstrel_ht.c
+++ b/net/mac80211/rc80211_minstrel_ht.c
@@ -828,6 +828,9 @@ minstrel_ht_update_cck(struct minstrel_priv *mp, struct minstrel_ht_sta *mi,
if (sband->band != IEEE80211_BAND_2GHZ)
return;
+ if (!(mp->hw->flags & IEEE80211_HW_SUPPORTS_HT_CCK_RATES))
+ return;
+
mi->cck_supported = 0;
mi->cck_supported_short = 0;
for (i = 0; i < 4; i++) {
--
1.8.3.1

View File

@ -74,7 +74,7 @@ Summary: The Linux kernel
%if 0%{?released_kernel}
# Do we have a -stable update to apply?
%define stable_update 10
%define stable_update 11
# Is it a -stable RC?
%define stable_rc 0
# Set rpm version accordingly
@ -770,11 +770,6 @@ Patch25077: media-cx23885-Fix-TeVii-S471-regression-since-introduction-of-ts2020
#CVE-2013-0343 rhbz 914664 999380
Patch25078: ipv6-remove-max_addresses-check-from-ipv6_create_tempaddr.patch
#rhbz 989269
Patch25079: 3.10.-6-7-crashes-on-network-activity.patch
Patch25090: mei-3.10.y.patch
#CVE-2013-2888 rhbz 1000451 1002543 CVE-2013-2889 rhbz 999890 1002548
#CVE-2013-2891 rhbz 999960 1002555 CVE-2013-2892 rhbz 1000429 1002570
#CVE-2013-2893 rhbz 1000414 1002575 CVE-2013-2894 rhbz 1000137 1002579
@ -1500,11 +1495,6 @@ ApplyPatch media-cx23885-Fix-TeVii-S471-regression-since-introduction-of-ts2020.
#CVE-2013-0343 rhbz 914664 999380
ApplyPatch ipv6-remove-max_addresses-check-from-ipv6_create_tempaddr.patch
#rhbz 989269
ApplyPatch 3.10.-6-7-crashes-on-network-activity.patch
ApplyPatch mei-3.10.y.patch
#CVE-2013-2888 rhbz 1000451 1002543 CVE-2013-2889 rhbz 999890 1002548
#CVE-2013-2891 rhbz 999960 1002555 CVE-2013-2892 rhbz 1000429 1002570
#CVE-2013-2893 rhbz 1000414 1002575 CVE-2013-2894 rhbz 1000137 1002579
@ -2324,6 +2314,9 @@ fi
# and build.
%changelog
* Thu Sep 09 2013 Justin M. Forbes <jforbes@fedoraproject.org> 3.10.11-200
- Linux v3.10.11
* Fri Aug 30 2013 Josh Boyer <jwboyer@fedoraproject.org>
- Fix HID CVEs. Absurd.
- CVE-2013-2888 rhbz 1000451 1002543 CVE-2013-2889 rhbz 999890 1002548

View File

@ -1,104 +0,0 @@
Delivered-To: jwboyer@gmail.com
Received: by 10.76.168.104 with SMTP id zv8csp116477oab;
Sun, 25 Aug 2013 02:53:06 -0700 (PDT)
X-Received: by 10.66.146.42 with SMTP id sz10mr8515943pab.78.1377424384757;
Sun, 25 Aug 2013 02:53:04 -0700 (PDT)
Return-Path: <stable-owner@vger.kernel.org>
Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67])
by mx.google.com with ESMTP id zu9si6326866pbc.308.1969.12.31.16.00.00;
Sun, 25 Aug 2013 02:53:04 -0700 (PDT)
Received-SPF: pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67;
Authentication-Results: mx.google.com;
spf=pass (google.com: best guess record for domain of stable-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mail=stable-owner@vger.kernel.org
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
id S1756391Ab3HYJwW (ORCPT <rfc822;outmanzhao@gmail.com>
+ 58 others); Sun, 25 Aug 2013 05:52:22 -0400
Received: from mga03.intel.com ([143.182.124.21]:34236 "EHLO mga03.intel.com"
rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP
id S1756361Ab3HYJwT (ORCPT <rfc822;stable@vger.kernel.org>);
Sun, 25 Aug 2013 05:52:19 -0400
Received: from azsmga001.ch.intel.com ([10.2.17.19])
by azsmga101.ch.intel.com with ESMTP; 25 Aug 2013 02:52:18 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="4.89,951,1367996400";
d="scan'208";a="351301674"
Received: from twinkler-dhg.jer.intel.com ([10.12.87.84])
by azsmga001.ch.intel.com with ESMTP; 25 Aug 2013 02:52:16 -0700
From: Tomas Winkler <tomas.winkler@intel.com>
To: gregkh@linuxfoundation.org
Cc: arnd@arndb.de, linux-kernel@vger.kernel.org,
Tomas Winkler <tomas.winkler@intel.com>,
stable@vger.kernel.org, Shuah Khan <shuah.kh@samsung.com>,
Konstantin Khlebnikov <khlebnikov@openvz.org>
Subject: [3.10][PATCH 4/4] mei: me: fix hardware reset flow
Date: Sun, 25 Aug 2013 12:49:49 +0300
Message-Id: <1377424189-5508-5-git-send-email-tomas.winkler@intel.com>
X-Mailer: git-send-email 1.8.1.2
In-Reply-To: <1377424189-5508-1-git-send-email-tomas.winkler@intel.com>
References: <1377424189-5508-1-git-send-email-tomas.winkler@intel.com>
Sender: stable-owner@vger.kernel.org
Precedence: bulk
List-ID: <stable.vger.kernel.org>
X-Mailing-List: stable@vger.kernel.org
stable: 3.10
commit ff96066e3171acdea356b331163495957cb833d0 char-misc
Both H_IS and H_IE needs to be set to receive H_RDY
interrupt
1. Assert H_IS to clear the interrupts during hw reset
and use mei_me_reg_write instead of mei_hcsr_set as the later
strips down the H_IS
2. fix interrupt disablement embarrassing typo
hcsr |= ~H_IE -> hcsr &= ~H_IE;
this will remove the unwanted interrupt on power down
3. remove useless debug print outs
Cc: stable@vger.kernel.org
Cc: Shuah Khan <shuah.kh@samsung.com>
Cc: Konstantin Khlebnikov <khlebnikov@openvz.org>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Conflicts:
drivers/misc/mei/hw-me.c
---
drivers/misc/mei/hw-me.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/misc/mei/hw-me.c b/drivers/misc/mei/hw-me.c
index 700fe55..1bf3f8b 100644
--- a/drivers/misc/mei/hw-me.c
+++ b/drivers/misc/mei/hw-me.c
@@ -176,16 +176,14 @@ static void mei_me_hw_reset(struct mei_device *dev, bool intr_enable)
struct mei_me_hw *hw = to_me_hw(dev);
u32 hcsr = mei_hcsr_read(hw);
- dev_dbg(&dev->pdev->dev, "before reset HCSR = 0x%08x.\n", hcsr);
-
- hcsr |= (H_RST | H_IG);
+ hcsr |= H_RST | H_IG | H_IS;
if (intr_enable)
hcsr |= H_IE;
else
- hcsr |= ~H_IE;
+ hcsr &= ~H_IE;
- mei_hcsr_set(hw, hcsr);
+ mei_me_reg_write(hw, H_CSR, hcsr);
if (dev->dev_state == MEI_DEV_POWER_DOWN)
mei_me_hw_reset_release(dev);
--
1.8.1.2
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html

View File

@ -1,2 +1,2 @@
4f25cd5bec5f8d5a7d935b3f2ccb8481 linux-3.10.tar.xz
d010ef17d3e577fd1bdcb6887f2b9836 patch-3.10.10.xz
9aadf2325fed53e971fe59bc6c7c3b89 patch-3.10.11.xz