[opensuse-kernel] A patch for openSUSE kernel 2.6.31
This patch is in mainline under the listed commit, and has been applied to the 2.6.32 stable tree. If possible, it should be included in the 2.6.31 kernel of openSUSE 11.2. Thanks, Larry Finger --- commit b6c3f5be7c6ac3375f44de4545c1ffe216b34022 Author: Larry Finger <Larry.Finger@lwfinger.net> Date: Tue Feb 2 10:08:19 2010 -0600 b43: Fix throughput regression Commit c7ab5ef9bcd281135c21b4732c9be779585181be entitled "b43: implement short slot and basic rate handling" reduced the transmit throughput for my BCM4311 device from 18 Mb/s to 0.7 Mb/s. The basic rate handling portion is OK, the problem is in the short slot handling. Prior to this change, the short slot enable/disable routines were never called. Experimentation showed that the critical part was changing the value at offset 0x0010 in the shared memory. This is supposed to contain the 802.11 Slot Time in usec, but if it is changed from its initial value of zero, performance is destroyed. On the other hand, changing the value in the MMIO register corresponding to the Interframe Slot Time increased performance from 18 to 22 Mb/s. A BCM4306/3 also shows dramatic improvement of the transmit rate from 5.3 to 19.0 Mb/s. Other changes in the patch include removal of the magic number for the MMIO register, and allowing the slot time to be set for any PHY operating in the 2.4 GHz band. Previously, the routine was executed only for G PHYs. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Stable <stable@kernel.org> [Any stable version back through 2.6.28] Signed-off-by: John W. Linville <linville@tuxdriver.com> diff --git a/drivers/net/wireless/b43/b43.h b/drivers/net/wireless/b43/b43.h index fe3bf94..c484cc2 100644 --- a/drivers/net/wireless/b43/b43.h +++ b/drivers/net/wireless/b43/b43.h @@ -115,6 +115,7 @@ #define B43_MMIO_TSF_2 0x636 /* core rev < 3 only */ #define B43_MMIO_TSF_3 0x638 /* core rev < 3 only */ #define B43_MMIO_RNG 0x65A +#define B43_MMIO_IFSSLOT 0x684 /* Interframe slot time */ #define B43_MMIO_IFSCTL 0x688 /* Interframe space control */ #define B43_MMIO_IFSCTL_USE_EDCF 0x0004 #define B43_MMIO_POWERUP_DELAY 0x6A8 diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c index 19b4eae..fcbf0e2 100644 --- a/drivers/net/wireless/b43/main.c +++ b/drivers/net/wireless/b43/main.c @@ -628,10 +628,17 @@ static void b43_upload_card_macaddress(struct b43_wldev *dev) static void b43_set_slot_time(struct b43_wldev *dev, u16 slot_time) { /* slot_time is in usec. */ - if (dev->phy.type != B43_PHYTYPE_G) + /* This test used to exit for all but a G PHY. */ + if (b43_current_band(dev->wl) == IEEE80211_BAND_5GHZ) return; - b43_write16(dev, 0x684, 510 + slot_time); - b43_shm_write16(dev, B43_SHM_SHARED, 0x0010, slot_time); + b43_write16(dev, B43_MMIO_IFSSLOT, 510 + slot_time); + /* Shared memory location 0x0010 is the slot time and should be + * set to slot_time; however, this register is initially 0 and changing + * the value adversely affects the transmit rate for BCM4311 + * devices. Until this behavior is unterstood, delete this step + * + * b43_shm_write16(dev, B43_SHM_SHARED, 0x0010, slot_time); + */ } static void b43_short_slot_timing_enable(struct b43_wldev *dev) -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
On Wed, Feb 24, 2010 at 09:21:36PM -0600, Larry Finger wrote:
This patch is in mainline under the listed commit, and has been applied to the 2.6.32 stable tree. If possible, it should be included in the 2.6.31 kernel of openSUSE 11.2.
Thanks,
Larry Finger ---
commit b6c3f5be7c6ac3375f44de4545c1ffe216b34022 Author: Larry Finger <Larry.Finger@lwfinger.net> Date: Tue Feb 2 10:08:19 2010 -0600
Cool, thanks, I'll go queue this up tomorrow. greg k-h -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
Hi Greg, Le jeudi 25 février 2010 04:52, Greg KH a écrit :
On Wed, Feb 24, 2010 at 09:21:36PM -0600, Larry Finger wrote:
commit b6c3f5be7c6ac3375f44de4545c1ffe216b34022 Author: Larry Finger <Larry.Finger@lwfinger.net> Date: Tue Feb 2 10:08:19 2010 -0600
Cool, thanks, I'll go queue this up tomorrow.
Speaking of this... I have a number of patches I would have sent for inclusion into 2.6.31-stable if that branch was still active. Can I apply these patches to our openSUSE 11.2 kernel right away? Or is there a procedure I should follow? -- Jean Delvare Suse L3 -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 02/25/2010 04:27 AM, Jean Delvare wrote:
Hi Greg,
Le jeudi 25 février 2010 04:52, Greg KH a écrit :
On Wed, Feb 24, 2010 at 09:21:36PM -0600, Larry Finger wrote:
commit b6c3f5be7c6ac3375f44de4545c1ffe216b34022 Author: Larry Finger <Larry.Finger@lwfinger.net> Date: Tue Feb 2 10:08:19 2010 -0600
Cool, thanks, I'll go queue this up tomorrow.
Speaking of this... I have a number of patches I would have sent for inclusion into 2.6.31-stable if that branch was still active. Can I apply these patches to our openSUSE 11.2 kernel right away? Or is there a procedure I should follow?
There's a section in series.conf with a "if there's another 2.6.31 - -stable update, put those patches here" for that. :) - -Jeff - -- Jeff Mahoney SUSE Labs -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.13 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org/ iEYEARECAAYFAkuGl5EACgkQLPWxlyuTD7K/5gCeLqElyapX+t/VY2lYq+WwzIe4 kEoAn0rJQ7GFz4GfzOzE75YOZEe8umau =AcBy -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
Le jeudi 25 février 2010 16:30, Jeff Mahoney a écrit :
On 02/25/2010 04:27 AM, Jean Delvare wrote:
Hi Greg,
Le jeudi 25 février 2010 04:52, Greg KH a écrit :
On Wed, Feb 24, 2010 at 09:21:36PM -0600, Larry Finger wrote:
commit b6c3f5be7c6ac3375f44de4545c1ffe216b34022 Author: Larry Finger <Larry.Finger@lwfinger.net> Date: Tue Feb 2 10:08:19 2010 -0600
Cool, thanks, I'll go queue this up tomorrow.
Speaking of this... I have a number of patches I would have sent for inclusion into 2.6.31-stable if that branch was still active. Can I apply these patches to our openSUSE 11.2 kernel right away? Or is there a procedure I should follow?
There's a section in series.conf with a "if there's another 2.6.31 -stable update, put those patches here" for that. :)
Oh, excellent, thank you. -- Jean Delvare Suse L3 -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
On Thu, Feb 25, 2010 at 04:51:12PM +0100, Jean Delvare wrote:
Le jeudi 25 février 2010 16:30, Jeff Mahoney a écrit :
On 02/25/2010 04:27 AM, Jean Delvare wrote:
Hi Greg,
Le jeudi 25 février 2010 04:52, Greg KH a écrit :
On Wed, Feb 24, 2010 at 09:21:36PM -0600, Larry Finger wrote:
commit b6c3f5be7c6ac3375f44de4545c1ffe216b34022 Author: Larry Finger <Larry.Finger@lwfinger.net> Date: Tue Feb 2 10:08:19 2010 -0600
Cool, thanks, I'll go queue this up tomorrow.
Speaking of this... I have a number of patches I would have sent for inclusion into 2.6.31-stable if that branch was still active. Can I apply these patches to our openSUSE 11.2 kernel right away? Or is there a procedure I should follow?
There's a section in series.conf with a "if there's another 2.6.31 -stable update, put those patches here" for that. :)
Oh, excellent, thank you.
When you do that, cc: me. I have a .31 -stable queue all lined up and ready to go, which includes the patches in this section of the series file already. I'll probably push it out next week just because the list is getting a bit long and it would be nice to flush our patches out to the world for other users of the .31 kernel series. thanks, greg k-h -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
Hi Greg, Le jeudi 25 février 2010 17:11, Greg KH a écrit :
When you do that, cc: me. I have a .31 -stable queue all lined up and ready to go, which includes the patches in this section of the series file already. I'll probably push it out next week just because the list is getting a bit long and it would be nice to flush our patches out to the world for other users of the .31 kernel series.
OK, I am done (3 i2c patches and 4 hwmon patches committed.) -- Jean Delvare Suse L3 -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org
participants (4)
-
Greg KH
-
Jean Delvare
-
Jeff Mahoney
-
Larry Finger