Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Frequent loss of bluetooth and occasional complete lock up after leaving the computer idle for a while #344

Open
wvdschel opened this issue Nov 12, 2024 · 4 comments

Comments

@wvdschel
Copy link

wvdschel commented Nov 12, 2024

Running: Fedora Asahi Remix 40 (kernel 6.11.6-401.asahi.fc41.aarch64+16k)

Whenever I leave the computer for a while (getting a coffee, going to a meeting, etc) I frequently come back and find my bluetooth keyboard and mouse not working, as well as very poor WiFi connectivity.

If I don't reboot, this is often times followed by a complete lock up after a few minutes.

I don't have my laptop go to sleep when idle, so I doubt it's suspend & resume related, and have disabled DPMS for my displays (as I've found HMDI out to be rather flaky, at first I suspected the lockups might be related to display out). I have never experienced this behaviour while working at the computer (though I've only got this laptop since last Friday, so I can't say with certainty it only happens after being idle).

A couple of times I found a very similar error message in the kernel log:

[ 6945.669101] ieee80211 phy0: brcmf_set_key_mgmt: get okc_enable failed (-52)
[ 6945.673109] ieee80211 phy0: brcmf_c_set_joinpref_default: Set join_pref error (-52)
[ 7703.822292] Unable to handle kernel paging request at virtual address ffff8945d1a58008
[ 7703.822305] Mem abort info:
[ 7703.822307]   ESR = 0x0000000096000005
[ 7703.822310]   EC = 0x25: DABT (current EL), IL = 32 bits
[ 7703.822315]   SET = 0, FnV = 0
[ 7703.822317]   EA = 0, S1PTW = 0
[ 7703.822319]   FSC = 0x05: level 1 translation fault
[ 7703.822322] Data abort info:
[ 7703.822323]   ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000
[ 7703.822326]   CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[ 7703.822329]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ 7703.822332] swapper pgtable: 16k pages, 48-bit VAs, pgdp=00000107c1790000
[ 7703.822337] [ffff8945d1a58008] pgd=10000107c33d8003, p4d=10000107c33d8003, pud=0000000000000000
[ 7703.822346] Internal error: Oops: 0000000096000005 [#1] SMP
[ 7703.822352] Modules linked in: overlay uas usb_storage tun onboard_usb_dev hid_logitech_hidpp uhid snd_seq_dummy rfcomm snd_hrtimer snd_seq snd_seq_device bnep sunrpc brcmfmac_wcc nf_conntrack_netbios_ns nf_conntrack_broadcast nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct nft_chain_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 ip_set nf_tables qrtr binfmt_misc brcmfmac brcmutil cfg80211 hci_bcm4377 bluetooth apple_isp ofpart snd_soc_macaudio videobuf2_dma_sg rfkill spi_nor snd_soc_apple_mca snd_soc_tas2764 snd_soc_cs42l84 videobuf2_memops videobuf2_v4l2 mtd videodev snd_soc_core snd_compress videobuf2_common ac97_bus mc macsmc_hid leds_pwm apple_soc_cpufreq joydev loop dm_multipath nfnetlink zram sdhci_pci cqhci sdhci hid_apple nvmem_spmi_mfd tps6598x dockchannel_hid macsmc_reboot rtc_macsmc gpio_macsmc simple_mfd_spmi macsmc_hwmon macsmc_power appledrm crct10dif_ce polyval_ce polyval_generic apple_dcp ghash_ce asahi dwc3 sha3_ce drm_dma_helper
[ 7703.822453]  sha512_ce ulpi snd_pcm_dmaengine sha512_arm64 i2c_pasemi_platform udc_core spi_apple apple_admac apple_sio pwm_apple i2c_pasemi_core snd_pcm macsmc_rtkit apple_dockchannel apple_rtkit_helper nvmem_apple_efuses apple_wdt macsmc pinctrl_apple_gpio spmi_apple_controller snd_timer phy_apple_atc snd clk_apple_nco typec mux_apple_display_crossbar apple_dart mux_core soundcore xhci_plat_hcd vfat fat nvme_apple apple_sart nvme_core nvme_auth scsi_dh_rdac scsi_dh_emc scsi_dh_alua ip6_tables ip_tables fuse i2c_dev
[ 7703.822507] CPU: 7 UID: 0 PID: 1201214 Comm: kworker/7:2 Tainted: G S                 6.11.6-401.asahi.fc41.aarch64+16k #1
[ 7703.822515] Tainted: [S]=CPU_OUT_OF_SPEC
[ 7703.822518] Hardware name: Apple MacBook Pro (16-inch, M2 Pro, 2023) (DT)
[ 7703.822521] Workqueue: events hidinput_led_worker
[ 7703.822534] pstate: 81400009 (Nzcv daif +PAN -UAO -TCO +DIT -SSBS BTYPE=--)
[ 7703.822540] pc : __srcu_read_lock+0x48/0x98
[ 7703.822551] lr : dispatch_hid_bpf_output_report+0x70/0x118
[ 7703.822562] sp : ffff8000a4757ca0
[ 7703.822564] x29: ffff8000a4757ca0 x28: 0000000000000000 x27: 0000000000000000
[ 7703.822570] x26: 0000000000000000 x25: 0000000000000000 x24: ffff36200a0d2405
[ 7703.822576] x23: ffff362059d03e40 x22: 0000000000000000 x21: ffff362059d03e10
[ 7703.822581] x20: ffff362059d02000 x19: 0000000000000001 x18: 0000000000000000
[ 7703.822585] x17: 2e373139303a4535 x16: 34303a353030302f x15: 646968752f637369
[ 7703.822590] x14: 0000000000000000 x13: 0000000000000030 x12: 0101010101010101
[ 7703.822595] x11: 7f7f7f7f7f7f7f7f x10: fefefefefefefeff x9 : fffface1f801bf48
[ 7703.822601] x8 : ffff3620156c1231 x7 : 0000000000001e10 x6 : 0000000000001e40
[ 7703.822606] x5 : ffff362455d1b600 x4 : 0000000000000000 x3 : 0000000000000000
[ 7703.822611] x2 : 0000000000000001 x1 : 0000000000000008 x0 : ffff8945d1a58008
[ 7703.822615] Call trace:
[ 7703.822618]  __srcu_read_lock+0x48/0x98
[ 7703.822626]  dispatch_hid_bpf_output_report+0x70/0x118
[ 7703.822636]  hid_hw_output_report+0x60/0xd0
[ 7703.822641]  hidinput_led_worker+0xb0/0x110
[ 7703.822646]  process_one_work+0x180/0x420
[ 7703.822656]  worker_thread+0x25c/0x380
[ 7703.822665]  kthread+0xf4/0x110
[ 7703.822673]  ret_from_fork+0x10/0x20
[ 7703.822681] Code: d53cd040 8b020021 d2800022 8b000020 (f822001f) 
[ 7703.822685] ---[ end trace 0000000000000000 ]---
[ 7703.822688] note: kworker/7:2[1201214] exited with preempt_count 1
@JaviLib
Copy link

JaviLib commented Dec 21, 2024

It's probably related to #352 but now it is even worse in F41, making the system totally unusable intermediately after the keyboard dicconnect.
The problem is related to disconnections of a bluetooth keyboard. It happens to you because your keyboard disconnects itself after a while to save power, and it is not a supend/hibernation of the mac itself issue.

@marcan
Copy link
Member

marcan commented Dec 21, 2024

This is clearly an upstream bug, probably a regression since the hid-bpf stuff is relatively new. I would suggest reporting upstream.

@marcan
Copy link
Member

marcan commented Dec 21, 2024

I suspect it's also the same underlying cause as this syzbot report.

@JaviLib
Copy link

JaviLib commented Dec 21, 2024

This is clearly an upstream bug, probably a regression since the hid-bpf stuff is relatively new. I would suggest reporting upstream.

I'm not in the mailing list, would you mind report it yourself, specially considering you also have the technical knowledge to help (I don't). Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants