Bug 4911

Summary: conect / disconnect after pm suspen kernel crash with broadcom wl
Product: Fedora Reporter: Suhan A <sandi_ro>
Component: broadcom-wlAssignee: NVieville <nicolas.vieville>
Status: RESOLVED EOL    
Severity: normal CC: leigh123linux, sandi_ro
Priority: P1    
Version: f28   
Hardware: x86_64   
OS: GNU/Linux   
namespace:

Description Suhan A 2018-05-17 18:38:14 CEST
Hi , 
I reported this to fedora initially and they send me here . See initial comments:
https://bugzilla.redhat.com/show_bug.cgi?id=1542860


Crash occurs when connecting-> disconnecting ->
connecting wifi from kde plasma network manager applet , after resuming from
standby.


# uname -a
Linux dell4700 4.16.7-300.fc28.x86_64 #1 SMP Wed May 2 20:09:13 UTC 2018 x86_64
x86_64 x86_64 GNU/Linux

lspci -v :


03:00.0 Network controller: Broadcom Limited BCM43228 802.11a/b/g/n
        Subsystem: Dell Device 0014
        Flags: bus master, fast devsel, latency 0, IRQ 17
        Memory at f7d00000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: [40] Power Management version 3
        Capabilities: [58] Vendor Specific Information: Len=78 <?>
        Capabilities: [48] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [d0] Express Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [13c] Virtual Channel
        Capabilities: [160] Device Serial Number 00-00-dc-ff-ff-23-0c-84
        Capabilities: [16c] Power Budgeting <?>
        Kernel driver in use: wl
        Kernel modules: bcma, wl


kmod-wl-4.16.8-300.fc28.x86_64-6.30.223.271-18.fc28.x86_64

modinfo wl
filename:      /lib/modules/4.16.7-300.fc28.x86_64/extra/wl/wl.ko
license:        MIXED/Proprietary
alias:          pci:v*d*sv*sd*bc02sc80i*
depends:        cfg80211
retpoline:      Y
name:          wl
vermagic:      4.16.7-300.fc28.x86_64 SMP mod_unload
parm:          passivemode:int
parm:          wl_txq_thresh:int
parm:          oneonly:int
parm:          piomode:int
parm:          instance_base:int
parm:          nompc:int
parm:          intf_name:string


rpm -qa | grep NetworkManager
NetworkManager-openvpn-1.8.2-1.fc28.x86_64
NetworkManager-iodine-gnome-1.2.0-6.fc28.x86_64
NetworkManager-openconnect-gnome-1.2.4-9.fc28.x86_64
NetworkManager-glib-1.10.6-3.fc28.x86_64
NetworkManager-iodine-1.2.0-6.fc28.x86_64
NetworkManager-team-1.10.6-3.fc28.x86_64
NetworkManager-wwan-1.10.6-3.fc28.x86_64
NetworkManager-vpnc-gnome-1.2.4-7.fc28.x86_64
NetworkManager-libnm-1.10.6-3.fc28.x86_64
NetworkManager-libreswan-gnome-1.2.4-6.fc28.x86_64
NetworkManager-pptp-1.2.6-1.fc28.x86_64
NetworkManager-1.10.6-3.fc28.x86_64
NetworkManager-openvpn-gnome-1.8.2-1.fc28.x86_64
NetworkManager-bluetooth-1.10.6-3.fc28.x86_64
NetworkManager-wifi-1.10.6-3.fc28.x86_64
NetworkManager-l2tp-gnome-1.2.10-1.fc28.x86_64
NetworkManager-libreswan-1.2.4-6.fc28.x86_64
NetworkManager-pptp-gnome-1.2.6-1.fc28.x86_64
NetworkManager-config-connectivity-fedora-1.10.6-3.fc28.noarch
NetworkManager-l2tp-1.2.10-1.fc28.x86_64
NetworkManager-vpnc-1.2.4-7.fc28.x86_64
NetworkManager-adsl-1.10.6-3.fc28.x86_64
NetworkManager-openconnect-1.2.4-9.fc28.x86_64


rpm -qa | grep supplicant
wpa_supplicant-gui-2.6-15.fc28.x86_64
wpa_supplicant-2.6-15.fc28.x86_64

=========================START stack trace ======================
May 16 15:46:01 dell4700 wpa_supplicant[1153]: wlp3s0: Trying to associate with
70:8b:cd:c7:1c:8c (SSID='aaaavvv2' freq=5220 MHz)
May 16 15:46:01 dell4700 wpa_supplicant[1153]: wlp3s0: CTRL-EVENT-DISCONNECTED
bssid=70:8b:cd:c7:1c:8c reason=0
May 16 15:46:01 dell4700 wpa_supplicant[1153]: wlp3s0: CTRL-EVENT-REGDOM-CHANGE
init=CORE type=WORLD
May 16 15:46:01 dell4700 NetworkManager[1045]: <info>  [1526474761.3701] device
(wlp3s0): supplicant interface state: inactive -> associating
May 16 15:46:01 dell4700 NetworkManager[1045]: <info>  [1526474761.3745] device
(wlp3s0): supplicant interface state: associating -> disconnected
May 16 15:46:01 dell4700 wpa_supplicant[1153]: wlp3s0: CTRL-EVENT-SCAN-FAILED
ret=-22 retry=1
May 16 15:46:01 dell4700 wpa_supplicant[1153]: wlp3s0: CTRL-EVENT-REGDOM-CHANGE
init=BEACON_HINT type=UNKNOWN
May 16 15:46:01 dell4700 kernel: WARNING: CPU: 6 PID: 4086 at
net/wireless/sme.c:752 __cfg80211_connect_result+0x363/0x390 [cfg80211]
May 16 15:46:01 dell4700 kernel: Modules linked in: fuse tun ipt_MASQUERADE
nf_nat_masquerade_ipv4 nf_conntrack_netlink xt_addrtype br_netfilter overlay
ip6t_rpfilter ip6t_REJECT nf_reject_ipv6 xt_conntrack ip_set nfnetlink
ebtable_nat ebtable_broute bridge stp llc ip6table_nat nf_conntrack_ipv6
nf_defrag_ipv6 nf_nat_ipv6 ip6table_mangle ip6table_raw ip6table_security
iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack
iptable_mangle iptable_raw iptable_security ebtable_filter ebtables
ip6table_filter ip6_tables sunrpc vfat fat xfs libcrc32c intel_rapl
x86_pkg_temp_thermal intel_powerclamp coretemp uvcvideo videobuf2_vmalloc
videobuf2_memops videobuf2_v4l2 videobuf2_common kvm_intel videodev wl(POE) kvm
media irqbypass iTCO_wdt dell_laptop mei_wdt ppdev dell_wmi iTCO_vendor_support
dell_smbios
May 16 15:46:01 dell4700 kernel: snd_hda_codec_idt snd_hda_codec_generic
snd_hda_codec_hdmi crct10dif_pclmul sparse_keymap wmi_bmof dell_wmi_descriptor
dcdbas crc32_pclmul snd_hda_intel dell_smm_hwmon snd_hda_codec
ghash_clmulni_intel intel_cstate snd_hda_core cfg80211 snd_hwdep snd_seq
intel_uncore snd_seq_device intel_rapl_perf snd_pcm joydev mei_me snd_timer
parport_pc parport snd mei video lpc_ich soundcore i2c_i801 shpchp dell_rbtn
wmi dell_smo8800 rfkill vboxpci(OE) vboxnetadp(OE) vboxnetflt(OE) vboxdrv(OE)
amdgpu chash gpu_sched radeon i2c_algo_bit drm_kms_helper sdhci_pci ttm cqhci
firewire_ohci sdhci drm e1000e mmc_core crc32c_intel serio_raw firewire_core
ptp crc_itu_t pps_core
May 16 15:46:01 dell4700 kernel: CPU: 6 PID: 4086 Comm: kworker/u16:2 Tainted:
P          OE    4.16.7-300.fc28.x86_64 #1
May 16 15:46:01 dell4700 kernel: Hardware name: Dell Inc. Precision
M4700/082H3V, BIOS A17 05/09/2017
May 16 15:46:01 dell4700 kernel: Workqueue: cfg80211 cfg80211_event_work
[cfg80211]
May 16 15:46:01 dell4700 kernel: RIP:
0010:__cfg80211_connect_result+0x363/0x390 [cfg80211]
May 16 15:46:01 dell4700 kernel: RSP: 0018:ffff9d550ecebdd0 EFLAGS: 00010246
May 16 15:46:01 dell4700 kernel: RAX: 0000000000000000 RBX: ffff911c07eca400
RCX: 0000000000006c0a
May 16 15:46:01 dell4700 kernel: RDX: 0000000000000002 RSI: 00000000fffffe01
RDI: ffffffffc09c2125
May 16 15:46:01 dell4700 kernel: RBP: ffff9d550ecebe20 R08: 0000000000000000
R09: 0000000000000000
May 16 15:46:01 dell4700 kernel: R10: ffff911c07f43000 R11: ffff911c07f43000
R12: ffff911617617a18
May 16 15:46:01 dell4700 kernel: R13: ffff911bfe3f3000 R14: ffff9d550ecebdd0
R15: dead000000000100
May 16 15:46:01 dell4700 kernel: FS:  0000000000000000(0000)
GS:ffff911c2dd80000(0000) knlGS:0000000000000000
May 16 15:46:01 dell4700 kernel: CS:  0010 DS: 0000 ES: 0000 CR0:
0000000080050033
May 16 15:46:01 dell4700 kernel: CR2: 000018db9510f000 CR3: 00000005f820a006
CR4: 00000000001606e0
May 16 15:46:01 dell4700 kernel: Call Trace:
May 16 15:46:01 dell4700 kernel: ? _cond_resched+0x15/0x30
May 16 15:46:01 dell4700 kernel: ? cfg80211_process_wdev_events+0x129/0x190
[cfg80211]
May 16 15:46:01 dell4700 kernel: cfg80211_process_wdev_events+0x129/0x190
[cfg80211]
May 16 15:46:01 dell4700 kernel: cfg80211_process_rdev_events+0x32/0x70
[cfg80211]
May 16 15:46:01 dell4700 kernel: cfg80211_event_work+0x1a/0x20 [cfg80211]
May 16 15:46:01 dell4700 kernel: process_one_work+0x187/0x340
May 16 15:46:01 dell4700 kernel: worker_thread+0x2e/0x380
May 16 15:46:01 dell4700 kernel: ? pwq_unbound_release_workfn+0xd0/0xd0
May 16 15:46:01 dell4700 kernel: kthread+0x112/0x130
May 16 15:46:01 dell4700 kernel: ? kthread_create_worker_on_cpu+0x70/0x70
May 16 15:46:01 dell4700 kernel: ret_from_fork+0x35/0x40
May 16 15:46:01 dell4700 kernel: Code: ff 5a 49 89 44 24 10 48 85 c0 0f 84 d1
fd ff ff f0 ff 40 e8 e9 c8 fd ff ff 0f 0b 48 8b 76 10 e8 b4 9e fd ff e9 7a fe
ff ff 0f 0b <0f> 0b e9 71 fe ff ff 0f 0b e9 c7 fd ff ff 0f 0b 0f 0b eb a1 0f
May 16 15:46:01 dell4700 kernel: ---[ end trace 1046e3bfd2126216 ]
===============================================
Comment 1 NVieville 2018-05-17 19:39:02 CEST
Hello,

Thanks for reporting this issue.

In order to try to determine what the possible reasons of your issue are, I wonder if you could please provide (by adding an attachment if needed) the result of the command lines below typed in a root console (using sudo may be requested) just after you log in:

rfkill list
dmidecode -t 1

For the last one (dmidecode) remove all personal information (serial number,
UUID, etc), just keep the necessary things that can identify your laptop
manufacturer, model, family, etc.

In order to deactivate the power management of your Broadcom wireless device, maybe you should try, as a workaround, the command line below:

iwconfig wlp3s0 power off

This workaround is a bit more improved in:

https://ask.fedoraproject.org/en/question/8168/proper-disabling-of-wifi-power-management/?answer=99609#post-id-99609

But if iwconfig show that by default power is off for this device, the previous advice won't be probably of some help.

Some suggests to manually hardware turn off this wireless device before going to standby state, and to manually hardware turn it on after resuming from standby (I know that's not the way it is supposed to work). 

Please, I would be graceful if you could provide any feedback about this issue and your attempt to fix it. Feel free to make any comment about this subject.

Cordially,


-- 
NVieville
Comment 2 Suhan A 2018-05-18 18:26:15 CEST
Hi , 

I attach the results:

[root@dell4700 asuhan]# rfkill list
1: dell-wifi: Wireless LAN
        Soft blocked: no
        Hard blocked: no
2: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no


dmidecode -t 1
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.

Handle 0x0001, DMI type 1, 27 bytes
System Information
        Manufacturer: Dell Inc.
        Product Name: Precision M4700
        Version: 01
        Serial Number: <removed>
        UUID: <removed>
        Wake-up Type: Power Switch
        SKU Number: Precision M4700
        Family: Not Specified

After upgrading to fedora 28 this problem became more frequent , (probably new kernel changes ) fedora 26, and fedora 27 was barely noticeable.
Comment 3 NVieville 2018-05-18 19:38:33 CEST
Hello,

Thanks for your feedback. Nothing jumped to my eyes in your configuration that can explain the issue.

Did you checked the state of power management with the iwconfig command?

And in case it was activated, did you tried tried to disable it with the same command (example in my previous message)? If yes, what was the result?

Did you tried to disable manually your device before going to standby state your machine, and re-enable manually your device once resumed?

In case this is not working, does unloading the module device and reloading it works once resumed (device not blocked):

#modprobe -r wl ; sleep 2 ; modprobe wl

Feel free to make any comments about this issue.

Cordially,


-- 
NVieville
Comment 4 leigh scott 2019-05-29 11:30:53 CEST
Fedora 28 changed to end-of-life (EOL) status on 2019-05-28. Fedora 28 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.