From: Greg Kroah-Hartman Date: Mon, 7 Jul 2014 20:15:56 +0000 (-0700) Subject: 3.4-stable patches X-Git-Tag: v3.4.98~34 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=96362942e2797fafd4dabfa5aeff13381fa90193;p=thirdparty%2Fkernel%2Fstable-queue.git 3.4-stable patches added patches: arm-omap2-fix-parser-bug-in-platform-muxing-code.patch b43-fix-frequency-reported-on-g-phy-with-new-firmware.patch cifs-fix-mount-failure-with-broken-pathnames-when-smb3-mount-with-mapchars-option.patch --- diff --git a/queue-3.4/arm-omap2-fix-parser-bug-in-platform-muxing-code.patch b/queue-3.4/arm-omap2-fix-parser-bug-in-platform-muxing-code.patch new file mode 100644 index 00000000000..e400ef8fdc7 --- /dev/null +++ b/queue-3.4/arm-omap2-fix-parser-bug-in-platform-muxing-code.patch @@ -0,0 +1,60 @@ +From c021f241f4fab2bb4fc4120a38a828a03dd3f970 Mon Sep 17 00:00:00 2001 +From: "David R. Piegdon" +Date: Mon, 16 Jun 2014 23:42:51 +0000 +Subject: ARM: OMAP2+: Fix parser-bug in platform muxing code + +From: "David R. Piegdon" + +commit c021f241f4fab2bb4fc4120a38a828a03dd3f970 upstream. + +Fix a parser-bug in the omap2 muxing code where muxtable-entries will be +wrongly selected if the requested muxname is a *prefix* of their +m0-entry and they have a matching mN-entry. Fix by additionally checking +that the length of the m0_entry is equal. + +For example muxing of "dss_data2.dss_data2" on omap32xx will fail +because the prefix "dss_data2" will match the mux-entries "dss_data2" as +well as "dss_data20", with the suffix "dss_data2" matching m0 (for +dss_data2) and m4 (for dss_data20). Thus both are recognized as signal +path candidates: + +Relevant muxentries from mux34xx.c: + _OMAP3_MUXENTRY(DSS_DATA20, 90, + "dss_data20", NULL, "mcspi3_somi", "dss_data2", + "gpio_90", NULL, NULL, "safe_mode"), + _OMAP3_MUXENTRY(DSS_DATA2, 72, + "dss_data2", NULL, NULL, NULL, + "gpio_72", NULL, NULL, "safe_mode"), + +This will result in a failure to mux the pin at all: + + _omap_mux_get_by_name: Multiple signal paths (2) for dss_data2.dss_data2 + +Patch should apply to linus' latest master down to rather old linux-2.6 +trees. + +Signed-off-by: David R. Piegdon +Cc: stable@vger.kernel.org +[tony@atomide.com: updated description to include full description] +Signed-off-by: Tony Lindgren +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/mach-omap2/mux.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +--- a/arch/arm/mach-omap2/mux.c ++++ b/arch/arm/mach-omap2/mux.c +@@ -184,8 +184,10 @@ static int __init _omap_mux_get_by_name( + m0_entry = mux->muxnames[0]; + + /* First check for full name in mode0.muxmode format */ +- if (mode0_len && strncmp(muxname, m0_entry, mode0_len)) +- continue; ++ if (mode0_len) ++ if (strncmp(muxname, m0_entry, mode0_len) || ++ (strlen(m0_entry) != mode0_len)) ++ continue; + + /* Then check for muxmode only */ + for (i = 0; i < OMAP_MUX_NR_MODES; i++) { diff --git a/queue-3.4/b43-fix-frequency-reported-on-g-phy-with-new-firmware.patch b/queue-3.4/b43-fix-frequency-reported-on-g-phy-with-new-firmware.patch new file mode 100644 index 00000000000..8c8452aecff --- /dev/null +++ b/queue-3.4/b43-fix-frequency-reported-on-g-phy-with-new-firmware.patch @@ -0,0 +1,54 @@ +From 2fc68eb122c7ea6cd5be1fe7d6650c0beb2f4f40 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= +Date: Thu, 12 Jun 2014 22:28:22 +0200 +Subject: b43: fix frequency reported on G-PHY with /new/ firmware +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= + +commit 2fc68eb122c7ea6cd5be1fe7d6650c0beb2f4f40 upstream. + +Support for firmware rev 508+ was added years ago, but we never noticed +it reports channel in a different way for G-PHY devices. Instead of +offset from 2400 MHz it simply passes channel id (AKA hw_value). + +So far it was (most probably) affecting monitor mode users only, but +the following recent commit made it noticeable for quite everybody: + +commit 3afc2167f60a327a2c1e1e2600ef209a3c2b75b7 +Author: Emmanuel Grumbach +Date: Tue Mar 4 16:50:13 2014 +0200 + + cfg80211/mac80211: ignore signal if the frame was heard on wrong channel + +Reported-by: Aaro Koskinen +Signed-off-by: Rafał Miłecki +Tested-by: Aaro Koskinen +Signed-off-by: John W. Linville +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/net/wireless/b43/xmit.c | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +--- a/drivers/net/wireless/b43/xmit.c ++++ b/drivers/net/wireless/b43/xmit.c +@@ -808,9 +808,13 @@ void b43_rx(struct b43_wldev *dev, struc + break; + case B43_PHYTYPE_G: + status.band = IEEE80211_BAND_2GHZ; +- /* chanid is the radio channel cookie value as used +- * to tune the radio. */ +- status.freq = chanid + 2400; ++ /* Somewhere between 478.104 and 508.1084 firmware for G-PHY ++ * has been modified to be compatible with N-PHY and others. ++ */ ++ if (dev->fw.rev >= 508) ++ status.freq = ieee80211_channel_to_frequency(chanid, status.band); ++ else ++ status.freq = chanid + 2400; + break; + case B43_PHYTYPE_N: + case B43_PHYTYPE_LP: diff --git a/queue-3.4/cifs-fix-mount-failure-with-broken-pathnames-when-smb3-mount-with-mapchars-option.patch b/queue-3.4/cifs-fix-mount-failure-with-broken-pathnames-when-smb3-mount-with-mapchars-option.patch new file mode 100644 index 00000000000..a74e6e4c58c --- /dev/null +++ b/queue-3.4/cifs-fix-mount-failure-with-broken-pathnames-when-smb3-mount-with-mapchars-option.patch @@ -0,0 +1,58 @@ +From ce36d9ab3bab06b7b5522f5c8b68fac231b76ffb Mon Sep 17 00:00:00 2001 +From: Steve French +Date: Sun, 22 Jun 2014 20:38:49 -0500 +Subject: CIFS: fix mount failure with broken pathnames when smb3 mount with mapchars option + +From: Steve French + +commit ce36d9ab3bab06b7b5522f5c8b68fac231b76ffb upstream. + +When we SMB3 mounted with mapchars (to allow reserved characters : \ / > < * ? +via the Unicode Windows to POSIX remap range) empty paths +(eg when we open "" to query the root of the SMB3 directory on mount) were not +null terminated so we sent garbarge as a path name on empty paths which caused +SMB2/SMB2.1/SMB3 mounts to fail when mapchars was specified. mapchars is +particularly important since Unix Extensions for SMB3 are not supported (yet) + +Signed-off-by: Steve French +Reviewed-by: David Disseldorp +Signed-off-by: Greg Kroah-Hartman + +--- + fs/cifs/cifs_unicode.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +--- a/fs/cifs/cifs_unicode.c ++++ b/fs/cifs/cifs_unicode.c +@@ -290,7 +290,8 @@ int + cifsConvertToUTF16(__le16 *target, const char *source, int srclen, + const struct nls_table *cp, int mapChars) + { +- int i, j, charlen; ++ int i, charlen; ++ int j = 0; + char src_char; + __le16 dst_char; + wchar_t tmp; +@@ -298,12 +299,11 @@ cifsConvertToUTF16(__le16 *target, const + if (!mapChars) + return cifs_strtoUTF16(target, source, PATH_MAX, cp); + +- for (i = 0, j = 0; i < srclen; j++) { ++ for (i = 0; i < srclen; j++) { + src_char = source[i]; + charlen = 1; + switch (src_char) { + case 0: +- put_unaligned(0, &target[j]); + goto ctoUTF16_out; + case ':': + dst_char = cpu_to_le16(UNI_COLON); +@@ -350,6 +350,7 @@ cifsConvertToUTF16(__le16 *target, const + } + + ctoUTF16_out: ++ put_unaligned(0, &target[j]); /* Null terminate target unicode string */ + return j; + } + diff --git a/queue-3.4/series b/queue-3.4/series index 948eac5ffdb..93db10aca96 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -16,3 +16,6 @@ drm-vmwgfx-fix-incorrect-write-to-read-only-register-v2.patch bluetooth-fix-ssp-acceptor-just-works-confirmation-without-mitm.patch bluetooth-remove-unused-hci_le_ltk_reply.patch mac80211-don-t-check-netdev-state-for-debugfs-read-write.patch +arm-omap2-fix-parser-bug-in-platform-muxing-code.patch +b43-fix-frequency-reported-on-g-phy-with-new-firmware.patch +cifs-fix-mount-failure-with-broken-pathnames-when-smb3-mount-with-mapchars-option.patch