Bug 248490 - RPi4: gpioled witness warnings and a LOR (exclusive sleep mutex LED mtx)
Summary: RPi4: gpioled witness warnings and a LOR (exclusive sleep mutex LED mtx)
Status: Closed Overcome By Events
Alias: None
Product: Base System
Classification: Unclassified
Component: arm (show other bugs)
Version: CURRENT
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-arm (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-08-05 19:58 UTC by Gordon Bergling
Modified: 2023-11-16 11:33 UTC (History)
0 users

See Also:


Attachments
RPi4 r363886 dmesg output (16.75 KB, text/plain)
2020-08-05 19:58 UTC, Gordon Bergling
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gordon Bergling freebsd_committer freebsd_triage 2020-08-05 19:58:01 UTC
Created attachment 217037 [details]
RPi4 r363886 dmesg output

On a recent -CURRENT (r363886) I get the following LOR for the LED mtx which is followed by a few "non-sleepable locks held" on uma_zalloc_debug. A full dmesg is attached.

gpioled0: <GPIO LEDs> on ofwbus0
lock order reversal: (sleepable after non-sleepable)
 1st 0xffff000000b28258 LED mtx (LED mtx) @ /tank/nfs_public/tiny/src/sys/dev/led/led.c:298
 2nd 0xfffffd0001204410 Raspberry Pi firmware gpio (Raspberry Pi firmware gpio) @ /tank/nfs_public/tiny/src/sys/arm/broadcom/bcm2835/raspberrypi_gpio.c:252
stack backtrace:
#0 0xffff000000492838 at witness_debugger+0x64
#1 0xffff000000431c20 at _sx_xlock+0x7c
#2 0xffff000000702c64 at rpi_fw_gpio_pin_set+0xe8
#3 0xffff0000001d3fc4 at led_create_state+0x154
#4 0xffff0000001a5810 at gpioled_attach+0x290
#5 0xffff00000045fda8 at device_attach+0x400
#6 0xffff00000045f910 at device_probe_and_attach+0x7c
#7 0xffff000000461af4 at bus_generic_new_pass+0xf8
#8 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#9 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#10 0xffff00000045cee4 at bus_set_pass+0x4c
#11 0xffff0000003bac88 at mi_startup+0x12c
uma_zalloc_debug: zone "64" with the following non-sleepable locks held:
exclusive sleep mutex LED mtx (LED mtx) r = 0 (0xffff000000b28258) locked @ /tank/nfs_public/tiny/src/sys/dev/led/led.c:298
stack backtrace:
#0 0xffff000000492838 at witness_debugger+0x64
#1 0xffff000000493848 at witness_warn+0x3f0
#2 0xffff000000699564 at uma_zalloc_debug+0x2c
#3 0xffff000000698fcc at uma_zalloc_arg+0x2c
#4 0xffff0000003fefcc at malloc+0x9c
#5 0xffff0000006f7df4 at bcm2835_firmware_property+0x44
#6 0xffff000000702c7c at rpi_fw_gpio_pin_set+0x100
#7 0xffff0000001d3fc4 at led_create_state+0x154
#8 0xffff0000001a5810 at gpioled_attach+0x290
#9 0xffff00000045fda8 at device_attach+0x400
#10 0xffff00000045f910 at device_probe_and_attach+0x7c
#11 0xffff000000461af4 at bus_generic_new_pass+0xf8
#12 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#13 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#14 0xffff00000045cee4 at bus_set_pass+0x4c
#15 0xffff0000003bac88 at mi_startup+0x12c
uma_zalloc_debug: zone "16" with the following non-sleepable locks held:
exclusive sleep mutex LED mtx (LED mtx) r = 0 (0xffff000000b28258) locked @ /tank/nfs_public/tiny/src/sys/dev/led/led.c:298
stack backtrace:
#0 0xffff000000492838 at witness_debugger+0x64
#1 0xffff000000493848 at witness_warn+0x3f0
#2 0xffff000000699564 at uma_zalloc_debug+0x2c
#3 0xffff000000698fcc at uma_zalloc_arg+0x2c
#4 0xffff0000003fefcc at malloc+0x9c
#5 0xffff00000070fad8 at bounce_bus_dmamem_alloc+0x4c
#6 0xffff0000006fa948 at bcm2835_mbox_property+0xdc
#7 0xffff0000006f7e28 at bcm2835_firmware_property+0x78
#8 0xffff000000702c7c at rpi_fw_gpio_pin_set+0x100
#9 0xffff0000001d3fc4 at led_create_state+0x154
#10 0xffff0000001a5810 at gpioled_attach+0x290
#11 0xffff00000045fda8 at device_attach+0x400
#12 0xffff00000045f910 at device_probe_and_attach+0x7c
#13 0xffff000000461af4 at bus_generic_new_pass+0xf8
#14 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#15 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#16 0xffff00000045cee4 at bus_set_pass+0x4c
#17 0xffff0000003bac88 at mi_startup+0x12c
uma_zalloc_debug: zone "128" with the following non-sleepable locks held:
exclusive sleep mutex LED mtx (LED mtx) r = 0 (0xffff000000b28258) locked @ /tank/nfs_public/tiny/src/sys/dev/led/led.c:298
stack backtrace:
#0 0xffff000000492838 at witness_debugger+0x64
#1 0xffff000000493848 at witness_warn+0x3f0
#2 0xffff000000699564 at uma_zalloc_debug+0x2c
#3 0xffff000000698fcc at uma_zalloc_arg+0x2c
#4 0xffff0000003fefcc at malloc+0x9c
#5 0xffff00000070fb18 at bounce_bus_dmamem_alloc+0x8c
#6 0xffff0000006fa948 at bcm2835_mbox_property+0xdc
#7 0xffff0000006f7e28 at bcm2835_firmware_property+0x78
#8 0xffff000000702c7c at rpi_fw_gpio_pin_set+0x100
#9 0xffff0000001d3fc4 at led_create_state+0x154
#10 0xffff0000001a5810 at gpioled_attach+0x290
#11 0xffff00000045fda8 at device_attach+0x400
#12 0xffff00000045f910 at device_probe_and_attach+0x7c
#13 0xffff000000461af4 at bus_generic_new_pass+0xf8
#14 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#15 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#16 0xffff00000045cee4 at bus_set_pass+0x4c
#17 0xffff0000003bac88 at mi_startup+0x12c
uma_zalloc_debug: zone "32" with the following non-sleepable locks held:
exclusive sleep mutex LED mtx (LED mtx) r = 0 (0xffff000000b28258) locked @ /tank/nfs_public/tiny/src/sys/dev/led/led.c:298
stack backtrace:
#0 0xffff000000492838 at witness_debugger+0x64
#1 0xffff000000493848 at witness_warn+0x3f0
#2 0xffff000000699564 at uma_zalloc_debug+0x2c
#3 0xffff000000698fcc at uma_zalloc_arg+0x2c
#4 0xffff0000003fefcc at malloc+0x9c
#5 0xffff00000070fb7c at bounce_bus_dmamem_alloc+0xf0
#6 0xffff0000006fa948 at bcm2835_mbox_property+0xdc
#7 0xffff0000006f7e28 at bcm2835_firmware_property+0x78
#8 0xffff000000702c7c at rpi_fw_gpio_pin_set+0x100
#9 0xffff0000001d3fc4 at led_create_state+0x154
#10 0xffff0000001a5810 at gpioled_attach+0x290
#11 0xffff00000045fda8 at device_attach+0x400
#12 0xffff00000045f910 at device_probe_and_attach+0x7c
#13 0xffff000000461af4 at bus_generic_new_pass+0xf8
#14 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#15 0xffff000000461aa4 at bus_generic_new_pass+0xa8
#16 0xffff00000045cee4 at bus_set_pass+0x4c
#17 0xffff0000003bac88 at mi_startup+0x12c