PINE64

Full Version: alsactl triggers kernel warning
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I just noticed that alsactl triggers a kernel warning whenever I try to use it with the sunxi audiocodec modules loaded:

Code:
[  264.405729] ------------[ cut here ]------------
[  264.410878] WARNING: at drivers/clk/clk.c:781 __clk_disable+0x40/0x78()
[  264.418191] Modules linked in: sunxi_i2s sunxi_codec sunxi_sndcodec bnep hci_uart bluetooth vfe_v4l2 videobuf2_dma_contig videobuf2_memops mali(O) ir_lirc_codec lirc_dev ir_sony_decoder ir_sanyo_decoder ir_jvc_decoder ir_rc6_decoder videobuf2_core ir_rc5_decoder vfe_io ir_nec_decoder ir_mce_kbd_decoder ss sunxi_ir_rx cedar_ve 8723bs cfg80211
[  264.451824] CPU: 3 PID: 1821 Comm: alsactl Tainted: G           O 3.10.102-0-pine64-longsleep #7
[  264.461540] Call trace:
[  264.464254] [<ffffffc000088388>] dump_backtrace+0x0/0x118
[  264.470229] [<ffffffc0000884c4>] show_stack+0x24/0x30
[  264.475824] [<ffffffc00070e6a0>] dump_stack+0x20/0x28
[  264.481416] [<ffffffc0000addb8>] warn_slowpath_common+0x80/0xa8
[  264.487967] [<ffffffc0000adf1c>] warn_slowpath_null+0x3c/0x4c
[  264.494325] [<ffffffc0005a3fa4>] __clk_disable+0x40/0x78
[  264.500202] [<ffffffc0005a4004>] clk_disable+0x28/0x3c
[  264.505896] [<ffffffbffc5147e4>] set_src_function+0x100/0x190 [sunxi_codec]
[  264.513604] [<ffffffc0005b62d8>] snd_ctl_elem_write+0xd4/0x148
[  264.520060] [<ffffffc0005b7dc0>] snd_ctl_ioctl+0x3b4/0x708
[  264.526132] [<ffffffc0001c0074>] vfs_ioctl+0x4c/0x6c
[  264.531625] [<ffffffc0001c09fc>] do_vfs_ioctl+0x4a4/0x538
[  264.537597] [<ffffffc0001c0af8>] SyS_ioctl+0x68/0x98
[  264.543086] ---[ end trace 072b838cd4b4f7fb ]---
[  264.548340] ------------[ cut here ]------------
[  264.554787] WARNING: at drivers/clk/clk.c:690 __clk_unprepare+0x34/0x84()
[  264.562369] Modules linked in: sunxi_i2s sunxi_codec sunxi_sndcodec bnep hci_uart bluetooth vfe_v4l2 videobuf2_dma_contig videobuf2_memops mali(O) ir_lirc_codec lirc_dev ir_sony_decoder ir_sanyo_decoder ir_jvc_decoder ir_rc6_decoder videobuf2_core ir_rc5_decoder vfe_io ir_nec_decoder ir_mce_kbd_decoder ss sunxi_ir_rx cedar_ve 8723bs cfg80211
[  264.596282] CPU: 3 PID: 1821 Comm: alsactl Tainted: G        W  O 3.10.102-0-pine64-longsleep #7
[  264.606027] Call trace:
[  264.609584] [<ffffffc000088388>] dump_backtrace+0x0/0x118
[  264.615564] [<ffffffc0000884c4>] show_stack+0x24/0x30
[  264.621206] [<ffffffc00070e6a0>] dump_stack+0x20/0x28
[  264.627014] [<ffffffc0000addb8>] warn_slowpath_common+0x80/0xa8
[  264.633613] [<ffffffc0000adf1c>] warn_slowpath_null+0x3c/0x4c
[  264.640173] [<ffffffc0005a4a5c>] __clk_unprepare+0x34/0x84
[  264.646245] [<ffffffc0005a4ad0>] clk_unprepare+0x24/0x34
[  264.652171] [<ffffffbffc5147ec>] set_src_function+0x108/0x190 [sunxi_codec]
[  264.660088] [<ffffffc0005b62d8>] snd_ctl_elem_write+0xd4/0x148
[  264.666546] [<ffffffc0005b7dc0>] snd_ctl_ioctl+0x3b4/0x708
[  264.672664] [<ffffffc0001c0074>] vfs_ioctl+0x4c/0x6c
[  264.678366] [<ffffffc0001c09fc>] do_vfs_ioctl+0x4a4/0x538
[  264.684343] [<ffffffc0001c0af8>] SyS_ioctl+0x68/0x98
[  264.689874] ---[ end trace 072b838cd4b4f7fc ]---
debian@pine64:~$ lsmod
Module                  Size  Used by
sunxi_i2s              13081  2
sunxi_codec            63040  1
sunxi_sndcodec         17150  1
bnep                   17511  2
hci_uart               27742  1
bluetooth             195943  21 bnep,hci_uart
vfe_v4l2              747618  0
videobuf2_dma_contig    17668  1 vfe_v4l2
videobuf2_memops       12546  1 videobuf2_dma_contig
mali                  199851  0
ir_lirc_codec          12756  0
lirc_dev               17032  1 ir_lirc_codec
ir_sony_decoder        12489  0
ir_sanyo_decoder       12491  0
ir_jvc_decoder         12487  0
ir_rc6_decoder         12520  0
videobuf2_core         30952  1 vfe_v4l2
ir_rc5_decoder         12487  0
vfe_io                 34085  1 vfe_v4l2
ir_nec_decoder         12487  0
ir_mce_kbd_decoder     12628  0
ss                     33083  0
sunxi_ir_rx            12902  0
cedar_ve               17368  0
8723bs               1365012  0
cfg80211              374207  1 8723bs


Is that something that can be safely ignored? Trying to look at the referenced code in /drivers/clk/clk.c now....
That same message appears in my dmesg several times during bootup. I've been ignoring it because my sound works just fine, except that whenever sound starts playing, my screen blanks out for 3-4 seconds and then comes back. I suspect that is somehow related to my HDMI>VGA adapter though.
I looked into /drivers/clk/clk.c ....

Apparently clk_disable() gets called with no cloks enabled:


Code:
781: if (WARN_ON(clk->enable_count==0)) return;

and subsequently clk_unprepare() returns similar to that:

Code:
690: if (WARN_ON(clk->prepare_count ==0) return;

so basically clk_disable() gets called for some reason and there is no clock to disable, so this is maybe just a glitch or is something broken?