Slow and unstable Wifi based on b43

Hi!
I’m strugeling with my wifi. After upgrading from OpenSUSE 13.2 to Tumbleweed, my wifi has become very unstable.
I was using Broadcom-wl but in Tumbletweed it seems my wifi-card is not anymore supported in Broadcom-wl. I use b43 and it do work, but is very unstable. Sometimes it works very good, but sometimes its slow or stop completly.

My Wifi-card:

lspci
04:00.0 Network controller: Broadcom Limited BCM43228 802.11a/b/g/n

Hwinfo:

71: None 00.0: 10701 Ethernet
  [Created at net.126]
  Unique ID: xR98.ndpeucax6V1
  Parent ID: OYri.Rt0ttKbFaa4
  SysFS ID: /class/net/wlp4s0b1
  SysFS Device Link: /devices/pci0000:00/0000:00:1c.1/0000:04:00.0/bcma0:1
  Hardware Class: network interface
  Model: "Ethernet network interface"
  Driver: "b43"
  Driver Modules: "b43", "b43"
  Device File: wlp4s0b1
  HW Address: 18:cf:5e:81:e0:a1
  Permanent HW Address: 18:cf:5e:81:e0:a1
  Link detected: yes
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #24 (WLAN controller)


System:

uname -a
Linux linux-5jug 4.10.0-rc3-2.gabd21b1-default #1 SMP PREEMPT Wed Jan 11 12:18:05 UTC 20
17 (abd21b1) x86_64 x86_64 x86_64 GNU/Linux

Is it possible to get Broadcom-wl to work again?`It seems not to be supported in this kernel.

Hi
Grab the broadcom-wl src rpm from packman and rebuild locally (as your user!) and install the rpm and kmp manually.

Am Sun, 15 Jan 2017 15:46:01 GMT
schrieb ronnys <ronnys@no-mx.forums.microfocus.com>:

> was using Broadcom-wl but in Tumbletweed it seems my wifi-card is not
> anymore supported in Broadcom-wl.

This statement does not make real sense as “broadcom-wl” is an external module
and was never part of the mainline kernel, so changing the kernel version
can (and will) not remove support in a part that is outside of it.

So I would suspect you need to find a package matching your kernel version
(Packman might be the first place to search for), install that and switch back
to broadcom-wl.

The only other reason (and I am only guessing) might be, that b43 now supports
your device in the latest kernel and that is preferred over wl.ko from
broadcom-wl.

However, this is could not be the case if one is using the broadcom-wl
packages from packman, as they pull in (as a dependency) a file that blacklists
b43.

AK

Never attribute to malice that which can be adequately explained by stupidity.
(R.J. Hanlon)

For your information, i do have broadcom-wl installed from Packman. b43 is blacklisted so i have to execute

sudo modprobe b43

after reboot.

Only after i execute modprobe b43 i get wifi to work.

Curent version of broadcom-wl:
broadcom-wl-kmp-default - 6.30.223.248_k4.9.0_1-10.37

Hi
So it’s in weak-updates since it doesn’t match the running kernel, plus it’s wl not b43…

For example;


/sbin/lspci -nnk |grep -A3 Network
0c:00.0 Network controller [0280]: Broadcom Corporation BCM43224 802.11a/b/g/n [14e4:4353] (rev 01)
    Subsystem: Dell Wireless 1520 Half-size Mini PCIe Card [1028:000e]
    Kernel driver in use: wl

You are running kernel 4.10.0-rc3, but the broadcom-wl driver you installed is for kernel 4.9.0 (so it isn’t even found).

The current kernel in Tumbleweed is actually 4.9.0, so install it (if it isn’t already) and boot that.

You have to install both packages, broadcom-wl which has inside the Blacklist-File and brodcom-wl-kmp-default, which has inside the Kernel-Package.

But:

uname -a
Linux linux-5jug 4.10.0-rc3-2.gabd21b1-default #1 SMP PREEMPT Wed Jan 11 12:18:05 UTC 20
17 (abd21b1) x86_64 x86_64 x86_64 GNU/Linux

That is not the Tumbleweed Kernel, as you can see:

Curent version of broadcom-wl:
broadcom-wl-kmp-default - 6.30.223.248_k4.9.0_1-10.37

Hi
But it should still work as it will automatically copy to weak-updates (modinfo wl |grep file) and continue to work as best it can (if it can) until an update turns up… OP is modprobing wrong kernel module.

But weak-updates will not symlink it to a major new kernel version (4.9.0 -> 4.10.0), and it likely won’t be compatible anyway.

OP is modprobing wrong kernel module.

AIUI, he is modprobing b43 on purpose because wl doesn’t work (and b43 isn’t loaded automatically because it is blacklisted).

Hi
Ahh ok, that’s why I always rebuild the broadcom-wl from the src rpm locally;


osc build --alternative-project Kernel:HEAD --clean
Building broadcom-wl.spec for standard/x86_64
.....
/data/build-root/home/abuild/rpmbuild/SRPMS/broadcom-wl-6.30.223.248-10.88.src.rpm

/data/build-root/home/abuild/rpmbuild/RPMS/x86_64/broadcom-wl-6.30.223.248-10.88.x86_64.rpm
/data/build-root/home/abuild/rpmbuild/RPMS/x86_64/broadcom-wl-kmp-default-6.30.223.248_k4.10.0_rc3_3.g5e5739e-10.88.x86_64.rpm
.....

So the current packman one builds fine…

What!? How did i get Kernel 4.10? I thought 4.10 is the normal kernel in Tumbleweed. I never installed anything other than what come over zypper update.

What kernel is recommended?

No, Tumbleweed normally only gets stable kernel releases, not RCs.

I never installed anything other than what come over zypper update.

Maybe you added some additional repo in the past?

zypper lr -d

What kernel is recommended?

The standard 4.9.0 kernel from Tumbleweed, I’d say.

PS: to remove kernel 4.10.0-rc3, either use YaST’s “Versions” tab, or specify the exact version to zypper or rpm, something like:

zypper rm kernel-default-4.10.rc3

Just removing the repo will not remove installed packages from it.

But I’d recommend to try to boot 4.9.0 first (you should be able to choose it in “Advanced Options” in the boot menu if it is installed) to see if it actually works… :wink:
There were some problems with 4.9.0 that should be fixed in 4.9.3 which will likely enter Tumbleweed soon. See e.g. 1017783 – Boot issues with Tumbleweed and Kernel 4.9 (booting stops at Loading initial ramdisk; kernel 4.9 does not boot)