[GH-ISSUE #186] Too often error "did not receive last pong from dealer" #120

Closed
opened 2026-02-28 14:25:30 +03:00 by kerem · 35 comments
Owner

Originally created by @neeohw on GitHub (May 7, 2025).
Original GitHub issue: https://github.com/devgianlu/go-librespot/issues/186

I've been wanting to move from librespot-java to go-librespot, but I have to restart the service almost twice a day due to the repeated error "did not receive last pong from dealer".
I just wanted to let you know that for me this library is not usable yet.

I do appreciate your efforts in rewriting it!

I am running it on an Orange Pi 3 LTS.

Originally created by @neeohw on GitHub (May 7, 2025). Original GitHub issue: https://github.com/devgianlu/go-librespot/issues/186 I've been wanting to move from librespot-java to go-librespot, but I have to restart the service almost twice a day due to the repeated error "did not receive last pong from dealer". I just wanted to let you know that for me this library is not usable yet. I do appreciate your efforts in rewriting it! I am running it on an Orange Pi 3 LTS.
kerem 2026-02-28 14:25:30 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@2opremio commented on GitHub (May 26, 2025):

@devgianlu I am having exactly the same problem. I did move to go-librespot from spotifyd but I am now considering to switch back because of this :(

It doesn't happen twice a day but at least once every few days.

<!-- gh-comment-id:2910714434 --> @2opremio commented on GitHub (May 26, 2025): @devgianlu I am having exactly the same problem. I did move to go-librespot from spotifyd but I am now considering to switch back because of this :( It doesn't happen twice a day but at least once every few days.
Author
Owner

@2opremio commented on GitHub (May 26, 2025):

Here are some logs (but they extend back for hours):

May 26 22:28:07 duchamp go-librespot[1170]: time="2025-05-26T22:28:07Z" level=error msg="did not receive last pong from dealer, 89940s passed"
May 26 22:28:07 duchamp go-librespot[1170]: time="2025-05-26T22:28:07Z" level=error msg="did not receive last pong ack from accesspoint, 94572s passed"
May 26 22:28:37 duchamp go-librespot[1170]: time="2025-05-26T22:28:37Z" level=error msg="did not receive last pong from dealer, 89970s passed"
May 26 22:29:07 duchamp go-librespot[1170]: time="2025-05-26T22:29:07Z" level=error msg="did not receive last pong from dealer, 90000s passed"
May 26 22:29:37 duchamp go-librespot[1170]: time="2025-05-26T22:29:37Z" level=error msg="did not receive last pong from dealer, 90030s passed"
May 26 22:30:07 duchamp go-librespot[1170]: time="2025-05-26T22:30:07Z" level=error msg="did not receive last pong from dealer, 90060s passed"
May 26 22:30:07 duchamp go-librespot[1170]: time="2025-05-26T22:30:07Z" level=error msg="did not receive last pong ack from accesspoint, 94692s passed"
May 26 22:30:37 duchamp go-librespot[1170]: time="2025-05-26T22:30:37Z" level=error msg="did not receive last pong from dealer, 90090s passed"
May 26 22:31:07 duchamp go-librespot[1170]: time="2025-05-26T22:31:07Z" level=error msg="did not receive last pong from dealer, 90120s passed"
May 26 22:31:37 duchamp go-librespot[1170]: time="2025-05-26T22:31:37Z" level=error msg="did not receive last pong from dealer, 90150s passed"
May 26 22:32:07 duchamp go-librespot[1170]: time="2025-05-26T22:32:07Z" level=error msg="did not receive last pong from dealer, 90180s passed"
May 26 22:32:07 duchamp go-librespot[1170]: time="2025-05-26T22:32:07Z" level=error msg="did not receive last pong ack from accesspoint, 94812s passed"
May 26 22:32:37 duchamp go-librespot[1170]: time="2025-05-26T22:32:37Z" level=error msg="did not receive last pong from dealer, 90210s passed"
May 26 22:33:07 duchamp go-librespot[1170]: time="2025-05-26T22:33:07Z" level=error msg="did not receive last pong from dealer, 90240s passed"
May 26 22:33:37 duchamp go-librespot[1170]: time="2025-05-26T22:33:37Z" level=error msg="did not receive last pong from dealer, 90270s passed"
May 26 22:34:07 duchamp go-librespot[1170]: time="2025-05-26T22:34:07Z" level=error msg="did not receive last pong ack from accesspoint, 94932s passed"
May 26 22:34:07 duchamp go-librespot[1170]: time="2025-05-26T22:34:07Z" level=error msg="did not receive last pong from dealer, 90300s passed"
May 26 22:34:37 duchamp go-librespot[1170]: time="2025-05-26T22:34:37Z" level=error msg="did not receive last pong from dealer, 90330s passed"
May 26 22:35:07 duchamp go-librespot[1170]: time="2025-05-26T22:35:07Z" level=error msg="did not receive last pong from dealer, 90360s passed"
May 26 22:35:37 duchamp go-librespot[1170]: time="2025-05-26T22:35:37Z" level=error msg="did not receive last pong from dealer, 90390s passed"
May 26 22:36:07 duchamp go-librespot[1170]: time="2025-05-26T22:36:07Z" level=error msg="did not receive last pong from dealer, 90420s passed"
May 26 22:36:07 duchamp go-librespot[1170]: time="2025-05-26T22:36:07Z" level=error msg="did not receive last pong ack from accesspoint, 95052s passed"
May 26 22:36:37 duchamp go-librespot[1170]: time="2025-05-26T22:36:37Z" level=error msg="did not receive last pong from dealer, 90450s passed"
May 26 22:37:07 duchamp go-librespot[1170]: time="2025-05-26T22:37:07Z" level=error msg="did not receive last pong from dealer, 90480s passed"
May 26 22:37:37 duchamp go-librespot[1170]: time="2025-05-26T22:37:37Z" level=error msg="did not receive last pong from dealer, 90510s passed"
May 26 22:38:07 duchamp go-librespot[1170]: time="2025-05-26T22:38:07Z" level=error msg="did not receive last pong ack from accesspoint, 95172s passed"
May 26 22:38:07 duchamp go-librespot[1170]: time="2025-05-26T22:38:07Z" level=error msg="did not receive last pong from dealer, 90540s passed"
May 26 22:38:37 duchamp go-librespot[1170]: time="2025-05-26T22:38:37Z" level=error msg="did not receive last pong from dealer, 90570s passed"
May 26 22:39:07 duchamp go-librespot[1170]: time="2025-05-26T22:39:07Z" level=error msg="did not receive last pong from dealer, 90600s passed"
May 26 22:39:37 duchamp go-librespot[1170]: time="2025-05-26T22:39:37Z" level=error msg="did not receive last pong from dealer, 90630s passed"
May 26 22:40:07 duchamp go-librespot[1170]: time="2025-05-26T22:40:07Z" level=error msg="did not receive last pong from dealer, 90660s passed"
May 26 22:40:07 duchamp go-librespot[1170]: time="2025-05-26T22:40:07Z" level=error msg="did not receive last pong ack from accesspoint, 95292s passed"
<!-- gh-comment-id:2910719255 --> @2opremio commented on GitHub (May 26, 2025): Here are some logs (but they extend back for hours): ``` May 26 22:28:07 duchamp go-librespot[1170]: time="2025-05-26T22:28:07Z" level=error msg="did not receive last pong from dealer, 89940s passed" May 26 22:28:07 duchamp go-librespot[1170]: time="2025-05-26T22:28:07Z" level=error msg="did not receive last pong ack from accesspoint, 94572s passed" May 26 22:28:37 duchamp go-librespot[1170]: time="2025-05-26T22:28:37Z" level=error msg="did not receive last pong from dealer, 89970s passed" May 26 22:29:07 duchamp go-librespot[1170]: time="2025-05-26T22:29:07Z" level=error msg="did not receive last pong from dealer, 90000s passed" May 26 22:29:37 duchamp go-librespot[1170]: time="2025-05-26T22:29:37Z" level=error msg="did not receive last pong from dealer, 90030s passed" May 26 22:30:07 duchamp go-librespot[1170]: time="2025-05-26T22:30:07Z" level=error msg="did not receive last pong from dealer, 90060s passed" May 26 22:30:07 duchamp go-librespot[1170]: time="2025-05-26T22:30:07Z" level=error msg="did not receive last pong ack from accesspoint, 94692s passed" May 26 22:30:37 duchamp go-librespot[1170]: time="2025-05-26T22:30:37Z" level=error msg="did not receive last pong from dealer, 90090s passed" May 26 22:31:07 duchamp go-librespot[1170]: time="2025-05-26T22:31:07Z" level=error msg="did not receive last pong from dealer, 90120s passed" May 26 22:31:37 duchamp go-librespot[1170]: time="2025-05-26T22:31:37Z" level=error msg="did not receive last pong from dealer, 90150s passed" May 26 22:32:07 duchamp go-librespot[1170]: time="2025-05-26T22:32:07Z" level=error msg="did not receive last pong from dealer, 90180s passed" May 26 22:32:07 duchamp go-librespot[1170]: time="2025-05-26T22:32:07Z" level=error msg="did not receive last pong ack from accesspoint, 94812s passed" May 26 22:32:37 duchamp go-librespot[1170]: time="2025-05-26T22:32:37Z" level=error msg="did not receive last pong from dealer, 90210s passed" May 26 22:33:07 duchamp go-librespot[1170]: time="2025-05-26T22:33:07Z" level=error msg="did not receive last pong from dealer, 90240s passed" May 26 22:33:37 duchamp go-librespot[1170]: time="2025-05-26T22:33:37Z" level=error msg="did not receive last pong from dealer, 90270s passed" May 26 22:34:07 duchamp go-librespot[1170]: time="2025-05-26T22:34:07Z" level=error msg="did not receive last pong ack from accesspoint, 94932s passed" May 26 22:34:07 duchamp go-librespot[1170]: time="2025-05-26T22:34:07Z" level=error msg="did not receive last pong from dealer, 90300s passed" May 26 22:34:37 duchamp go-librespot[1170]: time="2025-05-26T22:34:37Z" level=error msg="did not receive last pong from dealer, 90330s passed" May 26 22:35:07 duchamp go-librespot[1170]: time="2025-05-26T22:35:07Z" level=error msg="did not receive last pong from dealer, 90360s passed" May 26 22:35:37 duchamp go-librespot[1170]: time="2025-05-26T22:35:37Z" level=error msg="did not receive last pong from dealer, 90390s passed" May 26 22:36:07 duchamp go-librespot[1170]: time="2025-05-26T22:36:07Z" level=error msg="did not receive last pong from dealer, 90420s passed" May 26 22:36:07 duchamp go-librespot[1170]: time="2025-05-26T22:36:07Z" level=error msg="did not receive last pong ack from accesspoint, 95052s passed" May 26 22:36:37 duchamp go-librespot[1170]: time="2025-05-26T22:36:37Z" level=error msg="did not receive last pong from dealer, 90450s passed" May 26 22:37:07 duchamp go-librespot[1170]: time="2025-05-26T22:37:07Z" level=error msg="did not receive last pong from dealer, 90480s passed" May 26 22:37:37 duchamp go-librespot[1170]: time="2025-05-26T22:37:37Z" level=error msg="did not receive last pong from dealer, 90510s passed" May 26 22:38:07 duchamp go-librespot[1170]: time="2025-05-26T22:38:07Z" level=error msg="did not receive last pong ack from accesspoint, 95172s passed" May 26 22:38:07 duchamp go-librespot[1170]: time="2025-05-26T22:38:07Z" level=error msg="did not receive last pong from dealer, 90540s passed" May 26 22:38:37 duchamp go-librespot[1170]: time="2025-05-26T22:38:37Z" level=error msg="did not receive last pong from dealer, 90570s passed" May 26 22:39:07 duchamp go-librespot[1170]: time="2025-05-26T22:39:07Z" level=error msg="did not receive last pong from dealer, 90600s passed" May 26 22:39:37 duchamp go-librespot[1170]: time="2025-05-26T22:39:37Z" level=error msg="did not receive last pong from dealer, 90630s passed" May 26 22:40:07 duchamp go-librespot[1170]: time="2025-05-26T22:40:07Z" level=error msg="did not receive last pong from dealer, 90660s passed" May 26 22:40:07 duchamp go-librespot[1170]: time="2025-05-26T22:40:07Z" level=error msg="did not receive last pong ack from accesspoint, 95292s passed" ```
Author
Owner

@2opremio commented on GitHub (May 26, 2025):

It would already be an improvement if the program crashed (to force a restart) if it gets stuck in this state, since restarting seems to fix it.

<!-- gh-comment-id:2910719939 --> @2opremio commented on GitHub (May 26, 2025): It would already be an improvement if the program crashed (to force a restart) if it gets stuck in this state, since restarting seems to fix it.
Author
Owner

@2opremio commented on GitHub (May 26, 2025):

This is how the last vicious error cycle started:

May 24 23:11:55 duchamp go-librespot[1170]: time="2025-05-24T23:11:55Z" level=error msg="failed receiving packet" error="failed reading packet header: read tcp 10.10.20.7:45748->104.199.65.9:443: read: connection reset by peer"
May 24 23:11:55 duchamp go-librespot[1170]: time="2025-05-24T23:11:55Z" level=info msg="authenticated AP as redacted"
May 25 19:21:33 duchamp go-librespot[1170]: time="2025-05-25T19:21:33Z" level=info msg="authenticated Login5 as redacted"
May 25 19:21:34 duchamp go-librespot[1170]: time="2025-05-25T19:21:34Z" level=info msg="loaded track \"Josie\" (paused: false, position: 112744259ms, duration: 199973ms, prefetched: false)" uri="spotify:track:5IKqS0Kmme9uVOVjulysEV"
May 25 19:21:34 duchamp go-librespot[1170]: time="2025-05-25T19:21:34Z" level=info msg="prefetched track \"Waiting Room\" (duration: 173266ms)" uri="spotify:track:2DBlfjL5chsdeULzhTp5K8"
May 25 19:21:35 duchamp go-librespot[1170]: time="2025-05-25T19:21:35Z" level=info msg="loaded track \"Waiting Room\" (paused: false, position: 0ms, duration: 173266ms, prefetched: true)" uri="spotify:track:2DBlfjL5chsdeULzhTp5K8"
May 25 19:21:40 duchamp go-librespot[1170]: time="2025-05-25T19:21:40Z" level=info msg="loaded track \"Josie\" (paused: false, position: 0ms, duration: 199973ms, prefetched: false)" uri="spotify:track:5IKqS0Kmme9uVOVjulysEV"
May 25 19:21:42 duchamp go-librespot[1170]: time="2025-05-25T19:21:42Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:42 duchamp go-librespot[1170]: time="2025-05-25T19:21:42Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:42 duchamp go-librespot[1170]: time="2025-05-25T19:21:42Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:43 duchamp go-librespot[1170]: time="2025-05-25T19:21:43Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:43 duchamp go-librespot[1170]: time="2025-05-25T19:21:43Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:43 duchamp go-librespot[1170]: time="2025-05-25T19:21:43Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
May 25 19:24:30 duchamp go-librespot[1170]: time="2025-05-25T19:24:30Z" level=info msg="prefetched track \"Waiting Room\" (duration: 173266ms)" uri="spotify:track:2DBlfjL5chsdeULzhTp5K8"
May 25 20:12:57 duchamp go-librespot[1170]: time="2025-05-25T20:12:57Z" level=error msg="failed receiving packet" error="failed reading packet header: read tcp 10.10.20.7:57498->104.199.65.9:80: read: connection reset by peer"
May 25 20:12:58 duchamp go-librespot[1170]: time="2025-05-25T20:12:58Z" level=info msg="authenticated AP as redacted"
May 25 20:14:07 duchamp go-librespot[1170]: time="2025-05-25T20:14:07Z" level=error msg="did not receive last pong ack from accesspoint, 132s passed"
May 25 20:16:07 duchamp go-librespot[1170]: time="2025-05-25T20:16:07Z" level=error msg="did not receive last pong ack from accesspoint, 252s passed"
May 25 20:18:07 duchamp go-librespot[1170]: time="2025-05-25T20:18:07Z" level=error msg="did not receive last pong ack from accesspoint, 372s passed"
[...]
<!-- gh-comment-id:2910722404 --> @2opremio commented on GitHub (May 26, 2025): This is how the last vicious error cycle started: ``` May 24 23:11:55 duchamp go-librespot[1170]: time="2025-05-24T23:11:55Z" level=error msg="failed receiving packet" error="failed reading packet header: read tcp 10.10.20.7:45748->104.199.65.9:443: read: connection reset by peer" May 24 23:11:55 duchamp go-librespot[1170]: time="2025-05-24T23:11:55Z" level=info msg="authenticated AP as redacted" May 25 19:21:33 duchamp go-librespot[1170]: time="2025-05-25T19:21:33Z" level=info msg="authenticated Login5 as redacted" May 25 19:21:34 duchamp go-librespot[1170]: time="2025-05-25T19:21:34Z" level=info msg="loaded track \"Josie\" (paused: false, position: 112744259ms, duration: 199973ms, prefetched: false)" uri="spotify:track:5IKqS0Kmme9uVOVjulysEV" May 25 19:21:34 duchamp go-librespot[1170]: time="2025-05-25T19:21:34Z" level=info msg="prefetched track \"Waiting Room\" (duration: 173266ms)" uri="spotify:track:2DBlfjL5chsdeULzhTp5K8" May 25 19:21:35 duchamp go-librespot[1170]: time="2025-05-25T19:21:35Z" level=info msg="loaded track \"Waiting Room\" (paused: false, position: 0ms, duration: 173266ms, prefetched: true)" uri="spotify:track:2DBlfjL5chsdeULzhTp5K8" May 25 19:21:40 duchamp go-librespot[1170]: time="2025-05-25T19:21:40Z" level=info msg="loaded track \"Josie\" (paused: false, position: 0ms, duration: 199973ms, prefetched: false)" uri="spotify:track:5IKqS0Kmme9uVOVjulysEV" May 25 19:21:42 duchamp go-librespot[1170]: time="2025-05-25T19:21:42Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:42 duchamp go-librespot[1170]: time="2025-05-25T19:21:42Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:42 duchamp go-librespot[1170]: time="2025-05-25T19:21:42Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:43 duchamp go-librespot[1170]: time="2025-05-25T19:21:43Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:43 duchamp go-librespot[1170]: time="2025-05-25T19:21:43Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:43 duchamp go-librespot[1170]: time="2025-05-25T19:21:43Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:21:44 duchamp go-librespot[1170]: time="2025-05-25T19:21:44Z" level=warning msg="error while handling alsa mixer events. (Success)\n" May 25 19:24:30 duchamp go-librespot[1170]: time="2025-05-25T19:24:30Z" level=info msg="prefetched track \"Waiting Room\" (duration: 173266ms)" uri="spotify:track:2DBlfjL5chsdeULzhTp5K8" May 25 20:12:57 duchamp go-librespot[1170]: time="2025-05-25T20:12:57Z" level=error msg="failed receiving packet" error="failed reading packet header: read tcp 10.10.20.7:57498->104.199.65.9:80: read: connection reset by peer" May 25 20:12:58 duchamp go-librespot[1170]: time="2025-05-25T20:12:58Z" level=info msg="authenticated AP as redacted" May 25 20:14:07 duchamp go-librespot[1170]: time="2025-05-25T20:14:07Z" level=error msg="did not receive last pong ack from accesspoint, 132s passed" May 25 20:16:07 duchamp go-librespot[1170]: time="2025-05-25T20:16:07Z" level=error msg="did not receive last pong ack from accesspoint, 252s passed" May 25 20:18:07 duchamp go-librespot[1170]: time="2025-05-25T20:18:07Z" level=error msg="did not receive last pong ack from accesspoint, 372s passed" [...] ```
Author
Owner

@devgianlu commented on GitHub (May 31, 2025):

Thank you for reporting. This doesn't really happen for me, but it is probably a relation between network instability and other factors.

Can you provide a dump of the goroutine state? It's likely that something is stuck somewhere. You can do it by sending a SIBABRT to go-librespot: kill -s ABRT $(pidof go-librespot)

<!-- gh-comment-id:2925098416 --> @devgianlu commented on GitHub (May 31, 2025): Thank you for reporting. This doesn't really happen for me, but it is probably a relation between network instability and other factors. Can you provide a dump of the goroutine state? It's likely that something is stuck somewhere. You can do it by sending a SIBABRT to go-librespot: `kill -s ABRT $(pidof go-librespot)`
Author
Owner

@2opremio commented on GitHub (May 31, 2025):

Sure thing. I will do it the next time it happens. My WAN connection is pretty stable but I am running go-librespot on a raspberry pi 3 through WiFi which probably isn’t.

<!-- gh-comment-id:2925404079 --> @2opremio commented on GitHub (May 31, 2025): Sure thing. I will do it the next time it happens. My WAN connection is pretty stable but I am running go-librespot on a raspberry pi 3 through WiFi which probably isn’t.
Author
Owner

@devgianlu commented on GitHub (Jun 3, 2025):

Just happened to me I believe
time="2025-06-03T08:57:30+02:00" level=trace msg="sent dealer ping"
time="2025-06-03T08:57:30+02:00" level=trace msg="received dealer pong"
time="2025-06-03T08:57:41+02:00" level=trace msg="received accesspoint ping"
time="2025-06-03T08:57:41+02:00" level=trace msg="received accesspoint pong ack"
time="2025-06-03T08:58:00+02:00" level=trace msg="sent dealer ping"
time="2025-06-03T08:58:30+02:00" level=error msg="did not receive last pong from dealer, 60s passed"
time="2025-06-03T08:59:00+02:00" level=error msg="did not receive last pong from dealer, 90s passed"
time="2025-06-03T08:59:30+02:00" level=error msg="did not receive last pong from dealer, 120s passed"
time="2025-06-03T08:59:41+02:00" level=trace msg="received accesspoint ping"
time="2025-06-03T08:59:41+02:00" level=trace msg="received accesspoint pong ack"
time="2025-06-03T09:00:00+02:00" level=error msg="did not receive last pong from dealer, 150s passed"
time="2025-06-03T09:00:30+02:00" level=error msg="did not receive last pong from dealer, 180s passed"
time="2025-06-03T09:01:00+02:00" level=error msg="did not receive last pong from dealer, 210s passed"
time="2025-06-03T09:01:30+02:00" level=error msg="did not receive last pong from dealer, 240s passed"
time="2025-06-03T09:01:41+02:00" level=trace msg="received accesspoint ping"
time="2025-06-03T09:01:41+02:00" level=trace msg="received accesspoint pong ack"
time="2025-06-03T09:02:00+02:00" level=error msg="did not receive last pong from dealer, 270s passed"
time="2025-06-03T09:02:30+02:00" level=error msg="did not receive last pong from dealer, 300s passed"
time="2025-06-03T09:03:00+02:00" level=error msg="did not receive last pong from dealer, 330s passed"
SIGABRT: abort
PC=0x1aac4 m=0 sigcode=0
goroutine 0 gp=0xce8e18 m=0 mp=0xce96c0 [idle]:
runtime/internal/syscall.Syscall6(0x15a, 0x4, 0xffb21e70, 0x80, 0x8c9, 0x0, 0x0)
        /usr/local/go/src/runtime/internal/syscall/asm_linux_arm.s:17 +0x20 fp=0xffb21df4 sp=0xffb21df4 pc=0x1aac4
runtime/internal/syscall.EpollWait(0x4, {0xffb21e70, 0x80, 0x80}, 0x80, 0x8c9)
        /usr/local/go/src/runtime/internal/syscall/syscall_linux.go:55 +0x60 fp=0xffb21e24 sp=0xffb21df4 pc=0x1aa1c
runtime.netpoll(0x8618c12f)
        /usr/local/go/src/runtime/netpoll_epoll.go:118 +0x17c fp=0xffb22690 sp=0xffb21e24 pc=0x54960
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3470 +0xbbc fp=0xffb2273c sp=0xffb22690 pc=0x62c24
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xffb22758 sp=0xffb2273c pc=0x643bc
runtime.park_m(0x33d8488)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xffb22778 sp=0xffb22758 pc=0x64c34
runtime.mcall(0x863614)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xffb22780 sp=0xffb22778 pc=0x916ec
goroutine 1 gp=0x3002128 m=nil [select, 5141 minutes]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3370cf8 sp=0x3370ce4 pc=0x5c560
runtime.selectgo(0x3370df8, 0x313ddc4, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3370d98 sp=0x3370cf8 pc=0x70318
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x34c63c0, 0x3370e90)
        /home/volumio/go-librespot/zeroconf/zeroconf.go:281 +0x228 fp=0x3370e3c sp=0x3370d98 pc=0x5b01bc
main.(*App).withAppPlayer(0x30fb420, {0x869c10, 0xd13698}, 0x300f4f0)
        /home/volumio/go-librespot/cmd/daemon/main.go:316 +0x52c fp=0x3370ed0 sp=0x3370e3c pc=0x645bac
main.(*App).withCredentials(...)
        /home/volumio/go-librespot/cmd/daemon/main.go:191
main.(*App).SpotifyToken(0x30fb420, {0x869c10, 0xd13698}, {0x3010fd0, 0xb}, {0x315a000, 0x16a})
        /home/volumio/go-librespot/cmd/daemon/main.go:183 +0xd8 fp=0x3370f00 sp=0x3370ed0 pc=0x6450a8
main.main()
        /home/volumio/go-librespot/cmd/daemon/main.go:549 +0x588 fp=0x3370fa8 sp=0x3370f00 pc=0x647e60
runtime.main()
        /usr/local/go/src/runtime/proc.go:271 +0x2fc fp=0x3370fec sp=0x3370fa8 pc=0x5bfd0
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3370fec sp=0x3370fec pc=0x933b8
goroutine 2 gp=0x30027e8 m=nil [force gc (idle), 3 minutes]:
runtime.gopark(0x7c3c58, 0xce7ef0, 0x11, 0xa, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3046fd4 sp=0x3046fc0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.forcegchelper()
        /usr/local/go/src/runtime/proc.go:326 +0xe4 fp=0x3046fec sp=0x3046fd4 pc=0x5c39c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3046fec sp=0x3046fec pc=0x933b8
created by runtime.init.5 in goroutine 1
        /usr/local/go/src/runtime/proc.go:314 +0x1c
goroutine 3 gp=0x3002b48 m=nil [GC sweep wait]:
runtime.gopark(0x7c3c58, 0xce84f8, 0xc, 0x9, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30477c4 sp=0x30477b0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.bgsweep(0x306e000)
        /usr/local/go/src/runtime/mgcsweep.go:318 +0x11c fp=0x30477e4 sp=0x30477c4 pc=0x44ce8
runtime.gcenable.gowrap1()
        /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x30477ec sp=0x30477e4 pc=0x34e08
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30477ec sp=0x30477ec pc=0x933b8
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:203 +0x74
goroutine 4 gp=0x3002c68 m=nil [GC scavenge wait]:
runtime.gopark(0x7c3c58, 0xce8ba8, 0xd, 0xa, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3047fb4 sp=0x3047fa0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.(*scavengerState).park(0xce8ba8)
        /usr/local/go/src/runtime/mgcscavenge.go:425 +0x68 fp=0x3047fc8 sp=0x3047fb4 pc=0x42008
runtime.bgscavenge(0x306e000)
        /usr/local/go/src/runtime/mgcscavenge.go:658 +0x60 fp=0x3047fe4 sp=0x3047fc8 pc=0x42740
runtime.gcenable.gowrap2()
        /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x3047fec sp=0x3047fe4 pc=0x34db4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3047fec sp=0x3047fec pc=0x933b8
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:204 +0xbc
goroutine 5 gp=0x3003448 m=nil [finalizer wait, 3 minutes]:
runtime.gopark(0x7c3b04, 0xd13738, 0x10, 0xa, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x304878c sp=0x3048778 pc=0x5c560
runtime.runfinq()
        /usr/local/go/src/runtime/mfinal.go:194 +0x110 fp=0x30487ec sp=0x304878c pc=0x33bf4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30487ec sp=0x30487ec pc=0x933b8
created by runtime.createfing in goroutine 1
        /usr/local/go/src/runtime/mfinal.go:164 +0x5c
goroutine 8 gp=0x3150c68 m=nil [IO wait, 8 minutes]:
runtime.gopark(0x7c3c48, 0xf5699f08, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x327bd28 sp=0x327bd14 pc=0x5c560
runtime.netpollblock(0xf5699ef8, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x327bd40 sp=0x327bd28 pc=0x53d6c
internal/poll.runtime_pollWait(0xf5699ef8, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x327bd54 sp=0x327bd40 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x3091468, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x327bd68 sp=0x327bd54 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x3091450)
        /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x327bdb0 sp=0x327bd68 pc=0x112798
net.(*netFD).accept(0x3091450)
        /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x327be18 sp=0x327bdb0 pc=0x18363c
net.(*TCPListener).accept(0x3026b10)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x327be30 sp=0x327be18 pc=0x19ba78
net.(*TCPListener).Accept(0x3026b10)
        /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x327be4c sp=0x327be30 pc=0x19aae4
net/http.(*onceCloseListener).Accept(0x31b0340)
        <autogenerated>:1 +0x34 fp=0x327be64 sp=0x327be4c pc=0x367e94
net/http.(*Server).Serve(0x31ac0a8, {0x8693d8, 0x3026b10})
        /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x327befc sp=0x327be64 pc=0x346550
net/http.Serve(...)
        /usr/local/go/src/net/http/server.go:2794
main.(*ConcreteApiServer).serve(0x3029080)
        /home/volumio/go-librespot/cmd/daemon/api_server.go:611 +0x974 fp=0x327bfe4 sp=0x327befc pc=0x63b048
main.NewApiServer.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x28 fp=0x327bfec sp=0x327bfe4 pc=0x639f18
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x327bfec sp=0x327bfec pc=0x933b8
created by main.NewApiServer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x310
goroutine 63 gp=0x3150fc8 m=nil [chan send, 3633 minutes]:
runtime.gopark(0x7c3ae8, 0x32a6530, 0xf, 0x6, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3276e50 sp=0x3276e3c pc=0x5c560
runtime.chansend(0x32a6500, 0x3276ef0, 0x1, 0x52c520)
        /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x3276e88 sp=0x3276e50 pc=0x1e6a8
runtime.chansend1(0x32a6500, 0x3276ef0)
        /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x3276ea0 sp=0x3276e88 pc=0x1e32c
github.com/devgianlu/go-librespot/dealer.(*Dealer).handleMessage(0x30cf768, 0x3e91220)
        /home/volumio/go-librespot/dealer/recv.go:181 +0x4f0 fp=0x3276f2c sp=0x3276ea0 pc=0x52c520
github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x30cf768)
        /home/volumio/go-librespot/dealer/dealer.go:210 +0x3fc fp=0x3276fe4 sp=0x3276f2c pc=0x52b308
github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x3276fec sp=0x3276fe4 pc=0x52ca3c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3276fec sp=0x3276fec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 73
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x98
goroutine 13 gp=0x31510e8 m=nil [GC worker (idle), 5 minutes]:
runtime.gopark(0x7c3b14, 0x302ba10, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3046790 sp=0x304677c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x30467ec sp=0x3046790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30467ec sp=0x30467ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 12
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 34 gp=0x3482008 m=nil [GC worker (idle)]:
runtime.gopark(0x7c3b14, 0x302ba28, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3488790 sp=0x348877c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x34887ec sp=0x3488790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34887ec sp=0x34887ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 12
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 14 gp=0x3151568 m=nil [GC worker (idle), 5 minutes]:
runtime.gopark(0x7c3b14, 0x302ba40, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3049790 sp=0x304977c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x30497ec sp=0x3049790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30497ec sp=0x30497ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 12
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 15 gp=0x3151688 m=nil [GC worker (idle), 5 minutes]:
runtime.gopark(0x7c3b14, 0x302ba58, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3049f90 sp=0x3049f7c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x3049fec sp=0x3049f90 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3049fec sp=0x3049fec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 12
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 20 gp=0x3003568 m=nil [IO wait]:
runtime.gopark(0x7c3c48, 0xf5699d28, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34e4e84 sp=0x34e4e70 pc=0x5c560
runtime.netpollblock(0xf5699d18, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x34e4e9c sp=0x34e4e84 pc=0x53d6c
internal/poll.runtime_pollWait(0xf5699d18, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x34e4eb0 sp=0x34e4e9c pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x31c1a58, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x34e4ec4 sp=0x34e4eb0 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x31c1a40, 0x34cbaa0)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x34e4ef0 sp=0x34e4ec4 pc=0x11339c
net.(*rawConn).Read(0x326c8a0, 0x34cbaa0)
        /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x34e4f10 sp=0x34e4ef0 pc=0x195ea0
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x3218a10, 0x34cba70, 0x0)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x34e4f40 sp=0x34e4f10 pc=0x5509a0
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x34ca788, {0x3320000, 0x10000, 0x10000})
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x44c fp=0x34e4f9c sp=0x34e4f40 pc=0x554988
github.com/grandcat/zeroconf.(*Server).recv4(0x326bdc0, 0x34ca780)
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xec fp=0x34e4fe0 sp=0x34e4f9c pc=0x5ab218
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1()
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x30 fp=0x34e4fec sp=0x34e4fe0 pc=0x5aaed0
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34e4fec sp=0x34e4fec pc=0x933b8
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 35
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x7c
goroutine 21 gp=0x3003688 m=nil [IO wait, 5141 minutes]:
runtime.gopark(0x7c3c48, 0xf5699c88, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x348465c sp=0x3484648 pc=0x5c560
runtime.netpollblock(0xf5699c78, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3484674 sp=0x348465c pc=0x53d6c
internal/poll.runtime_pollWait(0xf5699c78, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x3484688 sp=0x3484674 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x31c1aa8, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x348469c sp=0x3484688 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x31c1a90, 0x329c030)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x34846c8 sp=0x348469c pc=0x11339c
net.(*rawConn).Read(0x326c8d0, 0x329c030)
        /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x34846e8 sp=0x34846c8 pc=0x195ea0
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x3218a20, 0x329c000, 0x0)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x3484718 sp=0x34846e8 pc=0x5509a0
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x34ca7b8, {0x328c000, 0x10000, 0x10000})
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x2ec fp=0x348479c sp=0x3484718 pc=0x558310
github.com/grandcat/zeroconf.(*Server).recv6(0x326bdc0, 0x34ca7b0)
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xec fp=0x34847e0 sp=0x348479c pc=0x5ab40c
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2()
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x30 fp=0x34847ec sp=0x34847e0 pc=0x5aae74
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34847ec sp=0x34847ec pc=0x933b8
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 35
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xe8
goroutine 81 gp=0x33f0008 m=nil [IO wait, 5141 minutes]:
runtime.gopark(0x7c3c48, 0xf5699828, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x305987c sp=0x3059868 pc=0x5c560
runtime.netpollblock(0xf5699818, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3059894 sp=0x305987c pc=0x53d6c
internal/poll.runtime_pollWait(0xf5699818, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x30598a8 sp=0x3059894 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x316e6f8, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x30598bc sp=0x30598a8 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x316e6e0, {0x343d000, 0x1000, 0x1000})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x3059904 sp=0x30598bc pc=0x10f118
net.(*netFD).Read(0x316e6e0, {0x343d000, 0x1000, 0x1000})
        /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x3059930 sp=0x3059904 pc=0x181748
net.(*conn).Read(0x3032890, {0x343d000, 0x1000, 0x1000})
        /usr/local/go/src/net/net.go:179 +0x48 fp=0x305995c sp=0x3059930 pc=0x191c64
net.(*TCPConn).Read(0x3032890, {0x343d000, 0x1000, 0x1000})
        <autogenerated>:1 +0x44 fp=0x305997c sp=0x305995c pc=0x1a4eb8
io.(*multiReader).Read(0x300e3e0, {0x343d000, 0x1000, 0x1000})
        /usr/local/go/src/io/multi.go:26 +0xb4 fp=0x30599a8 sp=0x305997c pc=0x10913c
bufio.(*Reader).fill(0x31ff350)
        /usr/local/go/src/bufio/bufio.go:110 +0x10c fp=0x30599cc sp=0x30599a8 pc=0x2c30f4
bufio.(*Reader).ReadByte(0x31ff350)
        /usr/local/go/src/bufio/bufio.go:269 +0x28 fp=0x30599d8 sp=0x30599cc pc=0x2c3978
nhooyr.io/websocket.readFrameHeader(0x31ff350, {0x3130538, 0x8, 0x8})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/frame.go:54 +0x74 fp=0x3059a18 sp=0x30599d8 pc=0x488508
nhooyr.io/websocket.(*Conn).readFrameHeader(0x3130508, {0x869bf0, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:188 +0xb4 fp=0x3059ad8 sp=0x3059a18 pc=0x48b16c
nhooyr.io/websocket.(*Conn).readLoop(0x3130508, {0x869bf0, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:146 +0x3c fp=0x3059b9c sp=0x3059ad8 pc=0x48ac54
nhooyr.io/websocket.(*Conn).reader(0x3130508, {0x869bf0, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:315 +0x108 fp=0x3059c28 sp=0x3059b9c pc=0x48be68
nhooyr.io/websocket.(*Conn).Reader(...)
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:30
nhooyr.io/websocket.(*Conn).Read(0x3130508, {0x869bf0, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:36 +0x30 fp=0x3059c50 sp=0x3059c28 pc=0x48a538
main.(*ConcreteApiServer).serve.func17({0x86950c, 0x314f908}, 0x314f868)
        /home/volumio/go-librespot/cmd/daemon/api_server.go:581 +0x3c0 fp=0x3059ccc sp=0x3059c50 pc=0x63b918
net/http.HandlerFunc.ServeHTTP(0x31aa180, {0x86950c, 0x314f908}, 0x314f868)
        /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x3059cdc sp=0x3059ccc pc=0x342b34
net/http.(*ServeMux).ServeHTTP(0x31a0000, {0x86950c, 0x314f908}, 0x314f868)
        /usr/local/go/src/net/http/server.go:2683 +0x208 fp=0x3059d18 sp=0x3059cdc pc=0x344994
main.(*ConcreteApiServer).serve.(*Cors).Handler.func19({0x86950c, 0x314f908}, 0x314f868)
        /home/volumio/go/pkg/mod/github.com/rs/cors@v1.11.1/cors.go:289 +0x1f8 fp=0x3059d40 sp=0x3059d18 pc=0x63b318
net/http.HandlerFunc.ServeHTTP(0x31a4160, {0x86950c, 0x314f908}, 0x314f868)
        /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x3059d50 sp=0x3059d40 pc=0x342b34
net/http.serverHandler.ServeHTTP({0x31ac0a8}, {0x86950c, 0x314f908}, 0x314f868)
        /usr/local/go/src/net/http/server.go:3137 +0xe0 fp=0x3059d6c sp=0x3059d50 pc=0x346124
net/http.(*conn).serve(0x318e120, {0x869c30, 0x31b2180})
        /usr/local/go/src/net/http/server.go:2039 +0x61c fp=0x3059fdc sp=0x3059d6c pc=0x341374
net/http.(*Server).Serve.gowrap3()
        /usr/local/go/src/net/http/server.go:3285 +0x38 fp=0x3059fec sp=0x3059fdc pc=0x3469c8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3059fec sp=0x3059fec pc=0x933b8
created by net/http.(*Server).Serve in goroutine 8
        /usr/local/go/src/net/http/server.go:3285 +0x468
goroutine 71 gp=0x33f0128 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x327cf04 sp=0x327cef0 pc=0x5c560
runtime.selectgo(0x327cfd4, 0x327cfc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x327cfa4 sp=0x327cf04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x33e2300)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x327cfe4 sp=0x327cfa4 pc=0x5392c8
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x327cfec sp=0x327cfe4 pc=0x539208
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x327cfec sp=0x327cfec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 1
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 74 gp=0x34826c8 m=nil [chan receive, 8 minutes]:
runtime.gopark(0x7c3ae8, 0x306e2b0, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3043f48 sp=0x3043f34 pc=0x5c560
runtime.chanrecv(0x306e280, 0x3043fd0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x3043f84 sp=0x3043f48 pc=0x1f518
runtime.chanrecv2(0x306e280, 0x3043fd0)
        /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x3043f98 sp=0x3043f84 pc=0x1f05c
main.(*App).withAppPlayer.func1()
        /home/volumio/go-librespot/cmd/daemon/main.go:264 +0x68 fp=0x3043fec sp=0x3043f98 pc=0x646740
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3043fec sp=0x3043fec pc=0x933b8
created by main.(*App).withAppPlayer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/main.go:261 +0x43c
goroutine 75 gp=0x34827e8 m=nil [chan receive, 1052 minutes]:
runtime.gopark(0x7c3ae8, 0x306e270, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x355ef38 sp=0x355ef24 pc=0x5c560
runtime.chanrecv(0x306e240, 0x362dfe0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x355ef74 sp=0x355ef38 pc=0x1f518
runtime.chanrecv2(0x306e240, 0x362dfe0)
        /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x355ef88 sp=0x355ef74 pc=0x1f05c
main.(*App).withAppPlayer.func2()
        /home/volumio/go-librespot/cmd/daemon/main.go:280 +0x6c fp=0x355efec sp=0x355ef88 pc=0x646308
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x355efec sp=0x355efec pc=0x933b8
created by main.(*App).withAppPlayer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/main.go:277 +0x4dc
goroutine 76 gp=0x3482908 m=nil [IO wait, 3313 minutes]:
runtime.gopark(0x7c3c48, 0xf5699dc8, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3044de8 sp=0x3044dd4 pc=0x5c560
runtime.netpollblock(0xf5699db8, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3044e00 sp=0x3044de8 pc=0x53d6c
internal/poll.runtime_pollWait(0xf5699db8, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x3044e14 sp=0x3044e00 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x31c1a08, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x3044e28 sp=0x3044e14 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x31c19f0)
        /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x3044e70 sp=0x3044e28 pc=0x112798
net.(*netFD).accept(0x31c19f0)
        /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x3044ed8 sp=0x3044e70 pc=0x18363c
net.(*TCPListener).accept(0x34ce810)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x3044ef0 sp=0x3044ed8 pc=0x19ba78
net.(*TCPListener).Accept(0x34ce810)
        /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x3044f0c sp=0x3044ef0 pc=0x19aae4
net/http.(*onceCloseListener).Accept(0x31b0ae0)
        <autogenerated>:1 +0x34 fp=0x3044f24 sp=0x3044f0c pc=0x367e94
net/http.(*Server).Serve(0x314e008, {0x8693d8, 0x34ce810})
        /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x3044fbc sp=0x3044f24 pc=0x346550
net/http.Serve(...)
        /usr/local/go/src/net/http/server.go:2794
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2()
        /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x8c fp=0x3044fec sp=0x3044fbc pc=0x5b02b8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3044fec sp=0x3044fec pc=0x933b8
created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1
        /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x160
goroutine 47 gp=0x3482c68 m=nil [select, 8 minutes]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3486ea8 sp=0x3486e94 pc=0x5c560
runtime.selectgo(0x3486fa4, 0x3486f6c, 0x0, 0x0, 0x5, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3486f48 sp=0x3486ea8 pc=0x70318
nhooyr.io/websocket.(*Conn).timeoutLoop(0x3130508)
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:153 +0x10c fp=0x3486fe4 sp=0x3486f48 pc=0x4853b4
nhooyr.io/websocket.newConn.gowrap1()
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x28 fp=0x3486fec sp=0x3486fe4 pc=0x484fa8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3486fec sp=0x3486fec pc=0x933b8
created by nhooyr.io/websocket.newConn in goroutine 81
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x544
goroutine 5544335 gp=0x34c2d88 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x305df04 sp=0x305def0 pc=0x5c560
runtime.selectgo(0x305dfd4, 0x305dfc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x305dfa4 sp=0x305df04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x3546280)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x305dfe4 sp=0x305dfa4 pc=0x5392c8
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x305dfec sp=0x305dfe4 pc=0x539208
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x305dfec sp=0x305dfec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 6531660 gp=0x31745a8 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3372f04 sp=0x3372ef0 pc=0x5c560
runtime.selectgo(0x3372fd4, 0x3372fc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3372fa4 sp=0x3372f04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x30a2e80)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x3372fe4 sp=0x3372fa4 pc=0x5392c8
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x3372fec sp=0x3372fe4 pc=0x539208
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3372fec sp=0x3372fec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 9982815 gp=0x39ff7a8 m=nil [sync.Mutex.Lock, 8 minutes]:
runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3371ea4 sp=0x3371e90 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15)
        /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x3371ecc sp=0x3371ea4 pc=0x70f54
sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1)
        /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x3371ee4 sp=0x3371ecc pc=0x906d0
sync.(*Mutex).lockSlow(0x379eae8)
        /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x3371f18 sp=0x3371ee4 pc=0x9ec58
sync.(*Mutex).Lock(0x379eae8)
        /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x3371f2c sp=0x3371f18 pc=0x9e958
github.com/devgianlu/go-librespot/events/impl.(*EventSender).sendEvents(0x379ea80)
        /home/volumio/go-librespot/events/impl/event-sender.go:146 +0x6a8 fp=0x3371fa4 sp=0x3371f2c pc=0x5399a8
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x379ea80)
        /home/volumio/go-librespot/events/impl/event-sender.go:101 +0x3c fp=0x3371fe4 sp=0x3371fa4 pc=0x539270
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x3371fec sp=0x3371fe4 pc=0x539208
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3371fec sp=0x3371fec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 10031414 gp=0x34ac908 m=nil [sync.Mutex.Lock, 6 minutes]:
runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34ebab8 sp=0x34ebaa4 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15)
        /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x34ebae0 sp=0x34ebab8 pc=0x70f54
sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1)
        /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x34ebaf8 sp=0x34ebae0 pc=0x906d0
sync.(*Mutex).lockSlow(0x379eae8)
        /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x34ebb2c sp=0x34ebaf8 pc=0x9ec58
sync.(*Mutex).Lock(0x379eae8)
        /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x34ebb40 sp=0x34ebb2c pc=0x9e958
github.com/devgianlu/go-librespot/events/impl.(*EventSender).Enqueue(0x379ea80, 0x370e0c0)
        /home/volumio/go-librespot/events/impl/event-sender.go:152 +0x38 fp=0x34ebb7c sp=0x34ebb40 pc=0x539a50
github.com/devgianlu/go-librespot/events/impl.(*EventSender).EnqueueWithContext(0x379ea80, {0x867318, 0x36c60f0})
        /home/volumio/go-librespot/events/impl/event-sender.go:238 +0xb80 fp=0x34ebc64 sp=0x34ebb7c pc=0x53a790
github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew.func1(0x340a008)
        /home/volumio/go-librespot/events/impl/event-manager.go:363 +0x1e4 fp=0x34ebcb4 sp=0x34ebc64 pc=0x537308
github.com/devgianlu/go-librespot/events/impl.(*EventManager).withPlaybackInfo(0x358ac40, {0x36ca4a0, 0x10, 0x10}, 0x34ebcec)
        /home/volumio/go-librespot/events/impl/event-manager.go:77 +0x124 fp=0x34ebcd4 sp=0x34ebcb4 pc=0x533a50
github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew(0x358ac40, {0x36ca4a0, 0x10, 0x10}, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x0)
        /home/volumio/go-librespot/events/impl/event-manager.go:358 +0x70 fp=0x34ebd10 sp=0x34ebcd4 pc=0x53710c
github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x3574820, {0x869c10, 0xd13698}, 0x31527c0, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x140, ...)
        /home/volumio/go-librespot/player/player.go:424 +0x10c fp=0x34ebe8c sp=0x34ebd10 pc=0x51b8a0
main.(*AppPlayer).prefetchNext(0x3e37310)
        /home/volumio/go-librespot/cmd/daemon/controls.go:48 +0x254 fp=0x34ebfe4 sp=0x34ebe8c pc=0x63d774
main.(*AppPlayer).prefetchNext-fm()
        <autogenerated>:1 +0x28 fp=0x34ebfec sp=0x34ebfe4 pc=0x64f28c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34ebfec sp=0x34ebfec pc=0x933b8
created by time.goFunc
        /usr/local/go/src/time/sleep.go:177 +0x2c
goroutine 9982800 gp=0x34c0008 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x336fe98 sp=0x336fe84 pc=0x5c560
runtime.selectgo(0x336ffd4, 0x336ff60, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x336ff38 sp=0x336fe98 pc=0x70318
github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x36369a8)
        /home/volumio/go-librespot/dealer/dealer.go:138 +0x8c fp=0x336ffe4 sp=0x336ff38 pc=0x52aadc
github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap2()
        /home/volumio/go-librespot/dealer/dealer.go:129 +0x28 fp=0x336ffec sp=0x336ffe4 pc=0x52c9e8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x336ffec sp=0x336ffec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 9982817
        /home/volumio/go-librespot/dealer/dealer.go:129 +0x15c
goroutine 6531684 gp=0x32c5568 m=nil [chan send, 1177 minutes]:
runtime.gopark(0x7c3ae8, 0x31afef0, 0xf, 0x6, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34e7e50 sp=0x34e7e3c pc=0x5c560
runtime.chansend(0x31afec0, 0x34e7ef0, 0x1, 0x52c520)
        /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x34e7e88 sp=0x34e7e50 pc=0x1e6a8
runtime.chansend1(0x31afec0, 0x34e7ef0)
        /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x34e7ea0 sp=0x34e7e88 pc=0x1e32c
github.com/devgianlu/go-librespot/dealer.(*Dealer).handleMessage(0x34cc588, 0x361e140)
        /home/volumio/go-librespot/dealer/recv.go:181 +0x4f0 fp=0x34e7f2c sp=0x34e7ea0 pc=0x52c520
github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x34cc588)
        /home/volumio/go-librespot/dealer/dealer.go:210 +0x3fc fp=0x34e7fe4 sp=0x34e7f2c pc=0x52b308
github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x34e7fec sp=0x34e7fe4 pc=0x52ca3c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34e7fec sp=0x34e7fec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 6531662
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x98
goroutine 4680509 gp=0x33d8488 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x336df04 sp=0x336def0 pc=0x5c560
runtime.selectgo(0x336dfd4, 0x336dfc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x336dfa4 sp=0x336df04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x31a0480)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x336dfe4 sp=0x336dfa4 pc=0x5392c8
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x336dfec sp=0x336dfe4 pc=0x539208
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x336dfec sp=0x336dfec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 9982924 gp=0x3172fc8 m=nil [IO wait, 3 minutes]:
runtime.gopark(0x7c3c48, 0xf5699b48, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3279d14 sp=0x3279d00 pc=0x5c560
runtime.netpollblock(0xf5699b38, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3279d2c sp=0x3279d14 pc=0x53d6c
internal/poll.runtime_pollWait(0xf5699b38, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x3279d40 sp=0x3279d2c pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x3574108, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x3279d54 sp=0x3279d40 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x35740f0, {0x36cb05c, 0x3, 0x3})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x3279d9c sp=0x3279d54 pc=0x10f118
net.(*netFD).Read(0x35740f0, {0x36cb05c, 0x3, 0x3})
        /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x3279dc8 sp=0x3279d9c pc=0x181748
net.(*conn).Read(0x467e380, {0x36cb05c, 0x3, 0x3})
        /usr/local/go/src/net/net.go:179 +0x48 fp=0x3279df4 sp=0x3279dc8 pc=0x191c64
net.(*TCPConn).Read(0x467e380, {0x36cb05c, 0x3, 0x3})
        <autogenerated>:1 +0x44 fp=0x3279e14 sp=0x3279df4 pc=0x1a4eb8
io.ReadAtLeast({0x864fac, 0x467e380}, {0x36cb05c, 0x3, 0x3}, 0x3)
        /usr/local/go/src/io/io.go:335 +0x90 fp=0x3279e40 sp=0x3279e14 pc=0x107ed4
io.ReadFull(...)
        /usr/local/go/src/io/io.go:354
github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x3e34f40, {0x869c10, 0xd13698})
        /home/volumio/go-librespot/ap/shannon.go:124 +0x3a0 fp=0x3279f04 sp=0x3279e40 pc=0x4a0770
github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x3636638)
        /home/volumio/go-librespot/ap/ap.go:276 +0x68 fp=0x3279fe4 sp=0x3279f04 pc=0x49cfac
github.com/devgianlu/go-librespot/ap.(*Accesspoint).reconnect.gowrap1()
        /home/volumio/go-librespot/ap/ap.go:390 +0x28 fp=0x3279fec sp=0x3279fe4 pc=0x49dc8c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3279fec sp=0x3279fec pc=0x933b8
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).reconnect in goroutine 9982923
        /home/volumio/go-librespot/ap/ap.go:390 +0x120
goroutine 3458800 gp=0x330ad88 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x327df04 sp=0x327def0 pc=0x5c560
runtime.selectgo(0x327dfd4, 0x327dfc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x327dfa4 sp=0x327df04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x3547980)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x327dfe4 sp=0x327dfa4 pc=0x5392c8
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x327dfec sp=0x327dfe4 pc=0x539208
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x327dfec sp=0x327dfec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 8377164 gp=0x33d4908 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34e5f04 sp=0x34e5ef0 pc=0x5c560
runtime.selectgo(0x34e5fd4, 0x34e5fc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x34e5fa4 sp=0x34e5f04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x379e800)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x34e5fe4 sp=0x34e5fa4 pc=0x5392c8
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x34e5fec sp=0x34e5fe4 pc=0x539208
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34e5fec sp=0x34e5fec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 9982977 gp=0x320a908 m=nil [select, 8 minutes]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x305bcb0 sp=0x305bc9c pc=0x5c560
runtime.selectgo(0x305be14, 0x305bd80, 0x0, 0x0, 0x3, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x305bd50 sp=0x305bcb0 pc=0x70318
github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x32a9da0)
        /home/volumio/go-librespot/audio/provider.go:63 +0x118 fp=0x305bfe4 sp=0x305bd50 pc=0x4a4f58
github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/audio/provider.go:53 +0x28 fp=0x305bfec sp=0x305bfe4 pc=0x4a5ca4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x305bfec sp=0x305bfec pc=0x933b8
created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1 in goroutine 9982817
        /home/volumio/go-librespot/audio/provider.go:53 +0x60
goroutine 9982816 gp=0x32627e8 m=nil [select, 5 minutes]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3285e74 sp=0x3285e60 pc=0x5c560
runtime.selectgo(0x3285f74, 0x3285f3c, 0x0, 0x0, 0x3, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3285f14 sp=0x3285e74 pc=0x70318
github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x3574820)
        /home/volumio/go-librespot/player/player.go:189 +0x1fc fp=0x3285fe4 sp=0x3285f14 pc=0x51ab9c
github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1()
        /home/volumio/go-librespot/player/player.go:171 +0x28 fp=0x3285fec sp=0x3285fe4 pc=0x51a77c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3285fec sp=0x3285fec pc=0x933b8
created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 75
        /home/volumio/go-librespot/player/player.go:171 +0x1f8
goroutine 9982853 gp=0x339f9e8 m=nil [chan send, 5 minutes]:
runtime.gopark(0x7c3ae8, 0x360d270, 0xf, 0x6, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3057d60 sp=0x3057d4c pc=0x5c560
runtime.chansend(0x360d240, 0x3057e04, 0x1, 0x52cc98)
        /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x3057d98 sp=0x3057d60 pc=0x1e6a8
runtime.chansend1(0x360d240, 0x3057e04)
        /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x3057db0 sp=0x3057d98 pc=0x1e32c
github.com/devgianlu/go-librespot/dealer.(*Dealer).handleRequest(0x36369a8, 0x361e0f0)
        /home/volumio/go-librespot/dealer/recv.go:230 +0x1dc fp=0x3057f2c sp=0x3057db0 pc=0x52cc98
github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x36369a8)
        /home/volumio/go-librespot/dealer/dealer.go:213 +0x4d8 fp=0x3057fe4 sp=0x3057f2c pc=0x52b3e4
github.com/devgianlu/go-librespot/dealer.(*Dealer).reconnect.gowrap1()
        /home/volumio/go-librespot/dealer/dealer.go:296 +0x28 fp=0x3057fec sp=0x3057fe4 pc=0x52bbbc
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3057fec sp=0x3057fec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).reconnect in goroutine 9982799
        /home/volumio/go-librespot/dealer/dealer.go:296 +0xf4
goroutine 9982817 gp=0x3efb0e8 m=nil [sync.Mutex.Lock, 5 minutes]:
runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x36f351c sp=0x36f3508 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15)
        /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x36f3544 sp=0x36f351c pc=0x70f54
sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1)
        /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x36f355c sp=0x36f3544 pc=0x906d0
sync.(*Mutex).lockSlow(0x379eae8)
        /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x36f3590 sp=0x36f355c pc=0x9ec58
sync.(*Mutex).Lock(0x379eae8)
        /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x36f35a4 sp=0x36f3590 pc=0x9e958
github.com/devgianlu/go-librespot/events/impl.(*EventSender).Enqueue(0x379ea80, 0x3670a00)
        /home/volumio/go-librespot/events/impl/event-sender.go:152 +0x38 fp=0x36f35e0 sp=0x36f35a4 pc=0x539a50
github.com/devgianlu/go-librespot/events/impl.(*EventSender).EnqueueWithContext(0x379ea80, {0x867318, 0x36c6000})
        /home/volumio/go-librespot/events/impl/event-sender.go:238 +0xb80 fp=0x36f36c8 sp=0x36f35e0 pc=0x53a790
github.com/devgianlu/go-librespot/events/impl.(*EventManager).OnPlayerEnd.func1(0x340a108)
        /home/volumio/go-librespot/events/impl/event-manager.go:212 +0x1b8 fp=0x36f37d4 sp=0x36f36c8 pc=0x535248
github.com/devgianlu/go-librespot/events/impl.(*EventManager).withPlaybackInfo(0x358ac40, {0x36ca570, 0x10, 0x10}, 0x36f380c)
        /home/volumio/go-librespot/events/impl/event-manager.go:77 +0x124 fp=0x36f37f4 sp=0x36f37d4 pc=0x533a50
github.com/devgianlu/go-librespot/events/impl.(*EventManager).OnPlayerEnd(0x358ac40, 0x4356a00, 0x2e8a3)
        /home/volumio/go-librespot/events/impl/event-manager.go:209 +0x7c fp=0x36f381c sp=0x36f37f4 pc=0x535078
main.(*AppPlayer).handlePlayerEvent(0x3e37310, {0x869c10, 0xd13698}, 0x36f3a54)
        /home/volumio/go-librespot/cmd/daemon/controls.go:143 +0x41c fp=0x36f38f4 sp=0x36f381c pc=0x63e664
main.(*AppPlayer).Run(0x3e37310, {0x869c10, 0xd13698}, 0x365f340)
        /home/volumio/go-librespot/cmd/daemon/player.go:605 +0x740 fp=0x36f3fd8 sp=0x36f38f4 pc=0x64d760
main.(*App).withAppPlayer.func2.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x40 fp=0x36f3fec sp=0x36f3fd8 pc=0x6466ac
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x36f3fec sp=0x36f3fec pc=0x933b8
created by main.(*App).withAppPlayer.func2 in goroutine 75
        /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x2c8
goroutine 9982798 gp=0x3580b48 m=nil [select]:
runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x336eeb8 sp=0x336eea4 pc=0x5c560
runtime.selectgo(0x336efd4, 0x336ef7c, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x336ef58 sp=0x336eeb8 pc=0x70318
github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x3636638)
        /home/volumio/go-librespot/ap/ap.go:355 +0x8c fp=0x336efe4 sp=0x336ef58 pc=0x49d7cc
github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap2()
        /home/volumio/go-librespot/ap/ap.go:264 +0x28 fp=0x336efec sp=0x336efe4 pc=0x49cec4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x336efec sp=0x336efec pc=0x933b8
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 9982817
        /home/volumio/go-librespot/ap/ap.go:264 +0x15c
trap    0x0
error   0x0
oldmask 0x0
r0      0xfffffffc
r1      0xffb21e70
r2      0x80
r3      0x8c9
r4      0x0
r5      0x0
r6      0x0
r7      0x15a
r8      0x1
r9      0x1
r10     0xce8e18
fp      0xc9170c
ip      0xbc0d6635
sp      0xffb21df4
lr      0x1aa1c
pc      0x1aac4
cpsr    0x200d0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94404 m=2 sigcode=0
goroutine 0 gp=0x30026c8 m=2 mp=0x304a588 [idle]:
runtime.futex(0xceb44c, 0x80, 0x0, 0xf6ed6d60, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:417 +0x20 fp=0xf6ed6d40 sp=0xf6ed6d40 pc=0x94404
runtime.futexsleep(0xceb44c, 0x0, 0x86175b70)
        /usr/local/go/src/runtime/os_linux.go:75 +0x178 fp=0xf6ed6d68 sp=0xf6ed6d40 pc=0x54e3c
runtime.notetsleep_internal(0xceb44c, 0x86175b70)
        /usr/local/go/src/runtime/lock_futex.go:212 +0x124 fp=0xf6ed6d90 sp=0xf6ed6d68 pc=0x24b6c
runtime.notetsleep(0xceb44c, 0x86175b70)
        /usr/local/go/src/runtime/lock_futex.go:235 +0x48 fp=0xf6ed6da4 sp=0xf6ed6d90 pc=0x24d0c
runtime.sysmon()
        /usr/local/go/src/runtime/proc.go:6001 +0x2e0 fp=0xf6ed6e00 sp=0xf6ed6da4 pc=0x69cb8
runtime.mstart1()
        /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf6ed6e10 sp=0xf6ed6e00 pc=0x5f5fc
runtime.mstart0()
        /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf6ed6e24 sp=0xf6ed6e10 pc=0x5f570
runtime.mstart()
        /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf6ed6e28 sp=0xf6ed6e24 pc=0x9168c
trap    0x0
error   0x0
oldmask 0x0
r0      0xfffffffc
r1      0x80
r2      0x0
r3      0xf6ed6d60
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x0
r9      0x0
r10     0x30026c8
fp      0x3b9aca00
ip      0x0
sp      0xf6ed6d40
lr      0x54e3c
pc      0x94404
cpsr    0x60070010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=3 sigcode=0
goroutine 0 gp=0x3002a28 m=3 mp=0x304ab08 [idle]:
runtime.futex(0x304abd0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf66d5cc4 sp=0xf66d5cc4 pc=0x94400
runtime.futexsleep(0x304abd0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf66d5cec sp=0xf66d5cc4 pc=0x54d20
runtime.notesleep(0x304abd0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf66d5d0c sp=0xf66d5cec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf66d5d20 sp=0xf66d5d0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf66d5dcc sp=0xf66d5d20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf66d5de8 sp=0xf66d5dcc pc=0x643bc
runtime.park_m(0x3482008)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf66d5e08 sp=0xf66d5de8 pc=0x64c34
runtime.mcall(0xf66d6450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf66d5e10 sp=0xf66d5e08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x304abd0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0x1
r10     0x3002a28
fp      0x6
ip      0x3d9651d9
sp      0xf66d5cc4
lr      0x54d20
pc      0x94400
cpsr    0xa00b0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=4 sigcode=0
goroutine 0 gp=0x3002ea8 m=4 mp=0x304b088 [idle]:
runtime.futex(0x304b150, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf5ed4cc4 sp=0xf5ed4cc4 pc=0x94400
runtime.futexsleep(0x304b150, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf5ed4cec sp=0xf5ed4cc4 pc=0x54d20
runtime.notesleep(0x304b150)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf5ed4d0c sp=0xf5ed4cec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf5ed4d20 sp=0xf5ed4d0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf5ed4dcc sp=0xf5ed4d20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf5ed4de8 sp=0xf5ed4dcc pc=0x643bc
runtime.park_m(0x3002c68)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf5ed4e08 sp=0xf5ed4de8 pc=0x64c34
runtime.mcall(0xf5ed5450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf5ed4e10 sp=0xf5ed4e08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x304b150
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x3002ea8
fp      0x6
ip      0xbc0c5f83
sp      0xf5ed4cc4
lr      0x54d20
pc      0x94400
cpsr    0xa00d0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=5 sigcode=0
goroutine 0 gp=0x30030e8 m=5 mp=0x304b608 [idle]:
runtime.futex(0x304b6d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf54fecdc sp=0xf54fecdc pc=0x94400
runtime.futexsleep(0x304b6d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf54fed04 sp=0xf54fecdc pc=0x54d20
runtime.notesleep(0x304b6d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf54fed24 sp=0xf54fed04 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf54fed38 sp=0xf54fed24 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf54fede4 sp=0xf54fed38 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf54fee00 sp=0xf54fede4 pc=0x643bc
runtime.goexit0(0x39fdc28)
        /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf54fee08 sp=0xf54fee00 pc=0x6527c
runtime.mcall(0xf54ff450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf54fee10 sp=0xf54fee08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x304b6d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x3ab49
r9      0xceb3c0
r10     0x30030e8
fp      0x6
ip      0x0
sp      0xf54fecdc
lr      0x54d20
pc      0x94400
cpsr    0xa0010010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=6 sigcode=0
goroutine 0 gp=0x3003328 m=6 mp=0x304bb88 [idle]:
runtime.futex(0xd13eb4, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf46fedac sp=0xf46fedac pc=0x94400
runtime.futexsleep(0xd13eb4, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf46fedd4 sp=0xf46fedac pc=0x54d20
runtime.notesleep(0xd13eb4)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf46fedf4 sp=0xf46fedd4 pc=0x249e8
runtime.templateThread()
        /usr/local/go/src/runtime/proc.go:2760 +0x90 fp=0xf46fee00 sp=0xf46fedf4 pc=0x61084
runtime.mstart1()
        /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf46fee10 sp=0xf46fee00 pc=0x5f5fc
runtime.mstart0()
        /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf46fee24 sp=0xf46fee10 pc=0x5f570
runtime.mstart()
        /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf46fee28 sp=0xf46fee24 pc=0x9168c
trap    0x0
error   0x0
oldmask 0x0
r0      0xd13eb4
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0xf46ff450
r9      0xf46ff4c0
r10     0x3003328
fp      0x6
ip      0x7
sp      0xf46fedac
lr      0x54d20
pc      0x94400
cpsr    0xa00e0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=7 sigcode=0
goroutine 0 gp=0x3151448 m=7 mp=0x33a6008 [idle]:
runtime.futex(0x33a60d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf3efdcdc sp=0xf3efdcdc pc=0x94400
runtime.futexsleep(0x33a60d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf3efdd04 sp=0xf3efdcdc pc=0x54d20
runtime.notesleep(0x33a60d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf3efdd24 sp=0xf3efdd04 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf3efdd38 sp=0xf3efdd24 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf3efdde4 sp=0xf3efdd38 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf3efde00 sp=0xf3efdde4 pc=0x643bc
runtime.goexit0(0x39f6368)
        /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf3efde08 sp=0xf3efde00 pc=0x6527c
runtime.mcall(0xf3efe450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf3efde10 sp=0xf3efde08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x33a60d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x3151448
fp      0x6
ip      0xa9853b4d
sp      0xf3efdcdc
lr      0x54d20
pc      0x94400
cpsr    0xa0010010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=8 sigcode=0
goroutine 0 gp=0x33f07e8 m=8 mp=0x304d188 [idle]:
runtime.futex(0x304d250, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf34fecdc sp=0xf34fecdc pc=0x94400
runtime.futexsleep(0x304d250, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf34fed04 sp=0xf34fecdc pc=0x54d20
runtime.notesleep(0x304d250)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf34fed24 sp=0xf34fed04 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf34fed38 sp=0xf34fed24 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf34fede4 sp=0xf34fed38 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf34fee00 sp=0xf34fede4 pc=0x643bc
runtime.goexit0(0x3202008)
        /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf34fee08 sp=0xf34fee00 pc=0x6527c
runtime.mcall(0xf34ff450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf34fee10 sp=0xf34fee08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x304d250
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x33f07e8
fp      0x6
ip      0xc14b44f3
sp      0xf34fecdc
lr      0x54d20
pc      0x94400
cpsr    0xa00d0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=9 sigcode=0
goroutine 0 gp=0x33d6c68 m=9 mp=0x3e45088 [idle]:
runtime.futex(0x3e45150, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf27e3cc4 sp=0xf27e3cc4 pc=0x94400
runtime.futexsleep(0x3e45150, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf27e3cec sp=0xf27e3cc4 pc=0x54d20
runtime.notesleep(0x3e45150)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf27e3d0c sp=0xf27e3cec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf27e3d20 sp=0xf27e3d0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf27e3dcc sp=0xf27e3d20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf27e3de8 sp=0xf27e3dcc pc=0x643bc
runtime.park_m(0x3002b48)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf27e3e08 sp=0xf27e3de8 pc=0x64c34
runtime.mcall(0xf27e4450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf27e3e10 sp=0xf27e3e08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x3e45150
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x33d6c68
fp      0x6
ip      0xddcd2dff
sp      0xf27e3cc4
lr      0x54d20
pc      0x94400
cpsr    0xa00d0010
fault   0x0
signal: aborted
<!-- gh-comment-id:2933805641 --> @devgianlu commented on GitHub (Jun 3, 2025): <details> <summary>Just happened to me I believe</summary> ``` time="2025-06-03T08:57:30+02:00" level=trace msg="sent dealer ping" time="2025-06-03T08:57:30+02:00" level=trace msg="received dealer pong" time="2025-06-03T08:57:41+02:00" level=trace msg="received accesspoint ping" time="2025-06-03T08:57:41+02:00" level=trace msg="received accesspoint pong ack" time="2025-06-03T08:58:00+02:00" level=trace msg="sent dealer ping" time="2025-06-03T08:58:30+02:00" level=error msg="did not receive last pong from dealer, 60s passed" time="2025-06-03T08:59:00+02:00" level=error msg="did not receive last pong from dealer, 90s passed" time="2025-06-03T08:59:30+02:00" level=error msg="did not receive last pong from dealer, 120s passed" time="2025-06-03T08:59:41+02:00" level=trace msg="received accesspoint ping" time="2025-06-03T08:59:41+02:00" level=trace msg="received accesspoint pong ack" time="2025-06-03T09:00:00+02:00" level=error msg="did not receive last pong from dealer, 150s passed" time="2025-06-03T09:00:30+02:00" level=error msg="did not receive last pong from dealer, 180s passed" time="2025-06-03T09:01:00+02:00" level=error msg="did not receive last pong from dealer, 210s passed" time="2025-06-03T09:01:30+02:00" level=error msg="did not receive last pong from dealer, 240s passed" time="2025-06-03T09:01:41+02:00" level=trace msg="received accesspoint ping" time="2025-06-03T09:01:41+02:00" level=trace msg="received accesspoint pong ack" time="2025-06-03T09:02:00+02:00" level=error msg="did not receive last pong from dealer, 270s passed" time="2025-06-03T09:02:30+02:00" level=error msg="did not receive last pong from dealer, 300s passed" time="2025-06-03T09:03:00+02:00" level=error msg="did not receive last pong from dealer, 330s passed" SIGABRT: abort PC=0x1aac4 m=0 sigcode=0 goroutine 0 gp=0xce8e18 m=0 mp=0xce96c0 [idle]: runtime/internal/syscall.Syscall6(0x15a, 0x4, 0xffb21e70, 0x80, 0x8c9, 0x0, 0x0) /usr/local/go/src/runtime/internal/syscall/asm_linux_arm.s:17 +0x20 fp=0xffb21df4 sp=0xffb21df4 pc=0x1aac4 runtime/internal/syscall.EpollWait(0x4, {0xffb21e70, 0x80, 0x80}, 0x80, 0x8c9) /usr/local/go/src/runtime/internal/syscall/syscall_linux.go:55 +0x60 fp=0xffb21e24 sp=0xffb21df4 pc=0x1aa1c runtime.netpoll(0x8618c12f) /usr/local/go/src/runtime/netpoll_epoll.go:118 +0x17c fp=0xffb22690 sp=0xffb21e24 pc=0x54960 runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3470 +0xbbc fp=0xffb2273c sp=0xffb22690 pc=0x62c24 runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xffb22758 sp=0xffb2273c pc=0x643bc runtime.park_m(0x33d8488) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xffb22778 sp=0xffb22758 pc=0x64c34 runtime.mcall(0x863614) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xffb22780 sp=0xffb22778 pc=0x916ec goroutine 1 gp=0x3002128 m=nil [select, 5141 minutes]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3370cf8 sp=0x3370ce4 pc=0x5c560 runtime.selectgo(0x3370df8, 0x313ddc4, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3370d98 sp=0x3370cf8 pc=0x70318 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x34c63c0, 0x3370e90) /home/volumio/go-librespot/zeroconf/zeroconf.go:281 +0x228 fp=0x3370e3c sp=0x3370d98 pc=0x5b01bc main.(*App).withAppPlayer(0x30fb420, {0x869c10, 0xd13698}, 0x300f4f0) /home/volumio/go-librespot/cmd/daemon/main.go:316 +0x52c fp=0x3370ed0 sp=0x3370e3c pc=0x645bac main.(*App).withCredentials(...) /home/volumio/go-librespot/cmd/daemon/main.go:191 main.(*App).SpotifyToken(0x30fb420, {0x869c10, 0xd13698}, {0x3010fd0, 0xb}, {0x315a000, 0x16a}) /home/volumio/go-librespot/cmd/daemon/main.go:183 +0xd8 fp=0x3370f00 sp=0x3370ed0 pc=0x6450a8 main.main() /home/volumio/go-librespot/cmd/daemon/main.go:549 +0x588 fp=0x3370fa8 sp=0x3370f00 pc=0x647e60 runtime.main() /usr/local/go/src/runtime/proc.go:271 +0x2fc fp=0x3370fec sp=0x3370fa8 pc=0x5bfd0 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3370fec sp=0x3370fec pc=0x933b8 goroutine 2 gp=0x30027e8 m=nil [force gc (idle), 3 minutes]: runtime.gopark(0x7c3c58, 0xce7ef0, 0x11, 0xa, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3046fd4 sp=0x3046fc0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.forcegchelper() /usr/local/go/src/runtime/proc.go:326 +0xe4 fp=0x3046fec sp=0x3046fd4 pc=0x5c39c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3046fec sp=0x3046fec pc=0x933b8 created by runtime.init.5 in goroutine 1 /usr/local/go/src/runtime/proc.go:314 +0x1c goroutine 3 gp=0x3002b48 m=nil [GC sweep wait]: runtime.gopark(0x7c3c58, 0xce84f8, 0xc, 0x9, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30477c4 sp=0x30477b0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.bgsweep(0x306e000) /usr/local/go/src/runtime/mgcsweep.go:318 +0x11c fp=0x30477e4 sp=0x30477c4 pc=0x44ce8 runtime.gcenable.gowrap1() /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x30477ec sp=0x30477e4 pc=0x34e08 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30477ec sp=0x30477ec pc=0x933b8 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:203 +0x74 goroutine 4 gp=0x3002c68 m=nil [GC scavenge wait]: runtime.gopark(0x7c3c58, 0xce8ba8, 0xd, 0xa, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3047fb4 sp=0x3047fa0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.(*scavengerState).park(0xce8ba8) /usr/local/go/src/runtime/mgcscavenge.go:425 +0x68 fp=0x3047fc8 sp=0x3047fb4 pc=0x42008 runtime.bgscavenge(0x306e000) /usr/local/go/src/runtime/mgcscavenge.go:658 +0x60 fp=0x3047fe4 sp=0x3047fc8 pc=0x42740 runtime.gcenable.gowrap2() /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x3047fec sp=0x3047fe4 pc=0x34db4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3047fec sp=0x3047fec pc=0x933b8 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:204 +0xbc goroutine 5 gp=0x3003448 m=nil [finalizer wait, 3 minutes]: runtime.gopark(0x7c3b04, 0xd13738, 0x10, 0xa, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x304878c sp=0x3048778 pc=0x5c560 runtime.runfinq() /usr/local/go/src/runtime/mfinal.go:194 +0x110 fp=0x30487ec sp=0x304878c pc=0x33bf4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30487ec sp=0x30487ec pc=0x933b8 created by runtime.createfing in goroutine 1 /usr/local/go/src/runtime/mfinal.go:164 +0x5c goroutine 8 gp=0x3150c68 m=nil [IO wait, 8 minutes]: runtime.gopark(0x7c3c48, 0xf5699f08, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x327bd28 sp=0x327bd14 pc=0x5c560 runtime.netpollblock(0xf5699ef8, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x327bd40 sp=0x327bd28 pc=0x53d6c internal/poll.runtime_pollWait(0xf5699ef8, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x327bd54 sp=0x327bd40 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x3091468, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x327bd68 sp=0x327bd54 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0x3091450) /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x327bdb0 sp=0x327bd68 pc=0x112798 net.(*netFD).accept(0x3091450) /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x327be18 sp=0x327bdb0 pc=0x18363c net.(*TCPListener).accept(0x3026b10) /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x327be30 sp=0x327be18 pc=0x19ba78 net.(*TCPListener).Accept(0x3026b10) /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x327be4c sp=0x327be30 pc=0x19aae4 net/http.(*onceCloseListener).Accept(0x31b0340) <autogenerated>:1 +0x34 fp=0x327be64 sp=0x327be4c pc=0x367e94 net/http.(*Server).Serve(0x31ac0a8, {0x8693d8, 0x3026b10}) /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x327befc sp=0x327be64 pc=0x346550 net/http.Serve(...) /usr/local/go/src/net/http/server.go:2794 main.(*ConcreteApiServer).serve(0x3029080) /home/volumio/go-librespot/cmd/daemon/api_server.go:611 +0x974 fp=0x327bfe4 sp=0x327befc pc=0x63b048 main.NewApiServer.gowrap1() /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x28 fp=0x327bfec sp=0x327bfe4 pc=0x639f18 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x327bfec sp=0x327bfec pc=0x933b8 created by main.NewApiServer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x310 goroutine 63 gp=0x3150fc8 m=nil [chan send, 3633 minutes]: runtime.gopark(0x7c3ae8, 0x32a6530, 0xf, 0x6, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3276e50 sp=0x3276e3c pc=0x5c560 runtime.chansend(0x32a6500, 0x3276ef0, 0x1, 0x52c520) /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x3276e88 sp=0x3276e50 pc=0x1e6a8 runtime.chansend1(0x32a6500, 0x3276ef0) /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x3276ea0 sp=0x3276e88 pc=0x1e32c github.com/devgianlu/go-librespot/dealer.(*Dealer).handleMessage(0x30cf768, 0x3e91220) /home/volumio/go-librespot/dealer/recv.go:181 +0x4f0 fp=0x3276f2c sp=0x3276ea0 pc=0x52c520 github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x30cf768) /home/volumio/go-librespot/dealer/dealer.go:210 +0x3fc fp=0x3276fe4 sp=0x3276f2c pc=0x52b308 github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1() /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x3276fec sp=0x3276fe4 pc=0x52ca3c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3276fec sp=0x3276fec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 73 /home/volumio/go-librespot/dealer/dealer.go:125 +0x98 goroutine 13 gp=0x31510e8 m=nil [GC worker (idle), 5 minutes]: runtime.gopark(0x7c3b14, 0x302ba10, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3046790 sp=0x304677c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x30467ec sp=0x3046790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30467ec sp=0x30467ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 12 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 34 gp=0x3482008 m=nil [GC worker (idle)]: runtime.gopark(0x7c3b14, 0x302ba28, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3488790 sp=0x348877c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x34887ec sp=0x3488790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34887ec sp=0x34887ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 12 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 14 gp=0x3151568 m=nil [GC worker (idle), 5 minutes]: runtime.gopark(0x7c3b14, 0x302ba40, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3049790 sp=0x304977c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x30497ec sp=0x3049790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30497ec sp=0x30497ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 12 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 15 gp=0x3151688 m=nil [GC worker (idle), 5 minutes]: runtime.gopark(0x7c3b14, 0x302ba58, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3049f90 sp=0x3049f7c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x3049fec sp=0x3049f90 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3049fec sp=0x3049fec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 12 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 20 gp=0x3003568 m=nil [IO wait]: runtime.gopark(0x7c3c48, 0xf5699d28, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34e4e84 sp=0x34e4e70 pc=0x5c560 runtime.netpollblock(0xf5699d18, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x34e4e9c sp=0x34e4e84 pc=0x53d6c internal/poll.runtime_pollWait(0xf5699d18, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x34e4eb0 sp=0x34e4e9c pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x31c1a58, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x34e4ec4 sp=0x34e4eb0 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x31c1a40, 0x34cbaa0) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x34e4ef0 sp=0x34e4ec4 pc=0x11339c net.(*rawConn).Read(0x326c8a0, 0x34cbaa0) /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x34e4f10 sp=0x34e4ef0 pc=0x195ea0 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x3218a10, 0x34cba70, 0x0) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x34e4f40 sp=0x34e4f10 pc=0x5509a0 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x34ca788, {0x3320000, 0x10000, 0x10000}) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x44c fp=0x34e4f9c sp=0x34e4f40 pc=0x554988 github.com/grandcat/zeroconf.(*Server).recv4(0x326bdc0, 0x34ca780) /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xec fp=0x34e4fe0 sp=0x34e4f9c pc=0x5ab218 github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1() /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x30 fp=0x34e4fec sp=0x34e4fe0 pc=0x5aaed0 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34e4fec sp=0x34e4fec pc=0x933b8 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 35 /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x7c goroutine 21 gp=0x3003688 m=nil [IO wait, 5141 minutes]: runtime.gopark(0x7c3c48, 0xf5699c88, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x348465c sp=0x3484648 pc=0x5c560 runtime.netpollblock(0xf5699c78, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3484674 sp=0x348465c pc=0x53d6c internal/poll.runtime_pollWait(0xf5699c78, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x3484688 sp=0x3484674 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x31c1aa8, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x348469c sp=0x3484688 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x31c1a90, 0x329c030) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x34846c8 sp=0x348469c pc=0x11339c net.(*rawConn).Read(0x326c8d0, 0x329c030) /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x34846e8 sp=0x34846c8 pc=0x195ea0 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x3218a20, 0x329c000, 0x0) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x3484718 sp=0x34846e8 pc=0x5509a0 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x34ca7b8, {0x328c000, 0x10000, 0x10000}) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x2ec fp=0x348479c sp=0x3484718 pc=0x558310 github.com/grandcat/zeroconf.(*Server).recv6(0x326bdc0, 0x34ca7b0) /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xec fp=0x34847e0 sp=0x348479c pc=0x5ab40c github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2() /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x30 fp=0x34847ec sp=0x34847e0 pc=0x5aae74 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34847ec sp=0x34847ec pc=0x933b8 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 35 /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xe8 goroutine 81 gp=0x33f0008 m=nil [IO wait, 5141 minutes]: runtime.gopark(0x7c3c48, 0xf5699828, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x305987c sp=0x3059868 pc=0x5c560 runtime.netpollblock(0xf5699818, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3059894 sp=0x305987c pc=0x53d6c internal/poll.runtime_pollWait(0xf5699818, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x30598a8 sp=0x3059894 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x316e6f8, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x30598bc sp=0x30598a8 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x316e6e0, {0x343d000, 0x1000, 0x1000}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x3059904 sp=0x30598bc pc=0x10f118 net.(*netFD).Read(0x316e6e0, {0x343d000, 0x1000, 0x1000}) /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x3059930 sp=0x3059904 pc=0x181748 net.(*conn).Read(0x3032890, {0x343d000, 0x1000, 0x1000}) /usr/local/go/src/net/net.go:179 +0x48 fp=0x305995c sp=0x3059930 pc=0x191c64 net.(*TCPConn).Read(0x3032890, {0x343d000, 0x1000, 0x1000}) <autogenerated>:1 +0x44 fp=0x305997c sp=0x305995c pc=0x1a4eb8 io.(*multiReader).Read(0x300e3e0, {0x343d000, 0x1000, 0x1000}) /usr/local/go/src/io/multi.go:26 +0xb4 fp=0x30599a8 sp=0x305997c pc=0x10913c bufio.(*Reader).fill(0x31ff350) /usr/local/go/src/bufio/bufio.go:110 +0x10c fp=0x30599cc sp=0x30599a8 pc=0x2c30f4 bufio.(*Reader).ReadByte(0x31ff350) /usr/local/go/src/bufio/bufio.go:269 +0x28 fp=0x30599d8 sp=0x30599cc pc=0x2c3978 nhooyr.io/websocket.readFrameHeader(0x31ff350, {0x3130538, 0x8, 0x8}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/frame.go:54 +0x74 fp=0x3059a18 sp=0x30599d8 pc=0x488508 nhooyr.io/websocket.(*Conn).readFrameHeader(0x3130508, {0x869bf0, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:188 +0xb4 fp=0x3059ad8 sp=0x3059a18 pc=0x48b16c nhooyr.io/websocket.(*Conn).readLoop(0x3130508, {0x869bf0, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:146 +0x3c fp=0x3059b9c sp=0x3059ad8 pc=0x48ac54 nhooyr.io/websocket.(*Conn).reader(0x3130508, {0x869bf0, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:315 +0x108 fp=0x3059c28 sp=0x3059b9c pc=0x48be68 nhooyr.io/websocket.(*Conn).Reader(...) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:30 nhooyr.io/websocket.(*Conn).Read(0x3130508, {0x869bf0, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:36 +0x30 fp=0x3059c50 sp=0x3059c28 pc=0x48a538 main.(*ConcreteApiServer).serve.func17({0x86950c, 0x314f908}, 0x314f868) /home/volumio/go-librespot/cmd/daemon/api_server.go:581 +0x3c0 fp=0x3059ccc sp=0x3059c50 pc=0x63b918 net/http.HandlerFunc.ServeHTTP(0x31aa180, {0x86950c, 0x314f908}, 0x314f868) /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x3059cdc sp=0x3059ccc pc=0x342b34 net/http.(*ServeMux).ServeHTTP(0x31a0000, {0x86950c, 0x314f908}, 0x314f868) /usr/local/go/src/net/http/server.go:2683 +0x208 fp=0x3059d18 sp=0x3059cdc pc=0x344994 main.(*ConcreteApiServer).serve.(*Cors).Handler.func19({0x86950c, 0x314f908}, 0x314f868) /home/volumio/go/pkg/mod/github.com/rs/cors@v1.11.1/cors.go:289 +0x1f8 fp=0x3059d40 sp=0x3059d18 pc=0x63b318 net/http.HandlerFunc.ServeHTTP(0x31a4160, {0x86950c, 0x314f908}, 0x314f868) /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x3059d50 sp=0x3059d40 pc=0x342b34 net/http.serverHandler.ServeHTTP({0x31ac0a8}, {0x86950c, 0x314f908}, 0x314f868) /usr/local/go/src/net/http/server.go:3137 +0xe0 fp=0x3059d6c sp=0x3059d50 pc=0x346124 net/http.(*conn).serve(0x318e120, {0x869c30, 0x31b2180}) /usr/local/go/src/net/http/server.go:2039 +0x61c fp=0x3059fdc sp=0x3059d6c pc=0x341374 net/http.(*Server).Serve.gowrap3() /usr/local/go/src/net/http/server.go:3285 +0x38 fp=0x3059fec sp=0x3059fdc pc=0x3469c8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3059fec sp=0x3059fec pc=0x933b8 created by net/http.(*Server).Serve in goroutine 8 /usr/local/go/src/net/http/server.go:3285 +0x468 goroutine 71 gp=0x33f0128 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x327cf04 sp=0x327cef0 pc=0x5c560 runtime.selectgo(0x327cfd4, 0x327cfc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x327cfa4 sp=0x327cf04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x33e2300) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x327cfe4 sp=0x327cfa4 pc=0x5392c8 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x327cfec sp=0x327cfe4 pc=0x539208 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x327cfec sp=0x327cfec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 1 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 74 gp=0x34826c8 m=nil [chan receive, 8 minutes]: runtime.gopark(0x7c3ae8, 0x306e2b0, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3043f48 sp=0x3043f34 pc=0x5c560 runtime.chanrecv(0x306e280, 0x3043fd0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x3043f84 sp=0x3043f48 pc=0x1f518 runtime.chanrecv2(0x306e280, 0x3043fd0) /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x3043f98 sp=0x3043f84 pc=0x1f05c main.(*App).withAppPlayer.func1() /home/volumio/go-librespot/cmd/daemon/main.go:264 +0x68 fp=0x3043fec sp=0x3043f98 pc=0x646740 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3043fec sp=0x3043fec pc=0x933b8 created by main.(*App).withAppPlayer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/main.go:261 +0x43c goroutine 75 gp=0x34827e8 m=nil [chan receive, 1052 minutes]: runtime.gopark(0x7c3ae8, 0x306e270, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x355ef38 sp=0x355ef24 pc=0x5c560 runtime.chanrecv(0x306e240, 0x362dfe0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x355ef74 sp=0x355ef38 pc=0x1f518 runtime.chanrecv2(0x306e240, 0x362dfe0) /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x355ef88 sp=0x355ef74 pc=0x1f05c main.(*App).withAppPlayer.func2() /home/volumio/go-librespot/cmd/daemon/main.go:280 +0x6c fp=0x355efec sp=0x355ef88 pc=0x646308 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x355efec sp=0x355efec pc=0x933b8 created by main.(*App).withAppPlayer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/main.go:277 +0x4dc goroutine 76 gp=0x3482908 m=nil [IO wait, 3313 minutes]: runtime.gopark(0x7c3c48, 0xf5699dc8, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3044de8 sp=0x3044dd4 pc=0x5c560 runtime.netpollblock(0xf5699db8, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3044e00 sp=0x3044de8 pc=0x53d6c internal/poll.runtime_pollWait(0xf5699db8, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x3044e14 sp=0x3044e00 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x31c1a08, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x3044e28 sp=0x3044e14 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0x31c19f0) /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x3044e70 sp=0x3044e28 pc=0x112798 net.(*netFD).accept(0x31c19f0) /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x3044ed8 sp=0x3044e70 pc=0x18363c net.(*TCPListener).accept(0x34ce810) /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x3044ef0 sp=0x3044ed8 pc=0x19ba78 net.(*TCPListener).Accept(0x34ce810) /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x3044f0c sp=0x3044ef0 pc=0x19aae4 net/http.(*onceCloseListener).Accept(0x31b0ae0) <autogenerated>:1 +0x34 fp=0x3044f24 sp=0x3044f0c pc=0x367e94 net/http.(*Server).Serve(0x314e008, {0x8693d8, 0x34ce810}) /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x3044fbc sp=0x3044f24 pc=0x346550 net/http.Serve(...) /usr/local/go/src/net/http/server.go:2794 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2() /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x8c fp=0x3044fec sp=0x3044fbc pc=0x5b02b8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3044fec sp=0x3044fec pc=0x933b8 created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1 /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x160 goroutine 47 gp=0x3482c68 m=nil [select, 8 minutes]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3486ea8 sp=0x3486e94 pc=0x5c560 runtime.selectgo(0x3486fa4, 0x3486f6c, 0x0, 0x0, 0x5, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3486f48 sp=0x3486ea8 pc=0x70318 nhooyr.io/websocket.(*Conn).timeoutLoop(0x3130508) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:153 +0x10c fp=0x3486fe4 sp=0x3486f48 pc=0x4853b4 nhooyr.io/websocket.newConn.gowrap1() /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x28 fp=0x3486fec sp=0x3486fe4 pc=0x484fa8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3486fec sp=0x3486fec pc=0x933b8 created by nhooyr.io/websocket.newConn in goroutine 81 /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x544 goroutine 5544335 gp=0x34c2d88 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x305df04 sp=0x305def0 pc=0x5c560 runtime.selectgo(0x305dfd4, 0x305dfc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x305dfa4 sp=0x305df04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x3546280) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x305dfe4 sp=0x305dfa4 pc=0x5392c8 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x305dfec sp=0x305dfe4 pc=0x539208 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x305dfec sp=0x305dfec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 6531660 gp=0x31745a8 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3372f04 sp=0x3372ef0 pc=0x5c560 runtime.selectgo(0x3372fd4, 0x3372fc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3372fa4 sp=0x3372f04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x30a2e80) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x3372fe4 sp=0x3372fa4 pc=0x5392c8 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x3372fec sp=0x3372fe4 pc=0x539208 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3372fec sp=0x3372fec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 9982815 gp=0x39ff7a8 m=nil [sync.Mutex.Lock, 8 minutes]: runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3371ea4 sp=0x3371e90 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15) /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x3371ecc sp=0x3371ea4 pc=0x70f54 sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1) /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x3371ee4 sp=0x3371ecc pc=0x906d0 sync.(*Mutex).lockSlow(0x379eae8) /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x3371f18 sp=0x3371ee4 pc=0x9ec58 sync.(*Mutex).Lock(0x379eae8) /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x3371f2c sp=0x3371f18 pc=0x9e958 github.com/devgianlu/go-librespot/events/impl.(*EventSender).sendEvents(0x379ea80) /home/volumio/go-librespot/events/impl/event-sender.go:146 +0x6a8 fp=0x3371fa4 sp=0x3371f2c pc=0x5399a8 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x379ea80) /home/volumio/go-librespot/events/impl/event-sender.go:101 +0x3c fp=0x3371fe4 sp=0x3371fa4 pc=0x539270 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x3371fec sp=0x3371fe4 pc=0x539208 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3371fec sp=0x3371fec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 10031414 gp=0x34ac908 m=nil [sync.Mutex.Lock, 6 minutes]: runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34ebab8 sp=0x34ebaa4 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15) /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x34ebae0 sp=0x34ebab8 pc=0x70f54 sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1) /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x34ebaf8 sp=0x34ebae0 pc=0x906d0 sync.(*Mutex).lockSlow(0x379eae8) /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x34ebb2c sp=0x34ebaf8 pc=0x9ec58 sync.(*Mutex).Lock(0x379eae8) /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x34ebb40 sp=0x34ebb2c pc=0x9e958 github.com/devgianlu/go-librespot/events/impl.(*EventSender).Enqueue(0x379ea80, 0x370e0c0) /home/volumio/go-librespot/events/impl/event-sender.go:152 +0x38 fp=0x34ebb7c sp=0x34ebb40 pc=0x539a50 github.com/devgianlu/go-librespot/events/impl.(*EventSender).EnqueueWithContext(0x379ea80, {0x867318, 0x36c60f0}) /home/volumio/go-librespot/events/impl/event-sender.go:238 +0xb80 fp=0x34ebc64 sp=0x34ebb7c pc=0x53a790 github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew.func1(0x340a008) /home/volumio/go-librespot/events/impl/event-manager.go:363 +0x1e4 fp=0x34ebcb4 sp=0x34ebc64 pc=0x537308 github.com/devgianlu/go-librespot/events/impl.(*EventManager).withPlaybackInfo(0x358ac40, {0x36ca4a0, 0x10, 0x10}, 0x34ebcec) /home/volumio/go-librespot/events/impl/event-manager.go:77 +0x124 fp=0x34ebcd4 sp=0x34ebcb4 pc=0x533a50 github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew(0x358ac40, {0x36ca4a0, 0x10, 0x10}, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x0) /home/volumio/go-librespot/events/impl/event-manager.go:358 +0x70 fp=0x34ebd10 sp=0x34ebcd4 pc=0x53710c github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x3574820, {0x869c10, 0xd13698}, 0x31527c0, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x140, ...) /home/volumio/go-librespot/player/player.go:424 +0x10c fp=0x34ebe8c sp=0x34ebd10 pc=0x51b8a0 main.(*AppPlayer).prefetchNext(0x3e37310) /home/volumio/go-librespot/cmd/daemon/controls.go:48 +0x254 fp=0x34ebfe4 sp=0x34ebe8c pc=0x63d774 main.(*AppPlayer).prefetchNext-fm() <autogenerated>:1 +0x28 fp=0x34ebfec sp=0x34ebfe4 pc=0x64f28c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34ebfec sp=0x34ebfec pc=0x933b8 created by time.goFunc /usr/local/go/src/time/sleep.go:177 +0x2c goroutine 9982800 gp=0x34c0008 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x336fe98 sp=0x336fe84 pc=0x5c560 runtime.selectgo(0x336ffd4, 0x336ff60, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x336ff38 sp=0x336fe98 pc=0x70318 github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x36369a8) /home/volumio/go-librespot/dealer/dealer.go:138 +0x8c fp=0x336ffe4 sp=0x336ff38 pc=0x52aadc github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap2() /home/volumio/go-librespot/dealer/dealer.go:129 +0x28 fp=0x336ffec sp=0x336ffe4 pc=0x52c9e8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x336ffec sp=0x336ffec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 9982817 /home/volumio/go-librespot/dealer/dealer.go:129 +0x15c goroutine 6531684 gp=0x32c5568 m=nil [chan send, 1177 minutes]: runtime.gopark(0x7c3ae8, 0x31afef0, 0xf, 0x6, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34e7e50 sp=0x34e7e3c pc=0x5c560 runtime.chansend(0x31afec0, 0x34e7ef0, 0x1, 0x52c520) /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x34e7e88 sp=0x34e7e50 pc=0x1e6a8 runtime.chansend1(0x31afec0, 0x34e7ef0) /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x34e7ea0 sp=0x34e7e88 pc=0x1e32c github.com/devgianlu/go-librespot/dealer.(*Dealer).handleMessage(0x34cc588, 0x361e140) /home/volumio/go-librespot/dealer/recv.go:181 +0x4f0 fp=0x34e7f2c sp=0x34e7ea0 pc=0x52c520 github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x34cc588) /home/volumio/go-librespot/dealer/dealer.go:210 +0x3fc fp=0x34e7fe4 sp=0x34e7f2c pc=0x52b308 github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1() /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x34e7fec sp=0x34e7fe4 pc=0x52ca3c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34e7fec sp=0x34e7fec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 6531662 /home/volumio/go-librespot/dealer/dealer.go:125 +0x98 goroutine 4680509 gp=0x33d8488 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x336df04 sp=0x336def0 pc=0x5c560 runtime.selectgo(0x336dfd4, 0x336dfc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x336dfa4 sp=0x336df04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x31a0480) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x336dfe4 sp=0x336dfa4 pc=0x5392c8 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x336dfec sp=0x336dfe4 pc=0x539208 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x336dfec sp=0x336dfec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 9982924 gp=0x3172fc8 m=nil [IO wait, 3 minutes]: runtime.gopark(0x7c3c48, 0xf5699b48, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3279d14 sp=0x3279d00 pc=0x5c560 runtime.netpollblock(0xf5699b38, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x3279d2c sp=0x3279d14 pc=0x53d6c internal/poll.runtime_pollWait(0xf5699b38, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x3279d40 sp=0x3279d2c pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x3574108, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x3279d54 sp=0x3279d40 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x35740f0, {0x36cb05c, 0x3, 0x3}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x3279d9c sp=0x3279d54 pc=0x10f118 net.(*netFD).Read(0x35740f0, {0x36cb05c, 0x3, 0x3}) /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x3279dc8 sp=0x3279d9c pc=0x181748 net.(*conn).Read(0x467e380, {0x36cb05c, 0x3, 0x3}) /usr/local/go/src/net/net.go:179 +0x48 fp=0x3279df4 sp=0x3279dc8 pc=0x191c64 net.(*TCPConn).Read(0x467e380, {0x36cb05c, 0x3, 0x3}) <autogenerated>:1 +0x44 fp=0x3279e14 sp=0x3279df4 pc=0x1a4eb8 io.ReadAtLeast({0x864fac, 0x467e380}, {0x36cb05c, 0x3, 0x3}, 0x3) /usr/local/go/src/io/io.go:335 +0x90 fp=0x3279e40 sp=0x3279e14 pc=0x107ed4 io.ReadFull(...) /usr/local/go/src/io/io.go:354 github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x3e34f40, {0x869c10, 0xd13698}) /home/volumio/go-librespot/ap/shannon.go:124 +0x3a0 fp=0x3279f04 sp=0x3279e40 pc=0x4a0770 github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x3636638) /home/volumio/go-librespot/ap/ap.go:276 +0x68 fp=0x3279fe4 sp=0x3279f04 pc=0x49cfac github.com/devgianlu/go-librespot/ap.(*Accesspoint).reconnect.gowrap1() /home/volumio/go-librespot/ap/ap.go:390 +0x28 fp=0x3279fec sp=0x3279fe4 pc=0x49dc8c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3279fec sp=0x3279fec pc=0x933b8 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).reconnect in goroutine 9982923 /home/volumio/go-librespot/ap/ap.go:390 +0x120 goroutine 3458800 gp=0x330ad88 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x327df04 sp=0x327def0 pc=0x5c560 runtime.selectgo(0x327dfd4, 0x327dfc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x327dfa4 sp=0x327df04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x3547980) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x327dfe4 sp=0x327dfa4 pc=0x5392c8 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x327dfec sp=0x327dfe4 pc=0x539208 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x327dfec sp=0x327dfec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 8377164 gp=0x33d4908 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34e5f04 sp=0x34e5ef0 pc=0x5c560 runtime.selectgo(0x34e5fd4, 0x34e5fc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x34e5fa4 sp=0x34e5f04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x379e800) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x34e5fe4 sp=0x34e5fa4 pc=0x5392c8 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x34e5fec sp=0x34e5fe4 pc=0x539208 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34e5fec sp=0x34e5fec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 75 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 9982977 gp=0x320a908 m=nil [select, 8 minutes]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x305bcb0 sp=0x305bc9c pc=0x5c560 runtime.selectgo(0x305be14, 0x305bd80, 0x0, 0x0, 0x3, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x305bd50 sp=0x305bcb0 pc=0x70318 github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x32a9da0) /home/volumio/go-librespot/audio/provider.go:63 +0x118 fp=0x305bfe4 sp=0x305bd50 pc=0x4a4f58 github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1.gowrap1() /home/volumio/go-librespot/audio/provider.go:53 +0x28 fp=0x305bfec sp=0x305bfe4 pc=0x4a5ca4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x305bfec sp=0x305bfec pc=0x933b8 created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1 in goroutine 9982817 /home/volumio/go-librespot/audio/provider.go:53 +0x60 goroutine 9982816 gp=0x32627e8 m=nil [select, 5 minutes]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3285e74 sp=0x3285e60 pc=0x5c560 runtime.selectgo(0x3285f74, 0x3285f3c, 0x0, 0x0, 0x3, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3285f14 sp=0x3285e74 pc=0x70318 github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x3574820) /home/volumio/go-librespot/player/player.go:189 +0x1fc fp=0x3285fe4 sp=0x3285f14 pc=0x51ab9c github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1() /home/volumio/go-librespot/player/player.go:171 +0x28 fp=0x3285fec sp=0x3285fe4 pc=0x51a77c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3285fec sp=0x3285fec pc=0x933b8 created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 75 /home/volumio/go-librespot/player/player.go:171 +0x1f8 goroutine 9982853 gp=0x339f9e8 m=nil [chan send, 5 minutes]: runtime.gopark(0x7c3ae8, 0x360d270, 0xf, 0x6, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3057d60 sp=0x3057d4c pc=0x5c560 runtime.chansend(0x360d240, 0x3057e04, 0x1, 0x52cc98) /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x3057d98 sp=0x3057d60 pc=0x1e6a8 runtime.chansend1(0x360d240, 0x3057e04) /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x3057db0 sp=0x3057d98 pc=0x1e32c github.com/devgianlu/go-librespot/dealer.(*Dealer).handleRequest(0x36369a8, 0x361e0f0) /home/volumio/go-librespot/dealer/recv.go:230 +0x1dc fp=0x3057f2c sp=0x3057db0 pc=0x52cc98 github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x36369a8) /home/volumio/go-librespot/dealer/dealer.go:213 +0x4d8 fp=0x3057fe4 sp=0x3057f2c pc=0x52b3e4 github.com/devgianlu/go-librespot/dealer.(*Dealer).reconnect.gowrap1() /home/volumio/go-librespot/dealer/dealer.go:296 +0x28 fp=0x3057fec sp=0x3057fe4 pc=0x52bbbc runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3057fec sp=0x3057fec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).reconnect in goroutine 9982799 /home/volumio/go-librespot/dealer/dealer.go:296 +0xf4 goroutine 9982817 gp=0x3efb0e8 m=nil [sync.Mutex.Lock, 5 minutes]: runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x36f351c sp=0x36f3508 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15) /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x36f3544 sp=0x36f351c pc=0x70f54 sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1) /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x36f355c sp=0x36f3544 pc=0x906d0 sync.(*Mutex).lockSlow(0x379eae8) /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x36f3590 sp=0x36f355c pc=0x9ec58 sync.(*Mutex).Lock(0x379eae8) /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x36f35a4 sp=0x36f3590 pc=0x9e958 github.com/devgianlu/go-librespot/events/impl.(*EventSender).Enqueue(0x379ea80, 0x3670a00) /home/volumio/go-librespot/events/impl/event-sender.go:152 +0x38 fp=0x36f35e0 sp=0x36f35a4 pc=0x539a50 github.com/devgianlu/go-librespot/events/impl.(*EventSender).EnqueueWithContext(0x379ea80, {0x867318, 0x36c6000}) /home/volumio/go-librespot/events/impl/event-sender.go:238 +0xb80 fp=0x36f36c8 sp=0x36f35e0 pc=0x53a790 github.com/devgianlu/go-librespot/events/impl.(*EventManager).OnPlayerEnd.func1(0x340a108) /home/volumio/go-librespot/events/impl/event-manager.go:212 +0x1b8 fp=0x36f37d4 sp=0x36f36c8 pc=0x535248 github.com/devgianlu/go-librespot/events/impl.(*EventManager).withPlaybackInfo(0x358ac40, {0x36ca570, 0x10, 0x10}, 0x36f380c) /home/volumio/go-librespot/events/impl/event-manager.go:77 +0x124 fp=0x36f37f4 sp=0x36f37d4 pc=0x533a50 github.com/devgianlu/go-librespot/events/impl.(*EventManager).OnPlayerEnd(0x358ac40, 0x4356a00, 0x2e8a3) /home/volumio/go-librespot/events/impl/event-manager.go:209 +0x7c fp=0x36f381c sp=0x36f37f4 pc=0x535078 main.(*AppPlayer).handlePlayerEvent(0x3e37310, {0x869c10, 0xd13698}, 0x36f3a54) /home/volumio/go-librespot/cmd/daemon/controls.go:143 +0x41c fp=0x36f38f4 sp=0x36f381c pc=0x63e664 main.(*AppPlayer).Run(0x3e37310, {0x869c10, 0xd13698}, 0x365f340) /home/volumio/go-librespot/cmd/daemon/player.go:605 +0x740 fp=0x36f3fd8 sp=0x36f38f4 pc=0x64d760 main.(*App).withAppPlayer.func2.gowrap1() /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x40 fp=0x36f3fec sp=0x36f3fd8 pc=0x6466ac runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x36f3fec sp=0x36f3fec pc=0x933b8 created by main.(*App).withAppPlayer.func2 in goroutine 75 /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x2c8 goroutine 9982798 gp=0x3580b48 m=nil [select]: runtime.gopark(0x7c3c8c, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x336eeb8 sp=0x336eea4 pc=0x5c560 runtime.selectgo(0x336efd4, 0x336ef7c, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x336ef58 sp=0x336eeb8 pc=0x70318 github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x3636638) /home/volumio/go-librespot/ap/ap.go:355 +0x8c fp=0x336efe4 sp=0x336ef58 pc=0x49d7cc github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap2() /home/volumio/go-librespot/ap/ap.go:264 +0x28 fp=0x336efec sp=0x336efe4 pc=0x49cec4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x336efec sp=0x336efec pc=0x933b8 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 9982817 /home/volumio/go-librespot/ap/ap.go:264 +0x15c trap 0x0 error 0x0 oldmask 0x0 r0 0xfffffffc r1 0xffb21e70 r2 0x80 r3 0x8c9 r4 0x0 r5 0x0 r6 0x0 r7 0x15a r8 0x1 r9 0x1 r10 0xce8e18 fp 0xc9170c ip 0xbc0d6635 sp 0xffb21df4 lr 0x1aa1c pc 0x1aac4 cpsr 0x200d0010 fault 0x0 ----- SIGQUIT: quit PC=0x94404 m=2 sigcode=0 goroutine 0 gp=0x30026c8 m=2 mp=0x304a588 [idle]: runtime.futex(0xceb44c, 0x80, 0x0, 0xf6ed6d60, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:417 +0x20 fp=0xf6ed6d40 sp=0xf6ed6d40 pc=0x94404 runtime.futexsleep(0xceb44c, 0x0, 0x86175b70) /usr/local/go/src/runtime/os_linux.go:75 +0x178 fp=0xf6ed6d68 sp=0xf6ed6d40 pc=0x54e3c runtime.notetsleep_internal(0xceb44c, 0x86175b70) /usr/local/go/src/runtime/lock_futex.go:212 +0x124 fp=0xf6ed6d90 sp=0xf6ed6d68 pc=0x24b6c runtime.notetsleep(0xceb44c, 0x86175b70) /usr/local/go/src/runtime/lock_futex.go:235 +0x48 fp=0xf6ed6da4 sp=0xf6ed6d90 pc=0x24d0c runtime.sysmon() /usr/local/go/src/runtime/proc.go:6001 +0x2e0 fp=0xf6ed6e00 sp=0xf6ed6da4 pc=0x69cb8 runtime.mstart1() /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf6ed6e10 sp=0xf6ed6e00 pc=0x5f5fc runtime.mstart0() /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf6ed6e24 sp=0xf6ed6e10 pc=0x5f570 runtime.mstart() /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf6ed6e28 sp=0xf6ed6e24 pc=0x9168c trap 0x0 error 0x0 oldmask 0x0 r0 0xfffffffc r1 0x80 r2 0x0 r3 0xf6ed6d60 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x0 r9 0x0 r10 0x30026c8 fp 0x3b9aca00 ip 0x0 sp 0xf6ed6d40 lr 0x54e3c pc 0x94404 cpsr 0x60070010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=3 sigcode=0 goroutine 0 gp=0x3002a28 m=3 mp=0x304ab08 [idle]: runtime.futex(0x304abd0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf66d5cc4 sp=0xf66d5cc4 pc=0x94400 runtime.futexsleep(0x304abd0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf66d5cec sp=0xf66d5cc4 pc=0x54d20 runtime.notesleep(0x304abd0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf66d5d0c sp=0xf66d5cec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf66d5d20 sp=0xf66d5d0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf66d5dcc sp=0xf66d5d20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf66d5de8 sp=0xf66d5dcc pc=0x643bc runtime.park_m(0x3482008) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf66d5e08 sp=0xf66d5de8 pc=0x64c34 runtime.mcall(0xf66d6450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf66d5e10 sp=0xf66d5e08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x304abd0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0x1 r10 0x3002a28 fp 0x6 ip 0x3d9651d9 sp 0xf66d5cc4 lr 0x54d20 pc 0x94400 cpsr 0xa00b0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=4 sigcode=0 goroutine 0 gp=0x3002ea8 m=4 mp=0x304b088 [idle]: runtime.futex(0x304b150, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf5ed4cc4 sp=0xf5ed4cc4 pc=0x94400 runtime.futexsleep(0x304b150, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf5ed4cec sp=0xf5ed4cc4 pc=0x54d20 runtime.notesleep(0x304b150) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf5ed4d0c sp=0xf5ed4cec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf5ed4d20 sp=0xf5ed4d0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf5ed4dcc sp=0xf5ed4d20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf5ed4de8 sp=0xf5ed4dcc pc=0x643bc runtime.park_m(0x3002c68) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf5ed4e08 sp=0xf5ed4de8 pc=0x64c34 runtime.mcall(0xf5ed5450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf5ed4e10 sp=0xf5ed4e08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x304b150 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x3002ea8 fp 0x6 ip 0xbc0c5f83 sp 0xf5ed4cc4 lr 0x54d20 pc 0x94400 cpsr 0xa00d0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=5 sigcode=0 goroutine 0 gp=0x30030e8 m=5 mp=0x304b608 [idle]: runtime.futex(0x304b6d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf54fecdc sp=0xf54fecdc pc=0x94400 runtime.futexsleep(0x304b6d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf54fed04 sp=0xf54fecdc pc=0x54d20 runtime.notesleep(0x304b6d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf54fed24 sp=0xf54fed04 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf54fed38 sp=0xf54fed24 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf54fede4 sp=0xf54fed38 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf54fee00 sp=0xf54fede4 pc=0x643bc runtime.goexit0(0x39fdc28) /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf54fee08 sp=0xf54fee00 pc=0x6527c runtime.mcall(0xf54ff450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf54fee10 sp=0xf54fee08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x304b6d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x3ab49 r9 0xceb3c0 r10 0x30030e8 fp 0x6 ip 0x0 sp 0xf54fecdc lr 0x54d20 pc 0x94400 cpsr 0xa0010010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=6 sigcode=0 goroutine 0 gp=0x3003328 m=6 mp=0x304bb88 [idle]: runtime.futex(0xd13eb4, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf46fedac sp=0xf46fedac pc=0x94400 runtime.futexsleep(0xd13eb4, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf46fedd4 sp=0xf46fedac pc=0x54d20 runtime.notesleep(0xd13eb4) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf46fedf4 sp=0xf46fedd4 pc=0x249e8 runtime.templateThread() /usr/local/go/src/runtime/proc.go:2760 +0x90 fp=0xf46fee00 sp=0xf46fedf4 pc=0x61084 runtime.mstart1() /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf46fee10 sp=0xf46fee00 pc=0x5f5fc runtime.mstart0() /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf46fee24 sp=0xf46fee10 pc=0x5f570 runtime.mstart() /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf46fee28 sp=0xf46fee24 pc=0x9168c trap 0x0 error 0x0 oldmask 0x0 r0 0xd13eb4 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0xf46ff450 r9 0xf46ff4c0 r10 0x3003328 fp 0x6 ip 0x7 sp 0xf46fedac lr 0x54d20 pc 0x94400 cpsr 0xa00e0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=7 sigcode=0 goroutine 0 gp=0x3151448 m=7 mp=0x33a6008 [idle]: runtime.futex(0x33a60d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf3efdcdc sp=0xf3efdcdc pc=0x94400 runtime.futexsleep(0x33a60d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf3efdd04 sp=0xf3efdcdc pc=0x54d20 runtime.notesleep(0x33a60d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf3efdd24 sp=0xf3efdd04 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf3efdd38 sp=0xf3efdd24 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf3efdde4 sp=0xf3efdd38 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf3efde00 sp=0xf3efdde4 pc=0x643bc runtime.goexit0(0x39f6368) /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf3efde08 sp=0xf3efde00 pc=0x6527c runtime.mcall(0xf3efe450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf3efde10 sp=0xf3efde08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x33a60d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x3151448 fp 0x6 ip 0xa9853b4d sp 0xf3efdcdc lr 0x54d20 pc 0x94400 cpsr 0xa0010010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=8 sigcode=0 goroutine 0 gp=0x33f07e8 m=8 mp=0x304d188 [idle]: runtime.futex(0x304d250, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf34fecdc sp=0xf34fecdc pc=0x94400 runtime.futexsleep(0x304d250, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf34fed04 sp=0xf34fecdc pc=0x54d20 runtime.notesleep(0x304d250) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf34fed24 sp=0xf34fed04 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf34fed38 sp=0xf34fed24 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf34fede4 sp=0xf34fed38 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf34fee00 sp=0xf34fede4 pc=0x643bc runtime.goexit0(0x3202008) /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf34fee08 sp=0xf34fee00 pc=0x6527c runtime.mcall(0xf34ff450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf34fee10 sp=0xf34fee08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x304d250 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x33f07e8 fp 0x6 ip 0xc14b44f3 sp 0xf34fecdc lr 0x54d20 pc 0x94400 cpsr 0xa00d0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=9 sigcode=0 goroutine 0 gp=0x33d6c68 m=9 mp=0x3e45088 [idle]: runtime.futex(0x3e45150, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf27e3cc4 sp=0xf27e3cc4 pc=0x94400 runtime.futexsleep(0x3e45150, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf27e3cec sp=0xf27e3cc4 pc=0x54d20 runtime.notesleep(0x3e45150) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf27e3d0c sp=0xf27e3cec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf27e3d20 sp=0xf27e3d0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf27e3dcc sp=0xf27e3d20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf27e3de8 sp=0xf27e3dcc pc=0x643bc runtime.park_m(0x3002b48) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf27e3e08 sp=0xf27e3de8 pc=0x64c34 runtime.mcall(0xf27e4450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf27e3e10 sp=0xf27e3e08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x3e45150 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x33d6c68 fp 0x6 ip 0xddcd2dff sp 0xf27e3cc4 lr 0x54d20 pc 0x94400 cpsr 0xa00d0010 fault 0x0 signal: aborted ``` </details>
Author
Owner

@2opremio commented on GitHub (Jun 5, 2025):

I have thrown the dump into https://github.com/openziti/goroutine-analyzer and it seems like the player is stuck trying to acquire a mutex at (*EventSender).Enqueue()

goroutine 10031414 gp=0x34ac908 m=nil [sync.Mutex.Lock, 6 minutes]:
runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34ebab8 sp=0x34ebaa4 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15)
        /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x34ebae0 sp=0x34ebab8 pc=0x70f54
sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1)
        /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x34ebaf8 sp=0x34ebae0 pc=0x906d0
sync.(*Mutex).lockSlow(0x379eae8)
        /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x34ebb2c sp=0x34ebaf8 pc=0x9ec58
sync.(*Mutex).Lock(0x379eae8)
        /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x34ebb40 sp=0x34ebb2c pc=0x9e958
github.com/devgianlu/go-librespot/events/impl.(*EventSender).Enqueue(0x379ea80, 0x370e0c0)
        /home/volumio/go-librespot/events/impl/event-sender.go:152 +0x38 fp=0x34ebb7c sp=0x34ebb40 pc=0x539a50
github.com/devgianlu/go-librespot/events/impl.(*EventSender).EnqueueWithContext(0x379ea80, {0x867318, 0x36c60f0})
        /home/volumio/go-librespot/events/impl/event-sender.go:238 +0xb80 fp=0x34ebc64 sp=0x34ebb7c pc=0x53a790
github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew.func1(0x340a008)
        /home/volumio/go-librespot/events/impl/event-manager.go:363 +0x1e4 fp=0x34ebcb4 sp=0x34ebc64 pc=0x537308
github.com/devgianlu/go-librespot/events/impl.(*EventManager).withPlaybackInfo(0x358ac40, {0x36ca4a0, 0x10, 0x10}, 0x34ebcec)
        /home/volumio/go-librespot/events/impl/event-manager.go:77 +0x124 fp=0x34ebcd4 sp=0x34ebcb4 pc=0x533a50
github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew(0x358ac40, {0x36ca4a0, 0x10, 0x10}, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x0)
        /home/volumio/go-librespot/events/impl/event-manager.go:358 +0x70 fp=0x34ebd10 sp=0x34ebcd4 pc=0x53710c
github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x3574820, {0x869c10, 0xd13698}, 0x31527c0, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x140, ...)
        /home/volumio/go-librespot/player/player.go:424 +0x10c fp=0x34ebe8c sp=0x34ebd10 pc=0x51b8a0
main.(*AppPlayer).prefetchNext(0x3e37310)
        /home/volumio/go-librespot/cmd/daemon/controls.go:48 +0x254 fp=0x34ebfe4 sp=0x34ebe8c pc=0x63d774
main.(*AppPlayer).prefetchNext-fm()
        <autogenerated>:1 +0x28 fp=0x34ebfec sp=0x34ebfe4 pc=0x64f28c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34ebfec sp=0x34ebfec pc=0x933b8
created by time.goFunc
        /usr/local/go/src/time/sleep.go:177 +0x2c
<!-- gh-comment-id:2942078664 --> @2opremio commented on GitHub (Jun 5, 2025): I have thrown the dump into https://github.com/openziti/goroutine-analyzer and it seems like the player is stuck trying to acquire a mutex at `(*EventSender).Enqueue()` ``` goroutine 10031414 gp=0x34ac908 m=nil [sync.Mutex.Lock, 6 minutes]: runtime.gopark(0x7c3c58, 0xcee200, 0x15, 0x5, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x34ebab8 sp=0x34ebaa4 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.semacquire1(0x379eaec, 0x0, 0x3, 0x1, 0x15) /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x34ebae0 sp=0x34ebab8 pc=0x70f54 sync.runtime_SemacquireMutex(0x379eaec, 0x0, 0x1) /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x34ebaf8 sp=0x34ebae0 pc=0x906d0 sync.(*Mutex).lockSlow(0x379eae8) /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x34ebb2c sp=0x34ebaf8 pc=0x9ec58 sync.(*Mutex).Lock(0x379eae8) /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x34ebb40 sp=0x34ebb2c pc=0x9e958 github.com/devgianlu/go-librespot/events/impl.(*EventSender).Enqueue(0x379ea80, 0x370e0c0) /home/volumio/go-librespot/events/impl/event-sender.go:152 +0x38 fp=0x34ebb7c sp=0x34ebb40 pc=0x539a50 github.com/devgianlu/go-librespot/events/impl.(*EventSender).EnqueueWithContext(0x379ea80, {0x867318, 0x36c60f0}) /home/volumio/go-librespot/events/impl/event-sender.go:238 +0xb80 fp=0x34ebc64 sp=0x34ebb7c pc=0x53a790 github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew.func1(0x340a008) /home/volumio/go-librespot/events/impl/event-manager.go:363 +0x1e4 fp=0x34ebcb4 sp=0x34ebc64 pc=0x537308 github.com/devgianlu/go-librespot/events/impl.(*EventManager).withPlaybackInfo(0x358ac40, {0x36ca4a0, 0x10, 0x10}, 0x34ebcec) /home/volumio/go-librespot/events/impl/event-manager.go:77 +0x124 fp=0x34ebcd4 sp=0x34ebcb4 pc=0x533a50 github.com/devgianlu/go-librespot/events/impl.(*EventManager).PreStreamLoadNew(0x358ac40, {0x36ca4a0, 0x10, 0x10}, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x0) /home/volumio/go-librespot/events/impl/event-manager.go:358 +0x70 fp=0x34ebd10 sp=0x34ebcd4 pc=0x53710c github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x3574820, {0x869c10, 0xd13698}, 0x31527c0, {{0x38170b8, 0x5}, {0x36ca480, 0x10, 0x10}}, 0x140, ...) /home/volumio/go-librespot/player/player.go:424 +0x10c fp=0x34ebe8c sp=0x34ebd10 pc=0x51b8a0 main.(*AppPlayer).prefetchNext(0x3e37310) /home/volumio/go-librespot/cmd/daemon/controls.go:48 +0x254 fp=0x34ebfe4 sp=0x34ebe8c pc=0x63d774 main.(*AppPlayer).prefetchNext-fm() <autogenerated>:1 +0x28 fp=0x34ebfec sp=0x34ebfe4 pc=0x64f28c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x34ebfec sp=0x34ebfec pc=0x933b8 created by time.goFunc /usr/local/go/src/time/sleep.go:177 +0x2c ```
Author
Owner

@2opremio commented on GitHub (Jun 5, 2025):

Unfortunately I don't have the time to dive into the code and try to solve it right now.

<!-- gh-comment-id:2942089266 --> @2opremio commented on GitHub (Jun 5, 2025): Unfortunately I don't have the time to dive into the code and try to solve it right now.
Author
Owner

@devgianlu commented on GitHub (Jun 6, 2025):

Yeah that was a problem, but that code isn't open source so it's impossible that it is causing problems for you. Need another dump.

<!-- gh-comment-id:2948717018 --> @devgianlu commented on GitHub (Jun 6, 2025): Yeah that was a problem, but that code isn't open source so it's impossible that it is causing problems for you. Need another dump.
Author
Owner

@2opremio commented on GitHub (Jun 6, 2025):

I bet that we are having a deadlock with the same mutex though ... I will post a goroutine dump next time it happens.

<!-- gh-comment-id:2951134608 --> @2opremio commented on GitHub (Jun 6, 2025): I bet that we are having a deadlock with the same mutex though ... I will post a goroutine dump next time it happens.
Author
Owner

@devgianlu commented on GitHub (Jun 13, 2025):

New sample
time="2025-06-13T11:46:47+02:00" level=error msg="did not receive last pong from dealer, 570s passed"
time="2025-06-13T11:47:17+02:00" level=error msg="did not receive last pong from dealer, 600s passed"
time="2025-06-13T11:47:47+02:00" level=error msg="did not receive last pong from dealer, 630s passed"
time="2025-06-13T11:48:17+02:00" level=error msg="did not receive last pong from dealer, 660s passed"
time="2025-06-13T11:48:47+02:00" level=trace msg="received accesspoint ping"
time="2025-06-13T11:48:47+02:00" level=trace msg="received accesspoint pong ack"
time="2025-06-13T11:48:47+02:00" level=error msg="did not receive last pong from dealer, 690s passed"
time="2025-06-13T11:49:17+02:00" level=error msg="did not receive last pong from dealer, 720s passed"
time="2025-06-13T11:49:26+02:00" level=warning msg="skipping mercury packet with type: PacketTypeMercuryEvent"
time="2025-06-13T11:49:47+02:00" level=error msg="did not receive last pong from dealer, 750s passed"
time="2025-06-13T11:50:17+02:00" level=error msg="did not receive last pong from dealer, 780s passed"
time="2025-06-13T11:50:47+02:00" level=trace msg="received accesspoint ping"
time="2025-06-13T11:50:47+02:00" level=trace msg="received accesspoint pong ack"
time="2025-06-13T11:50:47+02:00" level=error msg="did not receive last pong from dealer, 810s passed"
SIGABRT: abort
PC=0x1aac4 m=0 sigcode=0
goroutine 0 gp=0xce8e18 m=0 mp=0xce96c0 [idle]:
runtime/internal/syscall.Syscall6(0x15a, 0x4, 0xffc37a68, 0x80, 0x1b52, 0x0, 0x0)
        /usr/local/go/src/runtime/internal/syscall/asm_linux_arm.s:17 +0x20 fp=0xffc379ec sp=0xffc379ec pc=0x1aac4
runtime/internal/syscall.EpollWait(0x4, {0xffc37a68, 0x80, 0x80}, 0x80, 0x1b52)
        /usr/local/go/src/runtime/internal/syscall/syscall_linux.go:55 +0x60 fp=0xffc37a1c sp=0xffc379ec pc=0x1aa1c
runtime.netpoll(0x1a0e6d0f4)
        /usr/local/go/src/runtime/netpoll_epoll.go:118 +0x17c fp=0xffc38288 sp=0xffc37a1c pc=0x54960
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3470 +0xbbc fp=0xffc38334 sp=0xffc38288 pc=0x62c24
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xffc38350 sp=0xffc38334 pc=0x643bc
runtime.goexit0(0x29ddc28)
        /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xffc38358 sp=0xffc38350 pc=0x6527c
runtime.mcall(0x863694)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xffc38360 sp=0xffc38358 pc=0x916ec
goroutine 1 gp=0x2802128 m=nil [select, 2548 minutes]:
runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2b26cf8 sp=0x2b26ce4 pc=0x5c560
runtime.selectgo(0x2b26df8, 0x28a7dc4, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2b26d98 sp=0x2b26cf8 pc=0x70318
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x2a96d20, 0x2b26e90)
        /home/volumio/go-librespot/zeroconf/zeroconf.go:281 +0x228 fp=0x2b26e3c sp=0x2b26d98 pc=0x5b0210
main.(*App).withAppPlayer(0x28d4540, {0x869c90, 0xd13698}, 0x2897130)
        /home/volumio/go-librespot/cmd/daemon/main.go:316 +0x52c fp=0x2b26ed0 sp=0x2b26e3c pc=0x645c00
main.(*App).withCredentials(...)
        /home/volumio/go-librespot/cmd/daemon/main.go:191
main.(*App).SpotifyToken(0x28d4540, {0x869c90, 0xd13698}, {0x2892f00, 0xb}, {0x28fc000, 0x16a})
        /home/volumio/go-librespot/cmd/daemon/main.go:183 +0xd8 fp=0x2b26f00 sp=0x2b26ed0 pc=0x6450fc
main.main()
        /home/volumio/go-librespot/cmd/daemon/main.go:549 +0x588 fp=0x2b26fa8 sp=0x2b26f00 pc=0x647eb4
runtime.main()
        /usr/local/go/src/runtime/proc.go:271 +0x2fc fp=0x2b26fec sp=0x2b26fa8 pc=0x5bfd0
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2b26fec sp=0x2b26fec pc=0x933b8
goroutine 2 gp=0x28027e8 m=nil [force gc (idle), 3 minutes]:
runtime.gopark(0x7c3cc8, 0xce7ef0, 0x11, 0xa, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2846fd4 sp=0x2846fc0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.forcegchelper()
        /usr/local/go/src/runtime/proc.go:326 +0xe4 fp=0x2846fec sp=0x2846fd4 pc=0x5c39c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2846fec sp=0x2846fec pc=0x933b8
created by runtime.init.5 in goroutine 1
        /usr/local/go/src/runtime/proc.go:314 +0x1c
goroutine 3 gp=0x2802b48 m=nil [GC sweep wait]:
runtime.gopark(0x7c3cc8, 0xce84f8, 0xc, 0x9, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x28477c4 sp=0x28477b0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.bgsweep(0x286e000)
        /usr/local/go/src/runtime/mgcsweep.go:318 +0x11c fp=0x28477e4 sp=0x28477c4 pc=0x44ce8
runtime.gcenable.gowrap1()
        /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x28477ec sp=0x28477e4 pc=0x34e08
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28477ec sp=0x28477ec pc=0x933b8
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:203 +0x74
goroutine 4 gp=0x2802c68 m=nil [GC scavenge wait]:
runtime.gopark(0x7c3cc8, 0xce8ba8, 0xd, 0xa, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2847fb4 sp=0x2847fa0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.(*scavengerState).park(0xce8ba8)
        /usr/local/go/src/runtime/mgcscavenge.go:425 +0x68 fp=0x2847fc8 sp=0x2847fb4 pc=0x42008
runtime.bgscavenge(0x286e000)
        /usr/local/go/src/runtime/mgcscavenge.go:658 +0x60 fp=0x2847fe4 sp=0x2847fc8 pc=0x42740
runtime.gcenable.gowrap2()
        /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x2847fec sp=0x2847fe4 pc=0x34db4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2847fec sp=0x2847fec pc=0x933b8
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:204 +0xbc
goroutine 5 gp=0x2803448 m=nil [finalizer wait, 9 minutes]:
runtime.gopark(0x7c3b74, 0xd13738, 0x10, 0xa, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x284878c sp=0x2848778 pc=0x5c560
runtime.runfinq()
        /usr/local/go/src/runtime/mfinal.go:194 +0x110 fp=0x28487ec sp=0x284878c pc=0x33bf4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28487ec sp=0x28487ec pc=0x933b8
created by runtime.createfing in goroutine 1
        /usr/local/go/src/runtime/mfinal.go:164 +0x5c
goroutine 20 gp=0x28c5208 m=nil [IO wait, 68 minutes]:
runtime.gopark(0x7c3cb8, 0xf54a9f08, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285bd28 sp=0x285bd14 pc=0x5c560
runtime.netpollblock(0xf54a9ef8, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285bd40 sp=0x285bd28 pc=0x53d6c
internal/poll.runtime_pollWait(0xf54a9ef8, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285bd54 sp=0x285bd40 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x28bb288, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285bd68 sp=0x285bd54 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x28bb270)
        /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x285bdb0 sp=0x285bd68 pc=0x112798
net.(*netFD).accept(0x28bb270)
        /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x285be18 sp=0x285bdb0 pc=0x18363c
net.(*TCPListener).accept(0x289aa20)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x285be30 sp=0x285be18 pc=0x19ba78
net.(*TCPListener).Accept(0x289aa20)
        /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x285be4c sp=0x285be30 pc=0x19aae4
net/http.(*onceCloseListener).Accept(0x2a90340)
        <autogenerated>:1 +0x34 fp=0x285be64 sp=0x285be4c pc=0x367e94
net/http.(*Server).Serve(0x2a8c0a8, {0x869458, 0x289aa20})
        /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x285befc sp=0x285be64 pc=0x346550
net/http.Serve(...)
        /usr/local/go/src/net/http/server.go:2794
main.(*ConcreteApiServer).serve(0x289eb40)
        /home/volumio/go-librespot/cmd/daemon/api_server.go:611 +0x974 fp=0x285bfe4 sp=0x285befc pc=0x63b09c
main.NewApiServer.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x28 fp=0x285bfec sp=0x285bfe4 pc=0x639f6c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285bfec sp=0x285bfec pc=0x933b8
created by main.NewApiServer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x310
goroutine 34 gp=0x2aa0128 m=nil [GC worker (idle)]:
runtime.gopark(0x7c3b84, 0x282b068, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be2790 sp=0x2be277c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2be27ec sp=0x2be2790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be27ec sp=0x2be27ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 26
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 50 gp=0x2cb6008 m=nil [GC worker (idle), 11 minutes]:
runtime.gopark(0x7c3b84, 0x2cb8000, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bde790 sp=0x2bde77c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2bde7ec sp=0x2bde790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bde7ec sp=0x2bde7ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 26
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 51 gp=0x2cb6128 m=nil [GC worker (idle), 14 minutes]:
runtime.gopark(0x7c3b84, 0x2cb8018, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bdef90 sp=0x2bdef7c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2bdefec sp=0x2bdef90 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bdefec sp=0x2bdefec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 26
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 52 gp=0x2cb6248 m=nil [GC worker (idle), 11 minutes]:
runtime.gopark(0x7c3b84, 0x2cb8030, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bdf790 sp=0x2bdf77c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2bdf7ec sp=0x2bdf790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bdf7ec sp=0x2bdf7ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 26
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 53 gp=0x2803568 m=nil [IO wait]:
runtime.gopark(0x7c3cb8, 0xf54a9d28, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285de84 sp=0x285de70 pc=0x5c560
runtime.netpollblock(0xf54a9d18, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285de9c sp=0x285de84 pc=0x53d6c
internal/poll.runtime_pollWait(0xf54a9d18, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285deb0 sp=0x285de9c pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x28bb878, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285dec4 sp=0x285deb0 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x28bb860, 0x3b9d290)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x285def0 sp=0x285dec4 pc=0x11339c
net.(*rawConn).Read(0x2cc86e8, 0x3b9d290)
        /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x285df10 sp=0x285def0 pc=0x195ea0
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2cc3970, 0x3b9d260, 0x0)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x285df40 sp=0x285df10 pc=0x5509f4
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x2800428, {0x2b00000, 0x10000, 0x10000})
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x44c fp=0x285df9c sp=0x285df40 pc=0x5549dc
github.com/grandcat/zeroconf.(*Server).recv4(0x2bc7c40, 0x2800420)
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xec fp=0x285dfe0 sp=0x285df9c pc=0x5ab26c
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1()
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x30 fp=0x285dfec sp=0x285dfe0 pc=0x5aaf24
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285dfec sp=0x285dfec pc=0x933b8
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 6
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x7c
goroutine 54 gp=0x2803688 m=nil [IO wait, 2548 minutes]:
runtime.gopark(0x7c3cb8, 0xf54a9c88, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2abbe5c sp=0x2abbe48 pc=0x5c560
runtime.netpollblock(0xf54a9c78, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2abbe74 sp=0x2abbe5c pc=0x53d6c
internal/poll.runtime_pollWait(0xf54a9c78, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2abbe88 sp=0x2abbe74 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x28bb8c8, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2abbe9c sp=0x2abbe88 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x28bb8b0, 0x2a9a030)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x2abbec8 sp=0x2abbe9c pc=0x11339c
net.(*rawConn).Read(0x2cc8718, 0x2a9a030)
        /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x2abbee8 sp=0x2abbec8 pc=0x195ea0
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2cc3980, 0x2a9a000, 0x0)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x2abbf18 sp=0x2abbee8 pc=0x5509f4
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x2800458, {0x2abc000, 0x10000, 0x10000})
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x2ec fp=0x2abbf9c sp=0x2abbf18 pc=0x558364
github.com/grandcat/zeroconf.(*Server).recv6(0x2bc7c40, 0x2800450)
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xec fp=0x2abbfe0 sp=0x2abbf9c pc=0x5ab460
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2()
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x30 fp=0x2abbfec sp=0x2abbfe0 pc=0x5aaec8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2abbfec sp=0x2abbfec pc=0x933b8
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 6
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xe8
goroutine 75 gp=0x2aa0908 m=nil [chan receive, 68 minutes]:
runtime.gopark(0x7c3b58, 0x28d81b0, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be0f48 sp=0x2be0f34 pc=0x5c560
runtime.chanrecv(0x28d8180, 0x2be0fd0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2be0f84 sp=0x2be0f48 pc=0x1f518
runtime.chanrecv2(0x28d8180, 0x2be0fd0)
        /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2be0f98 sp=0x2be0f84 pc=0x1f05c
main.(*App).withAppPlayer.func1()
        /home/volumio/go-librespot/cmd/daemon/main.go:264 +0x68 fp=0x2be0fec sp=0x2be0f98 pc=0x646794
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be0fec sp=0x2be0fec pc=0x933b8
created by main.(*App).withAppPlayer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/main.go:261 +0x43c
goroutine 76 gp=0x2aa0a28 m=nil [chan receive, 69 minutes]:
runtime.gopark(0x7c3b58, 0x28d8170, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2f94738 sp=0x2f94724 pc=0x5c560
runtime.chanrecv(0x28d8140, 0x2f35fe0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2f94774 sp=0x2f94738 pc=0x1f518
runtime.chanrecv2(0x28d8140, 0x2f35fe0)
        /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2f94788 sp=0x2f94774 pc=0x1f05c
main.(*App).withAppPlayer.func2()
        /home/volumio/go-librespot/cmd/daemon/main.go:280 +0x6c fp=0x2f947ec sp=0x2f94788 pc=0x64635c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2f947ec sp=0x2f947ec pc=0x933b8
created by main.(*App).withAppPlayer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/main.go:277 +0x4dc
goroutine 77 gp=0x2aa0b48 m=nil [IO wait]:
runtime.gopark(0x7c3cb8, 0xf54a9dc8, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be1de8 sp=0x2be1dd4 pc=0x5c560
runtime.netpollblock(0xf54a9db8, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2be1e00 sp=0x2be1de8 pc=0x53d6c
internal/poll.runtime_pollWait(0xf54a9db8, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2be1e14 sp=0x2be1e00 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x28bb828, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2be1e28 sp=0x2be1e14 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x28bb810)
        /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x2be1e70 sp=0x2be1e28 pc=0x112798
net.(*netFD).accept(0x28bb810)
        /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x2be1ed8 sp=0x2be1e70 pc=0x18363c
net.(*TCPListener).accept(0x2a92b40)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x2be1ef0 sp=0x2be1ed8 pc=0x19ba78
net.(*TCPListener).Accept(0x2a92b40)
        /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x2be1f0c sp=0x2be1ef0 pc=0x19aae4
net/http.(*onceCloseListener).Accept(0x2a58620)
        <autogenerated>:1 +0x34 fp=0x2be1f24 sp=0x2be1f0c pc=0x367e94
net/http.(*Server).Serve(0x2ae6968, {0x869458, 0x2a92b40})
        /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x2be1fbc sp=0x2be1f24 pc=0x346550
net/http.Serve(...)
        /usr/local/go/src/net/http/server.go:2794
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2()
        /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x8c fp=0x2be1fec sp=0x2be1fbc pc=0x5b030c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be1fec sp=0x2be1fec pc=0x933b8
created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1
        /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x160
goroutine 100 gp=0x28c45a8 m=nil [select, 14 minutes]:
runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be46a8 sp=0x2be4694 pc=0x5c560
runtime.selectgo(0x2be47a4, 0x2be476c, 0x0, 0x0, 0x5, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2be4748 sp=0x2be46a8 pc=0x70318
nhooyr.io/websocket.(*Conn).timeoutLoop(0x28da648)
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:153 +0x10c fp=0x2be47e4 sp=0x2be4748 pc=0x4853b4
nhooyr.io/websocket.newConn.gowrap1()
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x28 fp=0x2be47ec sp=0x2be47e4 pc=0x484fa8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be47ec sp=0x2be47ec pc=0x933b8
created by nhooyr.io/websocket.newConn in goroutine 41
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x544
goroutine 41 gp=0x28c47e8 m=nil [IO wait, 2548 minutes]:
runtime.gopark(0x7c3cb8, 0xf54a9828, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c7587c sp=0x2c75868 pc=0x5c560
runtime.netpollblock(0xf54a9818, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2c75894 sp=0x2c7587c pc=0x53d6c
internal/poll.runtime_pollWait(0xf54a9818, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2c758a8 sp=0x2c75894 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x29ee068, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2c758bc sp=0x2c758a8 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x29ee050, {0x29d8000, 0x1000, 0x1000})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x2c75904 sp=0x2c758bc pc=0x10f118
net.(*netFD).Read(0x29ee050, {0x29d8000, 0x1000, 0x1000})
        /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x2c75930 sp=0x2c75904 pc=0x181748
net.(*conn).Read(0x2a8a2c8, {0x29d8000, 0x1000, 0x1000})
        /usr/local/go/src/net/net.go:179 +0x48 fp=0x2c7595c sp=0x2c75930 pc=0x191c64
net.(*TCPConn).Read(0x2a8a2c8, {0x29d8000, 0x1000, 0x1000})
        <autogenerated>:1 +0x44 fp=0x2c7597c sp=0x2c7595c pc=0x1a4eb8
io.(*multiReader).Read(0x280e550, {0x29d8000, 0x1000, 0x1000})
        /usr/local/go/src/io/multi.go:26 +0xb4 fp=0x2c759a8 sp=0x2c7597c pc=0x10913c
bufio.(*Reader).fill(0x2a82a80)
        /usr/local/go/src/bufio/bufio.go:110 +0x10c fp=0x2c759cc sp=0x2c759a8 pc=0x2c30f4
bufio.(*Reader).ReadByte(0x2a82a80)
        /usr/local/go/src/bufio/bufio.go:269 +0x28 fp=0x2c759d8 sp=0x2c759cc pc=0x2c3978
nhooyr.io/websocket.readFrameHeader(0x2a82a80, {0x28da678, 0x8, 0x8})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/frame.go:54 +0x74 fp=0x2c75a18 sp=0x2c759d8 pc=0x488508
nhooyr.io/websocket.(*Conn).readFrameHeader(0x28da648, {0x869c70, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:188 +0xb4 fp=0x2c75ad8 sp=0x2c75a18 pc=0x48b16c
nhooyr.io/websocket.(*Conn).readLoop(0x28da648, {0x869c70, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:146 +0x3c fp=0x2c75b9c sp=0x2c75ad8 pc=0x48ac54
nhooyr.io/websocket.(*Conn).reader(0x28da648, {0x869c70, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:315 +0x108 fp=0x2c75c28 sp=0x2c75b9c pc=0x48be68
nhooyr.io/websocket.(*Conn).Reader(...)
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:30
nhooyr.io/websocket.(*Conn).Read(0x28da648, {0x869c70, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:36 +0x30 fp=0x2c75c50 sp=0x2c75c28 pc=0x48a538
main.(*ConcreteApiServer).serve.func17({0x86958c, 0x29059a8}, 0x2904828)
        /home/volumio/go-librespot/cmd/daemon/api_server.go:581 +0x3c0 fp=0x2c75ccc sp=0x2c75c50 pc=0x63b96c
net/http.HandlerFunc.ServeHTTP(0x2a8a180, {0x86958c, 0x29059a8}, 0x2904828)
        /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x2c75cdc sp=0x2c75ccc pc=0x342b34
net/http.(*ServeMux).ServeHTTP(0x2a80000, {0x86958c, 0x29059a8}, 0x2904828)
        /usr/local/go/src/net/http/server.go:2683 +0x208 fp=0x2c75d18 sp=0x2c75cdc pc=0x344994
main.(*ConcreteApiServer).serve.(*Cors).Handler.func19({0x86958c, 0x29059a8}, 0x2904828)
        /home/volumio/go/pkg/mod/github.com/rs/cors@v1.11.1/cors.go:289 +0x1f8 fp=0x2c75d40 sp=0x2c75d18 pc=0x63b36c
net/http.HandlerFunc.ServeHTTP(0x2a84160, {0x86958c, 0x29059a8}, 0x2904828)
        /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x2c75d50 sp=0x2c75d40 pc=0x342b34
net/http.serverHandler.ServeHTTP({0x2a8c0a8}, {0x86958c, 0x29059a8}, 0x2904828)
        /usr/local/go/src/net/http/server.go:3137 +0xe0 fp=0x2c75d6c sp=0x2c75d50 pc=0x346124
net/http.(*conn).serve(0x2a96000, {0x869cb0, 0x2a92180})
        /usr/local/go/src/net/http/server.go:2039 +0x61c fp=0x2c75fdc sp=0x2c75d6c pc=0x341374
net/http.(*Server).Serve.gowrap3()
        /usr/local/go/src/net/http/server.go:3285 +0x38 fp=0x2c75fec sp=0x2c75fdc pc=0x3469c8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c75fec sp=0x2c75fec pc=0x933b8
created by net/http.(*Server).Serve in goroutine 20
        /usr/local/go/src/net/http/server.go:3285 +0x468
goroutine 6168003 gp=0x2813c28 m=nil [chan receive, 14 minutes]:
runtime.gopark(0x7c3b58, 0x2cd8270, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2b23d60 sp=0x2b23d4c pc=0x5c560
runtime.chanrecv(0x2cd8240, 0x2b23ddb, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2b23d9c sp=0x2b23d60 pc=0x1f518
runtime.chanrecv1(0x2cd8240, 0x2b23ddb)
        /usr/local/go/src/runtime/chan.go:442 +0x20 fp=0x2b23db0 sp=0x2b23d9c pc=0x1f038
github.com/devgianlu/go-librespot/dealer.(*Dealer).handleRequest(0x2b4e9a8, 0x2e04780)
        /home/volumio/go-librespot/dealer/recv.go:237 +0x1f8 fp=0x2b23f2c sp=0x2b23db0 pc=0x52ccb4
github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x2b4e9a8)
        /home/volumio/go-librespot/dealer/dealer.go:213 +0x4d8 fp=0x2b23fe4 sp=0x2b23f2c pc=0x52b3e4
github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x2b23fec sp=0x2b23fe4 pc=0x52ca3c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2b23fec sp=0x2b23fec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 6167978
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x98
goroutine 6168008 gp=0x31c47e8 m=nil [select, 11 minutes]:
runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c6ecb0 sp=0x2c6ec9c pc=0x5c560
runtime.selectgo(0x2c6ee14, 0x2c6ed80, 0x0, 0x0, 0x3, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2c6ed50 sp=0x2c6ecb0 pc=0x70318
github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x397e720)
        /home/volumio/go-librespot/audio/provider.go:63 +0x118 fp=0x2c6efe4 sp=0x2c6ed50 pc=0x4a4f58
github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/audio/provider.go:53 +0x28 fp=0x2c6efec sp=0x2c6efe4 pc=0x4a5ca4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c6efec sp=0x2c6efec pc=0x933b8
created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1 in goroutine 6167978
        /home/volumio/go-librespot/audio/provider.go:53 +0x60
goroutine 6167978 gp=0x29ed568 m=nil [chan receive, 14 minutes]:
runtime.gopark(0x7c3b58, 0x30282f0, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2f315b8 sp=0x2f315a4 pc=0x5c560
runtime.chanrecv(0x30282c0, 0x2f31688, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2f315f4 sp=0x2f315b8 pc=0x1f518
runtime.chanrecv1(0x30282c0, 0x2f31688)
        /usr/local/go/src/runtime/chan.go:442 +0x20 fp=0x2f31608 sp=0x2f315f4 pc=0x1f038
github.com/devgianlu/go-librespot/player.(*Player).PositionMs(...)
        /home/volumio/go-librespot/player/player.go:396
main.(*AppPlayer).skipNext(0x2def860, {0x869c90, 0xd13698}, 0x0)
        /home/volumio/go-librespot/cmd/daemon/controls.go:518 +0xb8 fp=0x2f316a4 sp=0x2f31608 pc=0x6428c0
main.(*AppPlayer).handlePlayerCommand(0x2def860, {0x869c90, 0xd13698}, {0x68a6ab0c, {0x28d2360, 0x28}, {{0x300a1c0, 0x9}, {0x0, 0x0}, ...}})
        /home/volumio/go-librespot/cmd/daemon/player.go:320 +0x728 fp=0x2f317c0 sp=0x2f316a4 pc=0x649814
main.(*AppPlayer).handleDealerRequest(0x2def860, {0x869c90, 0xd13698}, {0x2cd8240, {0x28d2240, 0x24}, {0x68a6ab0c, {0x28d2360, 0x28}, {{0x300a1c0, ...}, ...}}})
        /home/volumio/go-librespot/cmd/daemon/player.go:366 +0x11c fp=0x2f318f4 sp=0x2f317c0 pc=0x64b568
main.(*AppPlayer).Run(0x2def860, {0x869c90, 0xd13698}, 0x2cd8840)
        /home/volumio/go-librespot/cmd/daemon/player.go:594 +0x55c fp=0x2f31fd8 sp=0x2f318f4 pc=0x64d5d0
main.(*App).withAppPlayer.func2.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x40 fp=0x2f31fec sp=0x2f31fd8 pc=0x646700
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2f31fec sp=0x2f31fec pc=0x933b8
created by main.(*App).withAppPlayer.func2 in goroutine 76
        /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x2c8
goroutine 6168179 gp=0x3e7f448 m=nil [select, 3 minutes]:
runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2856ccc sp=0x2856cb8 pc=0x5c560
runtime.selectgo(0x2856e48, 0x2856da8, 0x0, 0x0, 0x3, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2856d6c sp=0x2856ccc pc=0x70318
github.com/devgianlu/go-librespot/mercury.(*Client).recvLoop(0x397e700)
        /home/volumio/go-librespot/mercury/client.go:58 +0x138 fp=0x2856fe4 sp=0x2856d6c pc=0x528a08
github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/mercury/client.go:48 +0x28 fp=0x2856fec sp=0x2856fe4 pc=0x52a1a4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2856fec sp=0x2856fec pc=0x933b8
created by github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1 in goroutine 6167978
        /home/volumio/go-librespot/mercury/client.go:48 +0x60
goroutine 6168002 gp=0x29fc5a8 m=nil [select]:
runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e5d6b8 sp=0x2e5d6a4 pc=0x5c560
runtime.selectgo(0x2e5d7d4, 0x2e5d77c, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e5d758 sp=0x2e5d6b8 pc=0x70318
github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x293e848)
        /home/volumio/go-librespot/ap/ap.go:355 +0x8c fp=0x2e5d7e4 sp=0x2e5d758 pc=0x49d7cc
github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap2()
        /home/volumio/go-librespot/ap/ap.go:264 +0x28 fp=0x2e5d7ec sp=0x2e5d7e4 pc=0x49cec4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e5d7ec sp=0x2e5d7ec pc=0x933b8
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 6167978
        /home/volumio/go-librespot/ap/ap.go:264 +0x15c
goroutine 6168004 gp=0x29fc6c8 m=nil [select]:
runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c70e98 sp=0x2c70e84 pc=0x5c560
runtime.selectgo(0x2c70fd4, 0x2c70f60, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2c70f38 sp=0x2c70e98 pc=0x70318
github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x2b4e9a8)
        /home/volumio/go-librespot/dealer/dealer.go:138 +0x8c fp=0x2c70fe4 sp=0x2c70f38 pc=0x52aadc
github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap2()
        /home/volumio/go-librespot/dealer/dealer.go:129 +0x28 fp=0x2c70fec sp=0x2c70fe4 pc=0x52c9e8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c70fec sp=0x2c70fec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 6167978
        /home/volumio/go-librespot/dealer/dealer.go:129 +0x15c
goroutine 6167977 gp=0x2b49e68 m=nil [sync.Mutex.Lock, 14 minutes]:
runtime.gopark(0x7c3cc8, 0xced4c0, 0x15, 0x5, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2857e58 sp=0x2857e44 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.semacquire1(0x319e924, 0x0, 0x3, 0x1, 0x15)
        /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x2857e80 sp=0x2857e58 pc=0x70f54
sync.runtime_SemacquireMutex(0x319e924, 0x0, 0x1)
        /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x2857e98 sp=0x2857e80 pc=0x906d0
sync.(*Mutex).lockSlow(0x319e920)
        /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x2857ecc sp=0x2857e98 pc=0x9ec58
sync.(*Mutex).Lock(0x319e920)
        /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x2857ee0 sp=0x2857ecc pc=0x9e958
github.com/devgianlu/go-librespot/output.(*alsaOutput).DelayMs(0x319e900)
        /home/volumio/go-librespot/output/driver-alsa.go:386 +0x58 fp=0x2857f14 sp=0x2857ee0 pc=0x4b8814
github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x2e05a90)
        /home/volumio/go-librespot/player/player.go:287 +0x3c0 fp=0x2857fe4 sp=0x2857f14 pc=0x51ad60
github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1()
        /home/volumio/go-librespot/player/player.go:171 +0x28 fp=0x2857fec sp=0x2857fe4 pc=0x51a77c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2857fec sp=0x2857fec pc=0x933b8
created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 76
        /home/volumio/go-librespot/player/player.go:171 +0x1f8
goroutine 6167976 gp=0x2ccaea8 m=nil [select]:
runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e66f04 sp=0x2e66ef0 pc=0x5c560
runtime.selectgo(0x2e66fd4, 0x2e66fc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e66fa4 sp=0x2e66f04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x28c6880)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x2e66fe4 sp=0x2e66fa4 pc=0x539304
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x2e66fec sp=0x2e66fe4 pc=0x539244
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e66fec sp=0x2e66fec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 76
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 6167985 gp=0x3e0d448 m=nil [IO wait]:
runtime.gopark(0x7c3cb8, 0xf54a9648, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2b20d14 sp=0x2b20d00 pc=0x5c560
runtime.netpollblock(0xf54a9638, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2b20d2c sp=0x2b20d14 pc=0x53d6c
internal/poll.runtime_pollWait(0xf54a9638, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2b20d40 sp=0x2b20d2c pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2d11558, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2b20d54 sp=0x2b20d40 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x2d11540, {0x31d850c, 0x3, 0x3})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x2b20d9c sp=0x2b20d54 pc=0x10f118
net.(*netFD).Read(0x2d11540, {0x31d850c, 0x3, 0x3})
        /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x2b20dc8 sp=0x2b20d9c pc=0x181748
net.(*conn).Read(0x36738c8, {0x31d850c, 0x3, 0x3})
        /usr/local/go/src/net/net.go:179 +0x48 fp=0x2b20df4 sp=0x2b20dc8 pc=0x191c64
net.(*TCPConn).Read(0x36738c8, {0x31d850c, 0x3, 0x3})
        <autogenerated>:1 +0x44 fp=0x2b20e14 sp=0x2b20df4 pc=0x1a4eb8
io.ReadAtLeast({0x86502c, 0x36738c8}, {0x31d850c, 0x3, 0x3}, 0x3)
        /usr/local/go/src/io/io.go:335 +0x90 fp=0x2b20e40 sp=0x2b20e14 pc=0x107ed4
io.ReadFull(...)
        /usr/local/go/src/io/io.go:354
github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x2e8b640, {0x869c90, 0xd13698})
        /home/volumio/go-librespot/ap/shannon.go:124 +0x3a0 fp=0x2b20f04 sp=0x2b20e40 pc=0x4a0770
github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x293e848)
        /home/volumio/go-librespot/ap/ap.go:276 +0x68 fp=0x2b20fe4 sp=0x2b20f04 pc=0x49cfac
github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/ap/ap.go:260 +0x28 fp=0x2b20fec sp=0x2b20fe4 pc=0x49cf18
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2b20fec sp=0x2b20fec pc=0x933b8
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 6167978
        /home/volumio/go-librespot/ap/ap.go:260 +0x98
goroutine 6168060 gp=0x2b59b08 m=4 mp=0x284b088 [syscall, 14 minutes]:
runtime.cgocall(0x6511b0, 0x2e30764)
        /usr/local/go/src/runtime/cgocall.go:157 +0x50 fp=0x2e3074c sp=0x2e30734 pc=0x1ccc0
github.com/devgianlu/go-librespot/output._Cfunc_snd_pcm_writei(0xf0291fc8, 0x281ca00, 0x44e)
        _cgo_gotypes.go:807 +0x38 fp=0x2e30760 sp=0x2e3074c pc=0x4b5704
github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop.func2(0xf0291fc8, 0x2e307bc, 0x89c, 0x319e900)
        /home/volumio/go-librespot/output/driver-alsa.go:299 +0xec fp=0x2e3078c sp=0x2e30760 pc=0x4b8070
github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop(0x319e900, 0xf0291fc8)
        /home/volumio/go-librespot/output/driver-alsa.go:299 +0x1cc fp=0x2e307e0 sp=0x2e3078c pc=0x4b7c74
github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm.gowrap1()
        /home/volumio/go-librespot/output/driver-alsa.go:200 +0x30 fp=0x2e307ec sp=0x2e307e0 pc=0x4b6580
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e307ec sp=0x2e307ec pc=0x933b8
created by github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm in goroutine 6167977
        /home/volumio/go-librespot/output/driver-alsa.go:200 +0x4a4
goroutine 7135611 gp=0x2b88b48 m=nil [chan send, 11 minutes]:
runtime.gopark(0x7c3b58, 0x2cd8830, 0xf, 0x6, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e69e3c sp=0x2e69e28 pc=0x5c560
runtime.chansend(0x2cd8800, 0x2e69fc4, 0x1, 0x63da1c)
        /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x2e69e74 sp=0x2e69e3c pc=0x1e6a8
runtime.chansend1(0x2cd8800, 0x2c37fc4)
        /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x2e69e8c sp=0x2e69e74 pc=0x1e32c
github.com/devgianlu/go-librespot/player.(*Player).SetSecondaryStream(...)
        /home/volumio/go-librespot/player/player.go:412
main.(*AppPlayer).prefetchNext(0x2def860)
        /home/volumio/go-librespot/cmd/daemon/controls.go:54 +0x4a8 fp=0x2e69fe4 sp=0x2e69e8c pc=0x63da1c
main.(*AppPlayer).prefetchNext-fm()
        <autogenerated>:1 +0x28 fp=0x2e69fec sp=0x2e69fe4 pc=0x64f2e0
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e69fec sp=0x2e69fec pc=0x933b8
created by time.goFunc
        /usr/local/go/src/time/sleep.go:177 +0x2c
trap    0x0
error   0x0
oldmask 0x0
r0      0xfffffffc
r1      0xffc37a68
r2      0x80
r3      0x1b52
r4      0x0
r5      0x0
r6      0x0
r7      0x15a
r8      0x0
r9      0x0
r10     0xce8e18
fp      0xc9170c
ip      0xac64d992
sp      0xffc379ec
lr      0x1aa1c
pc      0x1aac4
cpsr    0x200d0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94404 m=2 sigcode=0
goroutine 0 gp=0x28026c8 m=2 mp=0x284a588 [idle]:
runtime.futex(0xceb44c, 0x80, 0x0, 0xf6ce6d60, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:417 +0x20 fp=0xf6ce6d40 sp=0xf6ce6d40 pc=0x94404
runtime.futexsleep(0xceb44c, 0x0, 0x1a0e49d26)
        /usr/local/go/src/runtime/os_linux.go:75 +0x178 fp=0xf6ce6d68 sp=0xf6ce6d40 pc=0x54e3c
runtime.notetsleep_internal(0xceb44c, 0x1a0e49d26)
        /usr/local/go/src/runtime/lock_futex.go:212 +0x124 fp=0xf6ce6d90 sp=0xf6ce6d68 pc=0x24b6c
runtime.notetsleep(0xceb44c, 0x1a0e49d26)
        /usr/local/go/src/runtime/lock_futex.go:235 +0x48 fp=0xf6ce6da4 sp=0xf6ce6d90 pc=0x24d0c
runtime.sysmon()
        /usr/local/go/src/runtime/proc.go:6001 +0x2e0 fp=0xf6ce6e00 sp=0xf6ce6da4 pc=0x69cb8
runtime.mstart1()
        /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf6ce6e10 sp=0xf6ce6e00 pc=0x5f5fc
runtime.mstart0()
        /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf6ce6e24 sp=0xf6ce6e10 pc=0x5f570
runtime.mstart()
        /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf6ce6e28 sp=0xf6ce6e24 pc=0x9168c
trap    0x0
error   0x0
oldmask 0x0
r0      0xfffffffc
r1      0x80
r2      0x0
r3      0xf6ce6d60
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x0
r9      0x0
r10     0x28026c8
fp      0x3b9aca00
ip      0x0
sp      0xf6ce6d40
lr      0x54e3c
pc      0x94404
cpsr    0x60070010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=3 sigcode=0
goroutine 0 gp=0x2802a28 m=3 mp=0x284ab08 [idle]:
runtime.futex(0x284abd0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf64e5cc4 sp=0xf64e5cc4 pc=0x94400
runtime.futexsleep(0x284abd0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf64e5cec sp=0xf64e5cc4 pc=0x54d20
runtime.notesleep(0x284abd0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf64e5d0c sp=0xf64e5cec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf64e5d20 sp=0xf64e5d0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf64e5dcc sp=0xf64e5d20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf64e5de8 sp=0xf64e5dcc pc=0x643bc
runtime.park_m(0x2cb6008)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf64e5e08 sp=0xf64e5de8 pc=0x64c34
runtime.mcall(0xf64e6450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf64e5e10 sp=0xf64e5e08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x284abd0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0x1
r10     0x2802a28
fp      0x6
ip      0x5d2d1abd
sp      0xf64e5cc4
lr      0x54d20
pc      0x94400
cpsr    0xa00d0010
fault   0x0
-----
SIGQUIT: quit
PC=0xf7057746 m=4 sigcode=0
signal arrived during cgo execution
goroutine 6168060 gp=0x2b59b08 m=4 mp=0x284b088 [syscall, 14 minutes]:
runtime.cgocall(0x6511b0, 0x2e30764)
        /usr/local/go/src/runtime/cgocall.go:157 +0x50 fp=0x2e3074c sp=0x2e30734 pc=0x1ccc0
github.com/devgianlu/go-librespot/output._Cfunc_snd_pcm_writei(0xf0291fc8, 0x281ca00, 0x44e)
        _cgo_gotypes.go:807 +0x38 fp=0x2e30760 sp=0x2e3074c pc=0x4b5704
github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop.func2(0xf0291fc8, 0x2e307bc, 0x89c, 0x319e900)
        /home/volumio/go-librespot/output/driver-alsa.go:299 +0xec fp=0x2e3078c sp=0x2e30760 pc=0x4b8070
github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop(0x319e900, 0xf0291fc8)
        /home/volumio/go-librespot/output/driver-alsa.go:299 +0x1cc fp=0x2e307e0 sp=0x2e3078c pc=0x4b7c74
github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm.gowrap1()
        /home/volumio/go-librespot/output/driver-alsa.go:200 +0x30 fp=0x2e307ec sp=0x2e307e0 pc=0x4b6580
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e307ec sp=0x2e307ec pc=0x933b8
created by github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm in goroutine 6167977
        /home/volumio/go-librespot/output/driver-alsa.go:200 +0x4a4
trap    0x0
error   0x0
oldmask 0x0
r0      0xfffffffc
r1      0x3
r2      0xffffffff
r3      0x0
r4      0x74
r5      0xffffffff
r6      0x3
r7      0xa8
r8      0xf5ce4cf0
r9      0xf727cd1d
r10     0xffffffff
fp      0xf02920e4
ip      0xa8
sp      0xf5ce4cc8
lr      0xf70d3211
pc      0xf7057746
cpsr    0x800d0030
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=5 sigcode=0
goroutine 0 gp=0x28030e8 m=5 mp=0x284b608 [idle]:
runtime.futex(0x284b6d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf52fecc4 sp=0xf52fecc4 pc=0x94400
runtime.futexsleep(0x284b6d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf52fecec sp=0xf52fecc4 pc=0x54d20
runtime.notesleep(0x284b6d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf52fed0c sp=0xf52fecec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf52fed20 sp=0xf52fed0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf52fedcc sp=0xf52fed20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf52fede8 sp=0xf52fedcc pc=0x643bc
runtime.park_m(0x3083208)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf52fee08 sp=0xf52fede8 pc=0x64c34
runtime.mcall(0xf52ff450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf52fee10 sp=0xf52fee08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x284b6d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0x1
r10     0x28030e8
fp      0x6
ip      0xa88bb736
sp      0xf52fecc4
lr      0x54d20
pc      0x94400
cpsr    0xa00d0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=6 sigcode=0
goroutine 0 gp=0x2803328 m=6 mp=0x284bb88 [idle]:
runtime.futex(0xd13eb4, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf44fedac sp=0xf44fedac pc=0x94400
runtime.futexsleep(0xd13eb4, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf44fedd4 sp=0xf44fedac pc=0x54d20
runtime.notesleep(0xd13eb4)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf44fedf4 sp=0xf44fedd4 pc=0x249e8
runtime.templateThread()
        /usr/local/go/src/runtime/proc.go:2760 +0x90 fp=0xf44fee00 sp=0xf44fedf4 pc=0x61084
runtime.mstart1()
        /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf44fee10 sp=0xf44fee00 pc=0x5f5fc
runtime.mstart0()
        /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf44fee24 sp=0xf44fee10 pc=0x5f570
runtime.mstart()
        /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf44fee28 sp=0xf44fee24 pc=0x9168c
trap    0x0
error   0x0
oldmask 0x0
r0      0xd13eb4
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0xf44ff450
r9      0xf44ff4c0
r10     0x2803328
fp      0x6
ip      0x7
sp      0xf44fedac
lr      0x54d20
pc      0x94400
cpsr    0xa00e0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=7 sigcode=0
goroutine 0 gp=0x2803b08 m=7 mp=0x284d188 [idle]:
runtime.futex(0x284d250, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf3cfdcc4 sp=0xf3cfdcc4 pc=0x94400
runtime.futexsleep(0x284d250, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf3cfdcec sp=0xf3cfdcc4 pc=0x54d20
runtime.notesleep(0x284d250)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf3cfdd0c sp=0xf3cfdcec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf3cfdd20 sp=0xf3cfdd0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf3cfddcc sp=0xf3cfdd20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf3cfdde8 sp=0xf3cfddcc pc=0x643bc
runtime.park_m(0x29ddc28)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf3cfde08 sp=0xf3cfdde8 pc=0x64c34
runtime.mcall(0xf3cfe450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf3cfde10 sp=0xf3cfde08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x284d250
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x2810040
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x2803b08
fp      0x6
ip      0x0
sp      0xf3cfdcc4
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=8 sigcode=0
goroutine 0 gp=0x2bfa6c8 m=8 mp=0x2ad3708 [idle]:
runtime.futex(0x2ad37d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf32febf8 sp=0xf32febf8 pc=0x94400
runtime.futexsleep(0x2ad37d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf32fec20 sp=0xf32febf8 pc=0x54d20
runtime.notesleep(0x2ad37d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf32fec40 sp=0xf32fec20 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf32fec54 sp=0xf32fec40 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf32fed00 sp=0xf32fec54 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf32fed1c sp=0xf32fed00 pc=0x643bc
runtime.goschedImpl(0x29fc6c8, 0x1)
        /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf32fed34 sp=0xf32fed1c pc=0x64de4
runtime.gopreempt_m(...)
        /usr/local/go/src/runtime/proc.go:4082
runtime.newstack()
        /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf32fee0c sp=0xf32fed34 pc=0x776ac
runtime.morestack()
        /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf32fee10 sp=0xf32fee0c pc=0x917f8
trap    0x0
error   0x0
oldmask 0x0
r0      0x2ad37d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x2bfa6c8
fp      0x6
ip      0xa95672ed
sp      0xf32febf8
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=9 sigcode=0
goroutine 0 gp=0x2c59208 m=9 mp=0x2bc0008 [idle]:
runtime.futex(0x2bc00d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf2610cc4 sp=0xf2610cc4 pc=0x94400
runtime.futexsleep(0x2bc00d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf2610cec sp=0xf2610cc4 pc=0x54d20
runtime.notesleep(0x2bc00d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf2610d0c sp=0xf2610cec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf2610d20 sp=0xf2610d0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf2610dcc sp=0xf2610d20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf2610de8 sp=0xf2610dcc pc=0x643bc
runtime.park_m(0x2cb6248)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf2610e08 sp=0xf2610de8 pc=0x64c34
runtime.mcall(0xf2611450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf2610e10 sp=0xf2610e08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x2bc00d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0x1
r10     0x2c59208
fp      0x6
ip      0xf92e161f
sp      0xf2610cc4
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=10 sigcode=0
goroutine 0 gp=0x3e0c248 m=10 mp=0x2bc1608 [idle]:
runtime.futex(0x2bc16d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf1dcfcdc sp=0xf1dcfcdc pc=0x94400
runtime.futexsleep(0x2bc16d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf1dcfd04 sp=0xf1dcfcdc pc=0x54d20
runtime.notesleep(0x2bc16d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf1dcfd24 sp=0xf1dcfd04 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf1dcfd38 sp=0xf1dcfd24 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf1dcfde4 sp=0xf1dcfd38 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf1dcfe00 sp=0xf1dcfde4 pc=0x643bc
runtime.goexit0(0x2d70c68)
        /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf1dcfe08 sp=0xf1dcfe00 pc=0x6527c
runtime.mcall(0xf1dd0450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf1dcfe10 sp=0xf1dcfe08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x2bc16d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x3e0c248
fp      0x6
ip      0xfd8812c0
sp      0xf1dcfcdc
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
signal: aborted
<!-- gh-comment-id:2969793063 --> @devgianlu commented on GitHub (Jun 13, 2025): <details> <summary>New sample</summary> ``` time="2025-06-13T11:46:47+02:00" level=error msg="did not receive last pong from dealer, 570s passed" time="2025-06-13T11:47:17+02:00" level=error msg="did not receive last pong from dealer, 600s passed" time="2025-06-13T11:47:47+02:00" level=error msg="did not receive last pong from dealer, 630s passed" time="2025-06-13T11:48:17+02:00" level=error msg="did not receive last pong from dealer, 660s passed" time="2025-06-13T11:48:47+02:00" level=trace msg="received accesspoint ping" time="2025-06-13T11:48:47+02:00" level=trace msg="received accesspoint pong ack" time="2025-06-13T11:48:47+02:00" level=error msg="did not receive last pong from dealer, 690s passed" time="2025-06-13T11:49:17+02:00" level=error msg="did not receive last pong from dealer, 720s passed" time="2025-06-13T11:49:26+02:00" level=warning msg="skipping mercury packet with type: PacketTypeMercuryEvent" time="2025-06-13T11:49:47+02:00" level=error msg="did not receive last pong from dealer, 750s passed" time="2025-06-13T11:50:17+02:00" level=error msg="did not receive last pong from dealer, 780s passed" time="2025-06-13T11:50:47+02:00" level=trace msg="received accesspoint ping" time="2025-06-13T11:50:47+02:00" level=trace msg="received accesspoint pong ack" time="2025-06-13T11:50:47+02:00" level=error msg="did not receive last pong from dealer, 810s passed" SIGABRT: abort PC=0x1aac4 m=0 sigcode=0 goroutine 0 gp=0xce8e18 m=0 mp=0xce96c0 [idle]: runtime/internal/syscall.Syscall6(0x15a, 0x4, 0xffc37a68, 0x80, 0x1b52, 0x0, 0x0) /usr/local/go/src/runtime/internal/syscall/asm_linux_arm.s:17 +0x20 fp=0xffc379ec sp=0xffc379ec pc=0x1aac4 runtime/internal/syscall.EpollWait(0x4, {0xffc37a68, 0x80, 0x80}, 0x80, 0x1b52) /usr/local/go/src/runtime/internal/syscall/syscall_linux.go:55 +0x60 fp=0xffc37a1c sp=0xffc379ec pc=0x1aa1c runtime.netpoll(0x1a0e6d0f4) /usr/local/go/src/runtime/netpoll_epoll.go:118 +0x17c fp=0xffc38288 sp=0xffc37a1c pc=0x54960 runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3470 +0xbbc fp=0xffc38334 sp=0xffc38288 pc=0x62c24 runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xffc38350 sp=0xffc38334 pc=0x643bc runtime.goexit0(0x29ddc28) /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xffc38358 sp=0xffc38350 pc=0x6527c runtime.mcall(0x863694) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xffc38360 sp=0xffc38358 pc=0x916ec goroutine 1 gp=0x2802128 m=nil [select, 2548 minutes]: runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2b26cf8 sp=0x2b26ce4 pc=0x5c560 runtime.selectgo(0x2b26df8, 0x28a7dc4, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2b26d98 sp=0x2b26cf8 pc=0x70318 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x2a96d20, 0x2b26e90) /home/volumio/go-librespot/zeroconf/zeroconf.go:281 +0x228 fp=0x2b26e3c sp=0x2b26d98 pc=0x5b0210 main.(*App).withAppPlayer(0x28d4540, {0x869c90, 0xd13698}, 0x2897130) /home/volumio/go-librespot/cmd/daemon/main.go:316 +0x52c fp=0x2b26ed0 sp=0x2b26e3c pc=0x645c00 main.(*App).withCredentials(...) /home/volumio/go-librespot/cmd/daemon/main.go:191 main.(*App).SpotifyToken(0x28d4540, {0x869c90, 0xd13698}, {0x2892f00, 0xb}, {0x28fc000, 0x16a}) /home/volumio/go-librespot/cmd/daemon/main.go:183 +0xd8 fp=0x2b26f00 sp=0x2b26ed0 pc=0x6450fc main.main() /home/volumio/go-librespot/cmd/daemon/main.go:549 +0x588 fp=0x2b26fa8 sp=0x2b26f00 pc=0x647eb4 runtime.main() /usr/local/go/src/runtime/proc.go:271 +0x2fc fp=0x2b26fec sp=0x2b26fa8 pc=0x5bfd0 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2b26fec sp=0x2b26fec pc=0x933b8 goroutine 2 gp=0x28027e8 m=nil [force gc (idle), 3 minutes]: runtime.gopark(0x7c3cc8, 0xce7ef0, 0x11, 0xa, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2846fd4 sp=0x2846fc0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.forcegchelper() /usr/local/go/src/runtime/proc.go:326 +0xe4 fp=0x2846fec sp=0x2846fd4 pc=0x5c39c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2846fec sp=0x2846fec pc=0x933b8 created by runtime.init.5 in goroutine 1 /usr/local/go/src/runtime/proc.go:314 +0x1c goroutine 3 gp=0x2802b48 m=nil [GC sweep wait]: runtime.gopark(0x7c3cc8, 0xce84f8, 0xc, 0x9, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x28477c4 sp=0x28477b0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.bgsweep(0x286e000) /usr/local/go/src/runtime/mgcsweep.go:318 +0x11c fp=0x28477e4 sp=0x28477c4 pc=0x44ce8 runtime.gcenable.gowrap1() /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x28477ec sp=0x28477e4 pc=0x34e08 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28477ec sp=0x28477ec pc=0x933b8 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:203 +0x74 goroutine 4 gp=0x2802c68 m=nil [GC scavenge wait]: runtime.gopark(0x7c3cc8, 0xce8ba8, 0xd, 0xa, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2847fb4 sp=0x2847fa0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.(*scavengerState).park(0xce8ba8) /usr/local/go/src/runtime/mgcscavenge.go:425 +0x68 fp=0x2847fc8 sp=0x2847fb4 pc=0x42008 runtime.bgscavenge(0x286e000) /usr/local/go/src/runtime/mgcscavenge.go:658 +0x60 fp=0x2847fe4 sp=0x2847fc8 pc=0x42740 runtime.gcenable.gowrap2() /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x2847fec sp=0x2847fe4 pc=0x34db4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2847fec sp=0x2847fec pc=0x933b8 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:204 +0xbc goroutine 5 gp=0x2803448 m=nil [finalizer wait, 9 minutes]: runtime.gopark(0x7c3b74, 0xd13738, 0x10, 0xa, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x284878c sp=0x2848778 pc=0x5c560 runtime.runfinq() /usr/local/go/src/runtime/mfinal.go:194 +0x110 fp=0x28487ec sp=0x284878c pc=0x33bf4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28487ec sp=0x28487ec pc=0x933b8 created by runtime.createfing in goroutine 1 /usr/local/go/src/runtime/mfinal.go:164 +0x5c goroutine 20 gp=0x28c5208 m=nil [IO wait, 68 minutes]: runtime.gopark(0x7c3cb8, 0xf54a9f08, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285bd28 sp=0x285bd14 pc=0x5c560 runtime.netpollblock(0xf54a9ef8, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285bd40 sp=0x285bd28 pc=0x53d6c internal/poll.runtime_pollWait(0xf54a9ef8, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285bd54 sp=0x285bd40 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x28bb288, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285bd68 sp=0x285bd54 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0x28bb270) /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x285bdb0 sp=0x285bd68 pc=0x112798 net.(*netFD).accept(0x28bb270) /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x285be18 sp=0x285bdb0 pc=0x18363c net.(*TCPListener).accept(0x289aa20) /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x285be30 sp=0x285be18 pc=0x19ba78 net.(*TCPListener).Accept(0x289aa20) /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x285be4c sp=0x285be30 pc=0x19aae4 net/http.(*onceCloseListener).Accept(0x2a90340) <autogenerated>:1 +0x34 fp=0x285be64 sp=0x285be4c pc=0x367e94 net/http.(*Server).Serve(0x2a8c0a8, {0x869458, 0x289aa20}) /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x285befc sp=0x285be64 pc=0x346550 net/http.Serve(...) /usr/local/go/src/net/http/server.go:2794 main.(*ConcreteApiServer).serve(0x289eb40) /home/volumio/go-librespot/cmd/daemon/api_server.go:611 +0x974 fp=0x285bfe4 sp=0x285befc pc=0x63b09c main.NewApiServer.gowrap1() /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x28 fp=0x285bfec sp=0x285bfe4 pc=0x639f6c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285bfec sp=0x285bfec pc=0x933b8 created by main.NewApiServer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x310 goroutine 34 gp=0x2aa0128 m=nil [GC worker (idle)]: runtime.gopark(0x7c3b84, 0x282b068, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be2790 sp=0x2be277c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2be27ec sp=0x2be2790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be27ec sp=0x2be27ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 26 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 50 gp=0x2cb6008 m=nil [GC worker (idle), 11 minutes]: runtime.gopark(0x7c3b84, 0x2cb8000, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bde790 sp=0x2bde77c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2bde7ec sp=0x2bde790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bde7ec sp=0x2bde7ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 26 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 51 gp=0x2cb6128 m=nil [GC worker (idle), 14 minutes]: runtime.gopark(0x7c3b84, 0x2cb8018, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bdef90 sp=0x2bdef7c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2bdefec sp=0x2bdef90 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bdefec sp=0x2bdefec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 26 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 52 gp=0x2cb6248 m=nil [GC worker (idle), 11 minutes]: runtime.gopark(0x7c3b84, 0x2cb8030, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bdf790 sp=0x2bdf77c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2bdf7ec sp=0x2bdf790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bdf7ec sp=0x2bdf7ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 26 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 53 gp=0x2803568 m=nil [IO wait]: runtime.gopark(0x7c3cb8, 0xf54a9d28, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285de84 sp=0x285de70 pc=0x5c560 runtime.netpollblock(0xf54a9d18, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285de9c sp=0x285de84 pc=0x53d6c internal/poll.runtime_pollWait(0xf54a9d18, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285deb0 sp=0x285de9c pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x28bb878, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285dec4 sp=0x285deb0 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x28bb860, 0x3b9d290) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x285def0 sp=0x285dec4 pc=0x11339c net.(*rawConn).Read(0x2cc86e8, 0x3b9d290) /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x285df10 sp=0x285def0 pc=0x195ea0 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2cc3970, 0x3b9d260, 0x0) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x285df40 sp=0x285df10 pc=0x5509f4 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x2800428, {0x2b00000, 0x10000, 0x10000}) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x44c fp=0x285df9c sp=0x285df40 pc=0x5549dc github.com/grandcat/zeroconf.(*Server).recv4(0x2bc7c40, 0x2800420) /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xec fp=0x285dfe0 sp=0x285df9c pc=0x5ab26c github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1() /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x30 fp=0x285dfec sp=0x285dfe0 pc=0x5aaf24 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285dfec sp=0x285dfec pc=0x933b8 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 6 /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x7c goroutine 54 gp=0x2803688 m=nil [IO wait, 2548 minutes]: runtime.gopark(0x7c3cb8, 0xf54a9c88, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2abbe5c sp=0x2abbe48 pc=0x5c560 runtime.netpollblock(0xf54a9c78, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2abbe74 sp=0x2abbe5c pc=0x53d6c internal/poll.runtime_pollWait(0xf54a9c78, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2abbe88 sp=0x2abbe74 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x28bb8c8, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2abbe9c sp=0x2abbe88 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x28bb8b0, 0x2a9a030) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x2abbec8 sp=0x2abbe9c pc=0x11339c net.(*rawConn).Read(0x2cc8718, 0x2a9a030) /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x2abbee8 sp=0x2abbec8 pc=0x195ea0 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2cc3980, 0x2a9a000, 0x0) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x2abbf18 sp=0x2abbee8 pc=0x5509f4 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x2800458, {0x2abc000, 0x10000, 0x10000}) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x2ec fp=0x2abbf9c sp=0x2abbf18 pc=0x558364 github.com/grandcat/zeroconf.(*Server).recv6(0x2bc7c40, 0x2800450) /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xec fp=0x2abbfe0 sp=0x2abbf9c pc=0x5ab460 github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2() /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x30 fp=0x2abbfec sp=0x2abbfe0 pc=0x5aaec8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2abbfec sp=0x2abbfec pc=0x933b8 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 6 /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xe8 goroutine 75 gp=0x2aa0908 m=nil [chan receive, 68 minutes]: runtime.gopark(0x7c3b58, 0x28d81b0, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be0f48 sp=0x2be0f34 pc=0x5c560 runtime.chanrecv(0x28d8180, 0x2be0fd0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2be0f84 sp=0x2be0f48 pc=0x1f518 runtime.chanrecv2(0x28d8180, 0x2be0fd0) /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2be0f98 sp=0x2be0f84 pc=0x1f05c main.(*App).withAppPlayer.func1() /home/volumio/go-librespot/cmd/daemon/main.go:264 +0x68 fp=0x2be0fec sp=0x2be0f98 pc=0x646794 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be0fec sp=0x2be0fec pc=0x933b8 created by main.(*App).withAppPlayer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/main.go:261 +0x43c goroutine 76 gp=0x2aa0a28 m=nil [chan receive, 69 minutes]: runtime.gopark(0x7c3b58, 0x28d8170, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2f94738 sp=0x2f94724 pc=0x5c560 runtime.chanrecv(0x28d8140, 0x2f35fe0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2f94774 sp=0x2f94738 pc=0x1f518 runtime.chanrecv2(0x28d8140, 0x2f35fe0) /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2f94788 sp=0x2f94774 pc=0x1f05c main.(*App).withAppPlayer.func2() /home/volumio/go-librespot/cmd/daemon/main.go:280 +0x6c fp=0x2f947ec sp=0x2f94788 pc=0x64635c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2f947ec sp=0x2f947ec pc=0x933b8 created by main.(*App).withAppPlayer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/main.go:277 +0x4dc goroutine 77 gp=0x2aa0b48 m=nil [IO wait]: runtime.gopark(0x7c3cb8, 0xf54a9dc8, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be1de8 sp=0x2be1dd4 pc=0x5c560 runtime.netpollblock(0xf54a9db8, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2be1e00 sp=0x2be1de8 pc=0x53d6c internal/poll.runtime_pollWait(0xf54a9db8, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2be1e14 sp=0x2be1e00 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x28bb828, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2be1e28 sp=0x2be1e14 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0x28bb810) /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x2be1e70 sp=0x2be1e28 pc=0x112798 net.(*netFD).accept(0x28bb810) /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x2be1ed8 sp=0x2be1e70 pc=0x18363c net.(*TCPListener).accept(0x2a92b40) /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x2be1ef0 sp=0x2be1ed8 pc=0x19ba78 net.(*TCPListener).Accept(0x2a92b40) /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x2be1f0c sp=0x2be1ef0 pc=0x19aae4 net/http.(*onceCloseListener).Accept(0x2a58620) <autogenerated>:1 +0x34 fp=0x2be1f24 sp=0x2be1f0c pc=0x367e94 net/http.(*Server).Serve(0x2ae6968, {0x869458, 0x2a92b40}) /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x2be1fbc sp=0x2be1f24 pc=0x346550 net/http.Serve(...) /usr/local/go/src/net/http/server.go:2794 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2() /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x8c fp=0x2be1fec sp=0x2be1fbc pc=0x5b030c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be1fec sp=0x2be1fec pc=0x933b8 created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1 /home/volumio/go-librespot/zeroconf/zeroconf.go:278 +0x160 goroutine 100 gp=0x28c45a8 m=nil [select, 14 minutes]: runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2be46a8 sp=0x2be4694 pc=0x5c560 runtime.selectgo(0x2be47a4, 0x2be476c, 0x0, 0x0, 0x5, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2be4748 sp=0x2be46a8 pc=0x70318 nhooyr.io/websocket.(*Conn).timeoutLoop(0x28da648) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:153 +0x10c fp=0x2be47e4 sp=0x2be4748 pc=0x4853b4 nhooyr.io/websocket.newConn.gowrap1() /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x28 fp=0x2be47ec sp=0x2be47e4 pc=0x484fa8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2be47ec sp=0x2be47ec pc=0x933b8 created by nhooyr.io/websocket.newConn in goroutine 41 /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x544 goroutine 41 gp=0x28c47e8 m=nil [IO wait, 2548 minutes]: runtime.gopark(0x7c3cb8, 0xf54a9828, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c7587c sp=0x2c75868 pc=0x5c560 runtime.netpollblock(0xf54a9818, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2c75894 sp=0x2c7587c pc=0x53d6c internal/poll.runtime_pollWait(0xf54a9818, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2c758a8 sp=0x2c75894 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x29ee068, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2c758bc sp=0x2c758a8 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x29ee050, {0x29d8000, 0x1000, 0x1000}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x2c75904 sp=0x2c758bc pc=0x10f118 net.(*netFD).Read(0x29ee050, {0x29d8000, 0x1000, 0x1000}) /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x2c75930 sp=0x2c75904 pc=0x181748 net.(*conn).Read(0x2a8a2c8, {0x29d8000, 0x1000, 0x1000}) /usr/local/go/src/net/net.go:179 +0x48 fp=0x2c7595c sp=0x2c75930 pc=0x191c64 net.(*TCPConn).Read(0x2a8a2c8, {0x29d8000, 0x1000, 0x1000}) <autogenerated>:1 +0x44 fp=0x2c7597c sp=0x2c7595c pc=0x1a4eb8 io.(*multiReader).Read(0x280e550, {0x29d8000, 0x1000, 0x1000}) /usr/local/go/src/io/multi.go:26 +0xb4 fp=0x2c759a8 sp=0x2c7597c pc=0x10913c bufio.(*Reader).fill(0x2a82a80) /usr/local/go/src/bufio/bufio.go:110 +0x10c fp=0x2c759cc sp=0x2c759a8 pc=0x2c30f4 bufio.(*Reader).ReadByte(0x2a82a80) /usr/local/go/src/bufio/bufio.go:269 +0x28 fp=0x2c759d8 sp=0x2c759cc pc=0x2c3978 nhooyr.io/websocket.readFrameHeader(0x2a82a80, {0x28da678, 0x8, 0x8}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/frame.go:54 +0x74 fp=0x2c75a18 sp=0x2c759d8 pc=0x488508 nhooyr.io/websocket.(*Conn).readFrameHeader(0x28da648, {0x869c70, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:188 +0xb4 fp=0x2c75ad8 sp=0x2c75a18 pc=0x48b16c nhooyr.io/websocket.(*Conn).readLoop(0x28da648, {0x869c70, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:146 +0x3c fp=0x2c75b9c sp=0x2c75ad8 pc=0x48ac54 nhooyr.io/websocket.(*Conn).reader(0x28da648, {0x869c70, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:315 +0x108 fp=0x2c75c28 sp=0x2c75b9c pc=0x48be68 nhooyr.io/websocket.(*Conn).Reader(...) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:30 nhooyr.io/websocket.(*Conn).Read(0x28da648, {0x869c70, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:36 +0x30 fp=0x2c75c50 sp=0x2c75c28 pc=0x48a538 main.(*ConcreteApiServer).serve.func17({0x86958c, 0x29059a8}, 0x2904828) /home/volumio/go-librespot/cmd/daemon/api_server.go:581 +0x3c0 fp=0x2c75ccc sp=0x2c75c50 pc=0x63b96c net/http.HandlerFunc.ServeHTTP(0x2a8a180, {0x86958c, 0x29059a8}, 0x2904828) /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x2c75cdc sp=0x2c75ccc pc=0x342b34 net/http.(*ServeMux).ServeHTTP(0x2a80000, {0x86958c, 0x29059a8}, 0x2904828) /usr/local/go/src/net/http/server.go:2683 +0x208 fp=0x2c75d18 sp=0x2c75cdc pc=0x344994 main.(*ConcreteApiServer).serve.(*Cors).Handler.func19({0x86958c, 0x29059a8}, 0x2904828) /home/volumio/go/pkg/mod/github.com/rs/cors@v1.11.1/cors.go:289 +0x1f8 fp=0x2c75d40 sp=0x2c75d18 pc=0x63b36c net/http.HandlerFunc.ServeHTTP(0x2a84160, {0x86958c, 0x29059a8}, 0x2904828) /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x2c75d50 sp=0x2c75d40 pc=0x342b34 net/http.serverHandler.ServeHTTP({0x2a8c0a8}, {0x86958c, 0x29059a8}, 0x2904828) /usr/local/go/src/net/http/server.go:3137 +0xe0 fp=0x2c75d6c sp=0x2c75d50 pc=0x346124 net/http.(*conn).serve(0x2a96000, {0x869cb0, 0x2a92180}) /usr/local/go/src/net/http/server.go:2039 +0x61c fp=0x2c75fdc sp=0x2c75d6c pc=0x341374 net/http.(*Server).Serve.gowrap3() /usr/local/go/src/net/http/server.go:3285 +0x38 fp=0x2c75fec sp=0x2c75fdc pc=0x3469c8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c75fec sp=0x2c75fec pc=0x933b8 created by net/http.(*Server).Serve in goroutine 20 /usr/local/go/src/net/http/server.go:3285 +0x468 goroutine 6168003 gp=0x2813c28 m=nil [chan receive, 14 minutes]: runtime.gopark(0x7c3b58, 0x2cd8270, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2b23d60 sp=0x2b23d4c pc=0x5c560 runtime.chanrecv(0x2cd8240, 0x2b23ddb, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2b23d9c sp=0x2b23d60 pc=0x1f518 runtime.chanrecv1(0x2cd8240, 0x2b23ddb) /usr/local/go/src/runtime/chan.go:442 +0x20 fp=0x2b23db0 sp=0x2b23d9c pc=0x1f038 github.com/devgianlu/go-librespot/dealer.(*Dealer).handleRequest(0x2b4e9a8, 0x2e04780) /home/volumio/go-librespot/dealer/recv.go:237 +0x1f8 fp=0x2b23f2c sp=0x2b23db0 pc=0x52ccb4 github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x2b4e9a8) /home/volumio/go-librespot/dealer/dealer.go:213 +0x4d8 fp=0x2b23fe4 sp=0x2b23f2c pc=0x52b3e4 github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1() /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x2b23fec sp=0x2b23fe4 pc=0x52ca3c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2b23fec sp=0x2b23fec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 6167978 /home/volumio/go-librespot/dealer/dealer.go:125 +0x98 goroutine 6168008 gp=0x31c47e8 m=nil [select, 11 minutes]: runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c6ecb0 sp=0x2c6ec9c pc=0x5c560 runtime.selectgo(0x2c6ee14, 0x2c6ed80, 0x0, 0x0, 0x3, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2c6ed50 sp=0x2c6ecb0 pc=0x70318 github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x397e720) /home/volumio/go-librespot/audio/provider.go:63 +0x118 fp=0x2c6efe4 sp=0x2c6ed50 pc=0x4a4f58 github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1.gowrap1() /home/volumio/go-librespot/audio/provider.go:53 +0x28 fp=0x2c6efec sp=0x2c6efe4 pc=0x4a5ca4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c6efec sp=0x2c6efec pc=0x933b8 created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1 in goroutine 6167978 /home/volumio/go-librespot/audio/provider.go:53 +0x60 goroutine 6167978 gp=0x29ed568 m=nil [chan receive, 14 minutes]: runtime.gopark(0x7c3b58, 0x30282f0, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2f315b8 sp=0x2f315a4 pc=0x5c560 runtime.chanrecv(0x30282c0, 0x2f31688, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2f315f4 sp=0x2f315b8 pc=0x1f518 runtime.chanrecv1(0x30282c0, 0x2f31688) /usr/local/go/src/runtime/chan.go:442 +0x20 fp=0x2f31608 sp=0x2f315f4 pc=0x1f038 github.com/devgianlu/go-librespot/player.(*Player).PositionMs(...) /home/volumio/go-librespot/player/player.go:396 main.(*AppPlayer).skipNext(0x2def860, {0x869c90, 0xd13698}, 0x0) /home/volumio/go-librespot/cmd/daemon/controls.go:518 +0xb8 fp=0x2f316a4 sp=0x2f31608 pc=0x6428c0 main.(*AppPlayer).handlePlayerCommand(0x2def860, {0x869c90, 0xd13698}, {0x68a6ab0c, {0x28d2360, 0x28}, {{0x300a1c0, 0x9}, {0x0, 0x0}, ...}}) /home/volumio/go-librespot/cmd/daemon/player.go:320 +0x728 fp=0x2f317c0 sp=0x2f316a4 pc=0x649814 main.(*AppPlayer).handleDealerRequest(0x2def860, {0x869c90, 0xd13698}, {0x2cd8240, {0x28d2240, 0x24}, {0x68a6ab0c, {0x28d2360, 0x28}, {{0x300a1c0, ...}, ...}}}) /home/volumio/go-librespot/cmd/daemon/player.go:366 +0x11c fp=0x2f318f4 sp=0x2f317c0 pc=0x64b568 main.(*AppPlayer).Run(0x2def860, {0x869c90, 0xd13698}, 0x2cd8840) /home/volumio/go-librespot/cmd/daemon/player.go:594 +0x55c fp=0x2f31fd8 sp=0x2f318f4 pc=0x64d5d0 main.(*App).withAppPlayer.func2.gowrap1() /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x40 fp=0x2f31fec sp=0x2f31fd8 pc=0x646700 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2f31fec sp=0x2f31fec pc=0x933b8 created by main.(*App).withAppPlayer.func2 in goroutine 76 /home/volumio/go-librespot/cmd/daemon/main.go:305 +0x2c8 goroutine 6168179 gp=0x3e7f448 m=nil [select, 3 minutes]: runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2856ccc sp=0x2856cb8 pc=0x5c560 runtime.selectgo(0x2856e48, 0x2856da8, 0x0, 0x0, 0x3, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2856d6c sp=0x2856ccc pc=0x70318 github.com/devgianlu/go-librespot/mercury.(*Client).recvLoop(0x397e700) /home/volumio/go-librespot/mercury/client.go:58 +0x138 fp=0x2856fe4 sp=0x2856d6c pc=0x528a08 github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1.gowrap1() /home/volumio/go-librespot/mercury/client.go:48 +0x28 fp=0x2856fec sp=0x2856fe4 pc=0x52a1a4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2856fec sp=0x2856fec pc=0x933b8 created by github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1 in goroutine 6167978 /home/volumio/go-librespot/mercury/client.go:48 +0x60 goroutine 6168002 gp=0x29fc5a8 m=nil [select]: runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e5d6b8 sp=0x2e5d6a4 pc=0x5c560 runtime.selectgo(0x2e5d7d4, 0x2e5d77c, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e5d758 sp=0x2e5d6b8 pc=0x70318 github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x293e848) /home/volumio/go-librespot/ap/ap.go:355 +0x8c fp=0x2e5d7e4 sp=0x2e5d758 pc=0x49d7cc github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap2() /home/volumio/go-librespot/ap/ap.go:264 +0x28 fp=0x2e5d7ec sp=0x2e5d7e4 pc=0x49cec4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e5d7ec sp=0x2e5d7ec pc=0x933b8 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 6167978 /home/volumio/go-librespot/ap/ap.go:264 +0x15c goroutine 6168004 gp=0x29fc6c8 m=nil [select]: runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c70e98 sp=0x2c70e84 pc=0x5c560 runtime.selectgo(0x2c70fd4, 0x2c70f60, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2c70f38 sp=0x2c70e98 pc=0x70318 github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x2b4e9a8) /home/volumio/go-librespot/dealer/dealer.go:138 +0x8c fp=0x2c70fe4 sp=0x2c70f38 pc=0x52aadc github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap2() /home/volumio/go-librespot/dealer/dealer.go:129 +0x28 fp=0x2c70fec sp=0x2c70fe4 pc=0x52c9e8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c70fec sp=0x2c70fec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 6167978 /home/volumio/go-librespot/dealer/dealer.go:129 +0x15c goroutine 6167977 gp=0x2b49e68 m=nil [sync.Mutex.Lock, 14 minutes]: runtime.gopark(0x7c3cc8, 0xced4c0, 0x15, 0x5, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2857e58 sp=0x2857e44 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.semacquire1(0x319e924, 0x0, 0x3, 0x1, 0x15) /usr/local/go/src/runtime/sema.go:160 +0x270 fp=0x2857e80 sp=0x2857e58 pc=0x70f54 sync.runtime_SemacquireMutex(0x319e924, 0x0, 0x1) /usr/local/go/src/runtime/sema.go:77 +0x3c fp=0x2857e98 sp=0x2857e80 pc=0x906d0 sync.(*Mutex).lockSlow(0x319e920) /usr/local/go/src/sync/mutex.go:171 +0x280 fp=0x2857ecc sp=0x2857e98 pc=0x9ec58 sync.(*Mutex).Lock(0x319e920) /usr/local/go/src/sync/mutex.go:90 +0x4c fp=0x2857ee0 sp=0x2857ecc pc=0x9e958 github.com/devgianlu/go-librespot/output.(*alsaOutput).DelayMs(0x319e900) /home/volumio/go-librespot/output/driver-alsa.go:386 +0x58 fp=0x2857f14 sp=0x2857ee0 pc=0x4b8814 github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x2e05a90) /home/volumio/go-librespot/player/player.go:287 +0x3c0 fp=0x2857fe4 sp=0x2857f14 pc=0x51ad60 github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1() /home/volumio/go-librespot/player/player.go:171 +0x28 fp=0x2857fec sp=0x2857fe4 pc=0x51a77c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2857fec sp=0x2857fec pc=0x933b8 created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 76 /home/volumio/go-librespot/player/player.go:171 +0x1f8 goroutine 6167976 gp=0x2ccaea8 m=nil [select]: runtime.gopark(0x7c3cfc, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e66f04 sp=0x2e66ef0 pc=0x5c560 runtime.selectgo(0x2e66fd4, 0x2e66fc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e66fa4 sp=0x2e66f04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x28c6880) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x2e66fe4 sp=0x2e66fa4 pc=0x539304 github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x2e66fec sp=0x2e66fe4 pc=0x539244 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e66fec sp=0x2e66fec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 76 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 6167985 gp=0x3e0d448 m=nil [IO wait]: runtime.gopark(0x7c3cb8, 0xf54a9648, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2b20d14 sp=0x2b20d00 pc=0x5c560 runtime.netpollblock(0xf54a9638, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2b20d2c sp=0x2b20d14 pc=0x53d6c internal/poll.runtime_pollWait(0xf54a9638, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2b20d40 sp=0x2b20d2c pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2d11558, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2b20d54 sp=0x2b20d40 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x2d11540, {0x31d850c, 0x3, 0x3}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x2b20d9c sp=0x2b20d54 pc=0x10f118 net.(*netFD).Read(0x2d11540, {0x31d850c, 0x3, 0x3}) /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x2b20dc8 sp=0x2b20d9c pc=0x181748 net.(*conn).Read(0x36738c8, {0x31d850c, 0x3, 0x3}) /usr/local/go/src/net/net.go:179 +0x48 fp=0x2b20df4 sp=0x2b20dc8 pc=0x191c64 net.(*TCPConn).Read(0x36738c8, {0x31d850c, 0x3, 0x3}) <autogenerated>:1 +0x44 fp=0x2b20e14 sp=0x2b20df4 pc=0x1a4eb8 io.ReadAtLeast({0x86502c, 0x36738c8}, {0x31d850c, 0x3, 0x3}, 0x3) /usr/local/go/src/io/io.go:335 +0x90 fp=0x2b20e40 sp=0x2b20e14 pc=0x107ed4 io.ReadFull(...) /usr/local/go/src/io/io.go:354 github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x2e8b640, {0x869c90, 0xd13698}) /home/volumio/go-librespot/ap/shannon.go:124 +0x3a0 fp=0x2b20f04 sp=0x2b20e40 pc=0x4a0770 github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x293e848) /home/volumio/go-librespot/ap/ap.go:276 +0x68 fp=0x2b20fe4 sp=0x2b20f04 pc=0x49cfac github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap1() /home/volumio/go-librespot/ap/ap.go:260 +0x28 fp=0x2b20fec sp=0x2b20fe4 pc=0x49cf18 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2b20fec sp=0x2b20fec pc=0x933b8 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 6167978 /home/volumio/go-librespot/ap/ap.go:260 +0x98 goroutine 6168060 gp=0x2b59b08 m=4 mp=0x284b088 [syscall, 14 minutes]: runtime.cgocall(0x6511b0, 0x2e30764) /usr/local/go/src/runtime/cgocall.go:157 +0x50 fp=0x2e3074c sp=0x2e30734 pc=0x1ccc0 github.com/devgianlu/go-librespot/output._Cfunc_snd_pcm_writei(0xf0291fc8, 0x281ca00, 0x44e) _cgo_gotypes.go:807 +0x38 fp=0x2e30760 sp=0x2e3074c pc=0x4b5704 github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop.func2(0xf0291fc8, 0x2e307bc, 0x89c, 0x319e900) /home/volumio/go-librespot/output/driver-alsa.go:299 +0xec fp=0x2e3078c sp=0x2e30760 pc=0x4b8070 github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop(0x319e900, 0xf0291fc8) /home/volumio/go-librespot/output/driver-alsa.go:299 +0x1cc fp=0x2e307e0 sp=0x2e3078c pc=0x4b7c74 github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm.gowrap1() /home/volumio/go-librespot/output/driver-alsa.go:200 +0x30 fp=0x2e307ec sp=0x2e307e0 pc=0x4b6580 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e307ec sp=0x2e307ec pc=0x933b8 created by github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm in goroutine 6167977 /home/volumio/go-librespot/output/driver-alsa.go:200 +0x4a4 goroutine 7135611 gp=0x2b88b48 m=nil [chan send, 11 minutes]: runtime.gopark(0x7c3b58, 0x2cd8830, 0xf, 0x6, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e69e3c sp=0x2e69e28 pc=0x5c560 runtime.chansend(0x2cd8800, 0x2e69fc4, 0x1, 0x63da1c) /usr/local/go/src/runtime/chan.go:259 +0x378 fp=0x2e69e74 sp=0x2e69e3c pc=0x1e6a8 runtime.chansend1(0x2cd8800, 0x2c37fc4) /usr/local/go/src/runtime/chan.go:145 +0x28 fp=0x2e69e8c sp=0x2e69e74 pc=0x1e32c github.com/devgianlu/go-librespot/player.(*Player).SetSecondaryStream(...) /home/volumio/go-librespot/player/player.go:412 main.(*AppPlayer).prefetchNext(0x2def860) /home/volumio/go-librespot/cmd/daemon/controls.go:54 +0x4a8 fp=0x2e69fe4 sp=0x2e69e8c pc=0x63da1c main.(*AppPlayer).prefetchNext-fm() <autogenerated>:1 +0x28 fp=0x2e69fec sp=0x2e69fe4 pc=0x64f2e0 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e69fec sp=0x2e69fec pc=0x933b8 created by time.goFunc /usr/local/go/src/time/sleep.go:177 +0x2c trap 0x0 error 0x0 oldmask 0x0 r0 0xfffffffc r1 0xffc37a68 r2 0x80 r3 0x1b52 r4 0x0 r5 0x0 r6 0x0 r7 0x15a r8 0x0 r9 0x0 r10 0xce8e18 fp 0xc9170c ip 0xac64d992 sp 0xffc379ec lr 0x1aa1c pc 0x1aac4 cpsr 0x200d0010 fault 0x0 ----- SIGQUIT: quit PC=0x94404 m=2 sigcode=0 goroutine 0 gp=0x28026c8 m=2 mp=0x284a588 [idle]: runtime.futex(0xceb44c, 0x80, 0x0, 0xf6ce6d60, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:417 +0x20 fp=0xf6ce6d40 sp=0xf6ce6d40 pc=0x94404 runtime.futexsleep(0xceb44c, 0x0, 0x1a0e49d26) /usr/local/go/src/runtime/os_linux.go:75 +0x178 fp=0xf6ce6d68 sp=0xf6ce6d40 pc=0x54e3c runtime.notetsleep_internal(0xceb44c, 0x1a0e49d26) /usr/local/go/src/runtime/lock_futex.go:212 +0x124 fp=0xf6ce6d90 sp=0xf6ce6d68 pc=0x24b6c runtime.notetsleep(0xceb44c, 0x1a0e49d26) /usr/local/go/src/runtime/lock_futex.go:235 +0x48 fp=0xf6ce6da4 sp=0xf6ce6d90 pc=0x24d0c runtime.sysmon() /usr/local/go/src/runtime/proc.go:6001 +0x2e0 fp=0xf6ce6e00 sp=0xf6ce6da4 pc=0x69cb8 runtime.mstart1() /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf6ce6e10 sp=0xf6ce6e00 pc=0x5f5fc runtime.mstart0() /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf6ce6e24 sp=0xf6ce6e10 pc=0x5f570 runtime.mstart() /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf6ce6e28 sp=0xf6ce6e24 pc=0x9168c trap 0x0 error 0x0 oldmask 0x0 r0 0xfffffffc r1 0x80 r2 0x0 r3 0xf6ce6d60 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x0 r9 0x0 r10 0x28026c8 fp 0x3b9aca00 ip 0x0 sp 0xf6ce6d40 lr 0x54e3c pc 0x94404 cpsr 0x60070010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=3 sigcode=0 goroutine 0 gp=0x2802a28 m=3 mp=0x284ab08 [idle]: runtime.futex(0x284abd0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf64e5cc4 sp=0xf64e5cc4 pc=0x94400 runtime.futexsleep(0x284abd0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf64e5cec sp=0xf64e5cc4 pc=0x54d20 runtime.notesleep(0x284abd0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf64e5d0c sp=0xf64e5cec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf64e5d20 sp=0xf64e5d0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf64e5dcc sp=0xf64e5d20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf64e5de8 sp=0xf64e5dcc pc=0x643bc runtime.park_m(0x2cb6008) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf64e5e08 sp=0xf64e5de8 pc=0x64c34 runtime.mcall(0xf64e6450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf64e5e10 sp=0xf64e5e08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x284abd0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0x1 r10 0x2802a28 fp 0x6 ip 0x5d2d1abd sp 0xf64e5cc4 lr 0x54d20 pc 0x94400 cpsr 0xa00d0010 fault 0x0 ----- SIGQUIT: quit PC=0xf7057746 m=4 sigcode=0 signal arrived during cgo execution goroutine 6168060 gp=0x2b59b08 m=4 mp=0x284b088 [syscall, 14 minutes]: runtime.cgocall(0x6511b0, 0x2e30764) /usr/local/go/src/runtime/cgocall.go:157 +0x50 fp=0x2e3074c sp=0x2e30734 pc=0x1ccc0 github.com/devgianlu/go-librespot/output._Cfunc_snd_pcm_writei(0xf0291fc8, 0x281ca00, 0x44e) _cgo_gotypes.go:807 +0x38 fp=0x2e30760 sp=0x2e3074c pc=0x4b5704 github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop.func2(0xf0291fc8, 0x2e307bc, 0x89c, 0x319e900) /home/volumio/go-librespot/output/driver-alsa.go:299 +0xec fp=0x2e3078c sp=0x2e30760 pc=0x4b8070 github.com/devgianlu/go-librespot/output.(*alsaOutput).outputLoop(0x319e900, 0xf0291fc8) /home/volumio/go-librespot/output/driver-alsa.go:299 +0x1cc fp=0x2e307e0 sp=0x2e3078c pc=0x4b7c74 github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm.gowrap1() /home/volumio/go-librespot/output/driver-alsa.go:200 +0x30 fp=0x2e307ec sp=0x2e307e0 pc=0x4b6580 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e307ec sp=0x2e307ec pc=0x933b8 created by github.com/devgianlu/go-librespot/output.(*alsaOutput).setupPcm in goroutine 6167977 /home/volumio/go-librespot/output/driver-alsa.go:200 +0x4a4 trap 0x0 error 0x0 oldmask 0x0 r0 0xfffffffc r1 0x3 r2 0xffffffff r3 0x0 r4 0x74 r5 0xffffffff r6 0x3 r7 0xa8 r8 0xf5ce4cf0 r9 0xf727cd1d r10 0xffffffff fp 0xf02920e4 ip 0xa8 sp 0xf5ce4cc8 lr 0xf70d3211 pc 0xf7057746 cpsr 0x800d0030 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=5 sigcode=0 goroutine 0 gp=0x28030e8 m=5 mp=0x284b608 [idle]: runtime.futex(0x284b6d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf52fecc4 sp=0xf52fecc4 pc=0x94400 runtime.futexsleep(0x284b6d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf52fecec sp=0xf52fecc4 pc=0x54d20 runtime.notesleep(0x284b6d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf52fed0c sp=0xf52fecec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf52fed20 sp=0xf52fed0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf52fedcc sp=0xf52fed20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf52fede8 sp=0xf52fedcc pc=0x643bc runtime.park_m(0x3083208) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf52fee08 sp=0xf52fede8 pc=0x64c34 runtime.mcall(0xf52ff450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf52fee10 sp=0xf52fee08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x284b6d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0x1 r10 0x28030e8 fp 0x6 ip 0xa88bb736 sp 0xf52fecc4 lr 0x54d20 pc 0x94400 cpsr 0xa00d0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=6 sigcode=0 goroutine 0 gp=0x2803328 m=6 mp=0x284bb88 [idle]: runtime.futex(0xd13eb4, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf44fedac sp=0xf44fedac pc=0x94400 runtime.futexsleep(0xd13eb4, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf44fedd4 sp=0xf44fedac pc=0x54d20 runtime.notesleep(0xd13eb4) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf44fedf4 sp=0xf44fedd4 pc=0x249e8 runtime.templateThread() /usr/local/go/src/runtime/proc.go:2760 +0x90 fp=0xf44fee00 sp=0xf44fedf4 pc=0x61084 runtime.mstart1() /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf44fee10 sp=0xf44fee00 pc=0x5f5fc runtime.mstart0() /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf44fee24 sp=0xf44fee10 pc=0x5f570 runtime.mstart() /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf44fee28 sp=0xf44fee24 pc=0x9168c trap 0x0 error 0x0 oldmask 0x0 r0 0xd13eb4 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0xf44ff450 r9 0xf44ff4c0 r10 0x2803328 fp 0x6 ip 0x7 sp 0xf44fedac lr 0x54d20 pc 0x94400 cpsr 0xa00e0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=7 sigcode=0 goroutine 0 gp=0x2803b08 m=7 mp=0x284d188 [idle]: runtime.futex(0x284d250, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf3cfdcc4 sp=0xf3cfdcc4 pc=0x94400 runtime.futexsleep(0x284d250, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf3cfdcec sp=0xf3cfdcc4 pc=0x54d20 runtime.notesleep(0x284d250) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf3cfdd0c sp=0xf3cfdcec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf3cfdd20 sp=0xf3cfdd0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf3cfddcc sp=0xf3cfdd20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf3cfdde8 sp=0xf3cfddcc pc=0x643bc runtime.park_m(0x29ddc28) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf3cfde08 sp=0xf3cfdde8 pc=0x64c34 runtime.mcall(0xf3cfe450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf3cfde10 sp=0xf3cfde08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x284d250 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x2810040 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x2803b08 fp 0x6 ip 0x0 sp 0xf3cfdcc4 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=8 sigcode=0 goroutine 0 gp=0x2bfa6c8 m=8 mp=0x2ad3708 [idle]: runtime.futex(0x2ad37d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf32febf8 sp=0xf32febf8 pc=0x94400 runtime.futexsleep(0x2ad37d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf32fec20 sp=0xf32febf8 pc=0x54d20 runtime.notesleep(0x2ad37d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf32fec40 sp=0xf32fec20 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf32fec54 sp=0xf32fec40 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf32fed00 sp=0xf32fec54 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf32fed1c sp=0xf32fed00 pc=0x643bc runtime.goschedImpl(0x29fc6c8, 0x1) /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf32fed34 sp=0xf32fed1c pc=0x64de4 runtime.gopreempt_m(...) /usr/local/go/src/runtime/proc.go:4082 runtime.newstack() /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf32fee0c sp=0xf32fed34 pc=0x776ac runtime.morestack() /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf32fee10 sp=0xf32fee0c pc=0x917f8 trap 0x0 error 0x0 oldmask 0x0 r0 0x2ad37d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x2bfa6c8 fp 0x6 ip 0xa95672ed sp 0xf32febf8 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=9 sigcode=0 goroutine 0 gp=0x2c59208 m=9 mp=0x2bc0008 [idle]: runtime.futex(0x2bc00d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf2610cc4 sp=0xf2610cc4 pc=0x94400 runtime.futexsleep(0x2bc00d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf2610cec sp=0xf2610cc4 pc=0x54d20 runtime.notesleep(0x2bc00d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf2610d0c sp=0xf2610cec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf2610d20 sp=0xf2610d0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf2610dcc sp=0xf2610d20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf2610de8 sp=0xf2610dcc pc=0x643bc runtime.park_m(0x2cb6248) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf2610e08 sp=0xf2610de8 pc=0x64c34 runtime.mcall(0xf2611450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf2610e10 sp=0xf2610e08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x2bc00d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0x1 r10 0x2c59208 fp 0x6 ip 0xf92e161f sp 0xf2610cc4 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=10 sigcode=0 goroutine 0 gp=0x3e0c248 m=10 mp=0x2bc1608 [idle]: runtime.futex(0x2bc16d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf1dcfcdc sp=0xf1dcfcdc pc=0x94400 runtime.futexsleep(0x2bc16d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf1dcfd04 sp=0xf1dcfcdc pc=0x54d20 runtime.notesleep(0x2bc16d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf1dcfd24 sp=0xf1dcfd04 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf1dcfd38 sp=0xf1dcfd24 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf1dcfde4 sp=0xf1dcfd38 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf1dcfe00 sp=0xf1dcfde4 pc=0x643bc runtime.goexit0(0x2d70c68) /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xf1dcfe08 sp=0xf1dcfe00 pc=0x6527c runtime.mcall(0xf1dd0450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf1dcfe10 sp=0xf1dcfe08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x2bc16d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x3e0c248 fp 0x6 ip 0xfd8812c0 sp 0xf1dcfcdc lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 signal: aborted ``` </details>
Author
Owner

@devgianlu commented on GitHub (Jun 14, 2025):

In the above everything is locked up because:

  1. snd_pcm_writei is called while holding alsaOutput.lock
  2. alsaOutput.DelayMs wants to hold the lock because Player.manageLoop received a playerCmdPosition message
  3. Player.PositionMs is waiting for a response because skipNext was called
  4. Dealer.handleRequest is waiting for a response on the skip next command
  5. The waiting is holding up the entire receive loop for the dealer, preveting pong messages from being registered

This seems like an unusual scenario, but the overall problem is clear: if anything hangs, the receive loops are directly affected. However, why is snd_pcm_writei stuck? Simply putting a timeout on 4 would hide the real problem.

<!-- gh-comment-id:2972602275 --> @devgianlu commented on GitHub (Jun 14, 2025): In the above everything is locked up because: 1. `snd_pcm_writei` is called while holding `alsaOutput.lock` 2. `alsaOutput.DelayMs` wants to hold the lock because `Player.manageLoop` received a `playerCmdPosition` message 3. `Player.PositionMs` is waiting for a response because `skipNext` was called 4. `Dealer.handleRequest` is waiting for a response on the skip next command 5. The waiting is holding up the entire receive loop for the dealer, preveting pong messages from being registered This seems like an unusual scenario, but the overall problem is clear: if anything hangs, the receive loops are directly affected. However, why is `snd_pcm_writei` stuck? Simply putting a timeout on 4 would hide the real problem.
Author
Owner

@2opremio commented on GitHub (Jul 4, 2025):

I just got another instance:

Logs:

Jul 04 20:25:13 duchamp go-librespot[1157]: time="2025-07-04T20:25:13Z" level=info msg="loaded track \"6 Months Later\" (paused: false, position: 0ms, duration: 182868ms, prefetched: false)" uri="spotify:track:4Km9FSF9iaQiTLnFPdbPom"
Jul 04 20:25:29 duchamp go-librespot[1157]: time="2025-07-04T20:25:29Z" level=info msg="loaded track \"Creep\" (paused: false, position: 0ms, duration: 238640ms, prefetched: false)" uri="spotify:track:70LcF31zb1H0PyJoS1Sx1r"
Jul 04 20:25:32 duchamp go-librespot[1157]: time="2025-07-04T20:25:32Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:25:32 duchamp go-librespot[1157]: time="2025-07-04T20:25:32Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:25:33 duchamp go-librespot[1157]: time="2025-07-04T20:25:33Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:25:33 duchamp go-librespot[1157]: time="2025-07-04T20:25:33Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:26:12 duchamp go-librespot[1157]: time="2025-07-04T20:26:12Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:26:12 duchamp go-librespot[1157]: time="2025-07-04T20:26:12Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n"
Jul 04 20:28:27 duchamp go-librespot[1157]: time="2025-07-04T20:28:27Z" level=error msg="did not receive last pong from dealer, 60s passed"
Jul 04 20:28:57 duchamp go-librespot[1157]: time="2025-07-04T20:28:57Z" level=error msg="did not receive last pong from dealer, 90s passed"
Jul 04 20:28:58 duchamp go-librespot[1157]: time="2025-07-04T20:28:58Z" level=info msg="prefetched track \"6 Months Later\" (duration: 182868ms)" uri="spotify:track:4Km9FSF9iaQiTLnFPdbPom"
Jul 04 20:29:27 duchamp go-librespot[1157]: time="2025-07-04T20:29:27Z" level=error msg="did not receive last pong from dealer, 120s passed"
Jul 04 20:29:57 duchamp go-librespot[1157]: time="2025-07-04T20:29:57Z" level=error msg="did not receive last pong from dealer, 150s passed"
Jul 04 20:30:27 duchamp go-librespot[1157]: time="2025-07-04T20:30:27Z" level=error msg="did not receive last pong from dealer, 180s passed"
Jul 04 20:30:57 duchamp go-librespot[1157]: time="2025-07-04T20:30:57Z" level=error msg="did not receive last pong from dealer, 210s passed"
Jul 04 20:31:27 duchamp go-librespot[1157]: time="2025-07-04T20:31:27Z" level=error msg="did not receive last pong from dealer, 240s passed"
Jul 04 20:31:57 duchamp go-librespot[1157]: time="2025-07-04T20:31:57Z" level=error msg="did not receive last pong from dealer, 270s passed"
Jul 04 20:32:27 duchamp go-librespot[1157]: time="2025-07-04T20:32:27Z" level=error msg="did not receive last pong from dealer, 300s passed"
Jul 04 20:32:57 duchamp go-librespot[1157]: time="2025-07-04T20:32:57Z" level=error msg="did not receive last pong from dealer, 330s passed"
Jul 04 20:33:27 duchamp go-librespot[1157]: time="2025-07-04T20:33:27Z" level=error msg="did not receive last pong from dealer, 360s passed"
Jul 04 20:33:57 duchamp go-librespot[1157]: time="2025-07-04T20:33:57Z" level=error msg="did not receive last pong from dealer, 390s passed"
Jul 04 20:34:27 duchamp go-librespot[1157]: time="2025-07-04T20:34:27Z" level=error msg="did not receive last pong from dealer, 420s passed"

Goroutine dump: https://pastebin.com/djA5HGvq

(It didn't fit as a comment)

<!-- gh-comment-id:3037213280 --> @2opremio commented on GitHub (Jul 4, 2025): I just got another instance: Logs: ``` Jul 04 20:25:13 duchamp go-librespot[1157]: time="2025-07-04T20:25:13Z" level=info msg="loaded track \"6 Months Later\" (paused: false, position: 0ms, duration: 182868ms, prefetched: false)" uri="spotify:track:4Km9FSF9iaQiTLnFPdbPom" Jul 04 20:25:29 duchamp go-librespot[1157]: time="2025-07-04T20:25:29Z" level=info msg="loaded track \"Creep\" (paused: false, position: 0ms, duration: 238640ms, prefetched: false)" uri="spotify:track:70LcF31zb1H0PyJoS1Sx1r" Jul 04 20:25:32 duchamp go-librespot[1157]: time="2025-07-04T20:25:32Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:25:32 duchamp go-librespot[1157]: time="2025-07-04T20:25:32Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:25:33 duchamp go-librespot[1157]: time="2025-07-04T20:25:33Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:25:33 duchamp go-librespot[1157]: time="2025-07-04T20:25:33Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:26:12 duchamp go-librespot[1157]: time="2025-07-04T20:26:12Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:26:12 duchamp go-librespot[1157]: time="2025-07-04T20:26:12Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:26:14 duchamp go-librespot[1157]: time="2025-07-04T20:26:14Z" level=warning msg="error while handling alsa mixer events. (Success)\n" Jul 04 20:28:27 duchamp go-librespot[1157]: time="2025-07-04T20:28:27Z" level=error msg="did not receive last pong from dealer, 60s passed" Jul 04 20:28:57 duchamp go-librespot[1157]: time="2025-07-04T20:28:57Z" level=error msg="did not receive last pong from dealer, 90s passed" Jul 04 20:28:58 duchamp go-librespot[1157]: time="2025-07-04T20:28:58Z" level=info msg="prefetched track \"6 Months Later\" (duration: 182868ms)" uri="spotify:track:4Km9FSF9iaQiTLnFPdbPom" Jul 04 20:29:27 duchamp go-librespot[1157]: time="2025-07-04T20:29:27Z" level=error msg="did not receive last pong from dealer, 120s passed" Jul 04 20:29:57 duchamp go-librespot[1157]: time="2025-07-04T20:29:57Z" level=error msg="did not receive last pong from dealer, 150s passed" Jul 04 20:30:27 duchamp go-librespot[1157]: time="2025-07-04T20:30:27Z" level=error msg="did not receive last pong from dealer, 180s passed" Jul 04 20:30:57 duchamp go-librespot[1157]: time="2025-07-04T20:30:57Z" level=error msg="did not receive last pong from dealer, 210s passed" Jul 04 20:31:27 duchamp go-librespot[1157]: time="2025-07-04T20:31:27Z" level=error msg="did not receive last pong from dealer, 240s passed" Jul 04 20:31:57 duchamp go-librespot[1157]: time="2025-07-04T20:31:57Z" level=error msg="did not receive last pong from dealer, 270s passed" Jul 04 20:32:27 duchamp go-librespot[1157]: time="2025-07-04T20:32:27Z" level=error msg="did not receive last pong from dealer, 300s passed" Jul 04 20:32:57 duchamp go-librespot[1157]: time="2025-07-04T20:32:57Z" level=error msg="did not receive last pong from dealer, 330s passed" Jul 04 20:33:27 duchamp go-librespot[1157]: time="2025-07-04T20:33:27Z" level=error msg="did not receive last pong from dealer, 360s passed" Jul 04 20:33:57 duchamp go-librespot[1157]: time="2025-07-04T20:33:57Z" level=error msg="did not receive last pong from dealer, 390s passed" Jul 04 20:34:27 duchamp go-librespot[1157]: time="2025-07-04T20:34:27Z" level=error msg="did not receive last pong from dealer, 420s passed" ``` Goroutine dump: https://pastebin.com/djA5HGvq (It didn't fit as a comment)
Author
Owner

@devgianlu commented on GitHub (Jul 12, 2025):

@2opremio I've pushed f85a223ead to hopefully fix your particular issue.

<!-- gh-comment-id:3065191485 --> @devgianlu commented on GitHub (Jul 12, 2025): @2opremio I've pushed f85a223ead704203da0c4ca30cbf42ccabe5aab9 to hopefully fix your particular issue.
Author
Owner

@2opremio commented on GitHub (Jul 12, 2025):

That’s great! I will test it right away.

Have you thought about a general solution for locking problem?

<!-- gh-comment-id:3065570890 --> @2opremio commented on GitHub (Jul 12, 2025): That’s great! I will test it right away. Have you thought about a general solution for locking problem?
Author
Owner

@devgianlu commented on GitHub (Jul 13, 2025):

Have you thought about a general solution for locking problem?

There is no general solution I am afraid. The locking is due to the design of having one "thread" process all inputs and requests. I could put a timeout on how long we wait for something to be completed, but then something else would be frozen up and much more difficult to detect.

<!-- gh-comment-id:3066991183 --> @devgianlu commented on GitHub (Jul 13, 2025): > Have you thought about a general solution for locking problem? There is no general solution I am afraid. The locking is due to the design of having one "thread" process all inputs and requests. I could put a timeout on how long we wait for something to be completed, but then something else would be frozen up and much more difficult to detect.
Author
Owner

@2opremio commented on GitHub (Jul 13, 2025):

Fair enough!

<!-- gh-comment-id:3067134255 --> @2opremio commented on GitHub (Jul 13, 2025): Fair enough!
Author
Owner

@tooxo commented on GitHub (Jul 28, 2025):

One potential problem here is that ChunkedReader.downloadChunk retries failed requests indefinitely, which could block the event loop forever, since the player downloads the first chunk synchronously in the event loop while loading a new song.
I'm currently trying to prove this, but reproducing the issue is kind of a pain :/
Error logging inside the downloadChunk method would have gone a long way, as all error messages here are discarded anyway.

Edit:
This also renders these "error handlers" useless, as they will never be reached.
https://github.com/devgianlu/go-librespot/blob/master/audio/chunked_reader.go#L80
https://github.com/devgianlu/go-librespot/blob/master/audio/chunked_reader.go#L175

I understand the intention behind infinite retries, but if somehow this error is caused by a bad request or something comparable this gets the complete program stuck.

<!-- gh-comment-id:3128389763 --> @tooxo commented on GitHub (Jul 28, 2025): One potential problem here is that `ChunkedReader.downloadChunk` retries failed requests indefinitely, which could block the event loop forever, since the player downloads the first chunk synchronously in the event loop while loading a new song. I'm currently trying to prove this, but reproducing the issue is kind of a pain :/ Error logging inside the downloadChunk method would have gone a long way, as all error messages here are discarded anyway. Edit: This also renders these "error handlers" useless, as they will never be reached. https://github.com/devgianlu/go-librespot/blob/master/audio/chunked_reader.go#L80 https://github.com/devgianlu/go-librespot/blob/master/audio/chunked_reader.go#L175 I understand the intention behind infinite retries, but if somehow this error is caused by a bad request or something comparable this gets the complete program stuck.
Author
Owner

@devgianlu commented on GitHub (Aug 1, 2025):

@tooxo I think I had this happen just today:

Full goroutine dump
time="2025-08-01T11:51:36+02:00" level=error msg="did not receive last pong from dealer, 210s passed"
time="2025-08-01T11:52:06+02:00" level=error msg="did not receive last pong from dealer, 240s passed"
time="2025-08-01T11:52:36+02:00" level=trace msg="received accesspoint ping"
time="2025-08-01T11:52:36+02:00" level=trace msg="received accesspoint pong ack"
time="2025-08-01T11:52:36+02:00" level=error msg="did not receive last pong from dealer, 270s passed"
time="2025-08-01T11:53:06+02:00" level=error msg="did not receive last pong from dealer, 300s passed"
time="2025-08-01T11:53:36+02:00" level=error msg="did not receive last pong from dealer, 330s passed"
time="2025-08-01T11:53:46+02:00" level=debug msg="put connect state because PLAYER_STATE_CHANGED"
time="2025-08-01T11:53:46+02:00" level=debug msg="sending successful reply for dealer request"
time="2025-08-01T11:53:46+02:00" level=error msg="failed sending dealer reply" error="failed sending dealer reply: failed to write msg: WebSocket closed: sent close frame: status = StatusServiceRestart and reason = \"\"" uri="hm://connect-state/v1/player/command"
time="2025-08-01T11:53:46+02:00" level=error msg="failed receiving dealer message" error="failed to get reader: WebSocket closed: sent close frame: status = StatusServiceRestart and reason = \"\""
time="2025-08-01T11:53:46+02:00" level=debug msg="prefetching next track" uri="spotify:track:5s2coZZQHU7IN6ErpXFula"
time="2025-08-01T11:53:46+02:00" level=debug msg="selected format OGG_VORBIS_320 (4591b438e05223c47342f38edc2d786651a47121)" uri="spotify:track:5s2coZZQHU7IN6ErpXFula"
time="2025-08-01T11:53:46+02:00" level=debug msg="requested aes key for file 4591b438e05223c47342f38edc2d786651a47121, gid: 5s2coZZQHU7IN6ErpXFula"
time="2025-08-01T11:53:46+02:00" level=debug msg="put connect state because PLAYER_STATE_CHANGED"
time="2025-08-01T11:53:46+02:00" level=trace msg="emitting websocket event: playing"
time="2025-08-01T11:53:46+02:00" level=trace msg="emitting websocket event: not_playing"
time="2025-08-01T11:53:46+02:00" level=debug msg="loading track (paused: false, position: 42ms)" uri="spotify:track:5s2coZZQHU7IN6ErpXFula"
time="2025-08-01T11:53:46+02:00" level=debug msg="put connect state because PLAYER_STATE_CHANGED"
time="2025-08-01T11:53:46+02:00" level=trace msg="emitting websocket event: will_play"
time="2025-08-01T11:53:46+02:00" level=debug msg="selected format OGG_VORBIS_320 (4591b438e05223c47342f38edc2d786651a47121)" uri="spotify:track:5s2coZZQHU7IN6ErpXFula"
time="2025-08-01T11:53:46+02:00" level=debug msg="requested aes key for file 4591b438e05223c47342f38edc2d786651a47121, gid: 5s2coZZQHU7IN6ErpXFula"
time="2025-08-01T11:54:06+02:00" level=error msg="did not receive last pong from dealer, 360s passed"
SIGABRT: abort
PC=0x94400 m=0 sigcode=0
goroutine 0 gp=0xce8e18 m=0 mp=0xce96c0 [idle]:
runtime.futex(0xce9788, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xffe091cc sp=0xffe091cc pc=0x94400
runtime.futexsleep(0xce9788, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xffe091f4 sp=0xffe091cc pc=0x54d20
runtime.notesleep(0xce9788)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xffe09214 sp=0xffe091f4 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xffe09228 sp=0xffe09214 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xffe092d4 sp=0xffe09228 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xffe092f0 sp=0xffe092d4 pc=0x643bc
runtime.goexit0(0x2973d48)
        /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xffe092f8 sp=0xffe092f0 pc=0x6527c
runtime.mcall(0x863d54)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xffe09300 sp=0xffe092f8 pc=0x916ec
goroutine 1 gp=0x2802128 m=nil [select, 2601 minutes]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2858d00 sp=0x2858cec pc=0x5c560
runtime.selectgo(0x2858e00, 0x293ddcc, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2858da0 sp=0x2858d00 pc=0x70318
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x2c38000, 0x2858e90)
        /home/volumio/go-librespot/zeroconf/zeroconf.go:283 +0x228 fp=0x2858e44 sp=0x2858da0 pc=0x5b0748
main.(*App).withAppPlayer(0x28a2d00, {0x86a350, 0xd13698}, 0x280f4f0)
        /home/volumio/go-librespot/cmd/daemon/main.go:321 +0x554 fp=0x2858ed0 sp=0x2858e44 pc=0x646228
main.(*App).withCredentials(...)
        /home/volumio/go-librespot/cmd/daemon/main.go:193
main.(*App).SpotifyToken(0x28a2d00, {0x86a350, 0xd13698}, {0x2810fd0, 0xb}, {0x295a000, 0x16a})
        /home/volumio/go-librespot/cmd/daemon/main.go:185 +0xd8 fp=0x2858f00 sp=0x2858ed0 pc=0x64567c
main.main()
        /home/volumio/go-librespot/cmd/daemon/main.go:556 +0x588 fp=0x2858fa8 sp=0x2858f00 pc=0x648588
runtime.main()
        /usr/local/go/src/runtime/proc.go:271 +0x2fc fp=0x2858fec sp=0x2858fa8 pc=0x5bfd0
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2858fec sp=0x2858fec pc=0x933b8
goroutine 2 gp=0x28027e8 m=nil [force gc (idle), 3 minutes]:
runtime.gopark(0x7c450c, 0xce7ef0, 0x11, 0xa, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2846fd4 sp=0x2846fc0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.forcegchelper()
        /usr/local/go/src/runtime/proc.go:326 +0xe4 fp=0x2846fec sp=0x2846fd4 pc=0x5c39c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2846fec sp=0x2846fec pc=0x933b8
created by runtime.init.5 in goroutine 1
        /usr/local/go/src/runtime/proc.go:314 +0x1c
goroutine 3 gp=0x2802b48 m=nil [GC sweep wait]:
runtime.gopark(0x7c450c, 0xce84f8, 0xc, 0x9, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x28477c4 sp=0x28477b0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.bgsweep(0x286e000)
        /usr/local/go/src/runtime/mgcsweep.go:318 +0x11c fp=0x28477e4 sp=0x28477c4 pc=0x44ce8
runtime.gcenable.gowrap1()
        /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x28477ec sp=0x28477e4 pc=0x34e08
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28477ec sp=0x28477ec pc=0x933b8
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:203 +0x74
goroutine 4 gp=0x2802c68 m=nil [GC scavenge wait]:
runtime.gopark(0x7c450c, 0xce8ba8, 0xd, 0xa, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2847fb4 sp=0x2847fa0 pc=0x5c560
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.(*scavengerState).park(0xce8ba8)
        /usr/local/go/src/runtime/mgcscavenge.go:425 +0x68 fp=0x2847fc8 sp=0x2847fb4 pc=0x42008
runtime.bgscavenge(0x286e000)
        /usr/local/go/src/runtime/mgcscavenge.go:658 +0x60 fp=0x2847fe4 sp=0x2847fc8 pc=0x42740
runtime.gcenable.gowrap2()
        /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x2847fec sp=0x2847fe4 pc=0x34db4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2847fec sp=0x2847fec pc=0x933b8
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:204 +0xbc
goroutine 5 gp=0x2803448 m=nil [finalizer wait]:
runtime.gopark(0x7c43b8, 0xd13738, 0x10, 0xa, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x284878c sp=0x2848778 pc=0x5c560
runtime.runfinq()
        /usr/local/go/src/runtime/mfinal.go:194 +0x110 fp=0x28487ec sp=0x284878c pc=0x33bf4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28487ec sp=0x28487ec pc=0x933b8
created by runtime.createfing in goroutine 1
        /usr/local/go/src/runtime/mfinal.go:164 +0x5c
goroutine 8 gp=0x2950c68 m=nil [IO wait, 27 minutes]:
runtime.gopark(0x7c44fc, 0xf51aaf08, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285bd28 sp=0x285bd14 pc=0x5c560
runtime.netpollblock(0xf51aaef8, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285bd40 sp=0x285bd28 pc=0x53d6c
internal/poll.runtime_pollWait(0xf51aaef8, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285bd54 sp=0x285bd40 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2891418, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285bd68 sp=0x285bd54 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x2891400)
        /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x285bdb0 sp=0x285bd68 pc=0x112798
net.(*netFD).accept(0x2891400)
        /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x285be18 sp=0x285bdb0 pc=0x18363c
net.(*TCPListener).accept(0x2826b10)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x285be30 sp=0x285be18 pc=0x19ba78
net.(*TCPListener).Accept(0x2826b10)
        /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x285be4c sp=0x285be30 pc=0x19aae4
net/http.(*onceCloseListener).Accept(0x29b0340)
        <autogenerated>:1 +0x34 fp=0x285be64 sp=0x285be4c pc=0x367e94
net/http.(*Server).Serve(0x29ac0a8, {0x869b18, 0x2826b10})
        /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x285befc sp=0x285be64 pc=0x346550
net/http.Serve(...)
        /usr/local/go/src/net/http/server.go:2794
main.(*ConcreteApiServer).serve(0x2828fc0)
        /home/volumio/go-librespot/cmd/daemon/api_server.go:611 +0x974 fp=0x285bfe4 sp=0x285befc pc=0x63b5d4
main.NewApiServer.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x28 fp=0x285bfec sp=0x285bfe4 pc=0x63a4a4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285bfec sp=0x285bfec pc=0x933b8
created by main.NewApiServer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x310
goroutine 34 gp=0x2c62008 m=nil [GC worker (idle), 3 minutes]:
runtime.gopark(0x7c43c8, 0x2c28450, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c68790 sp=0x2c6877c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c687ec sp=0x2c68790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c687ec sp=0x2c687ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 18
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 35 gp=0x2c62128 m=nil [GC worker (idle), 3 minutes]:
runtime.gopark(0x7c43c8, 0x2c28468, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c68f90 sp=0x2c68f7c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c68fec sp=0x2c68f90 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c68fec sp=0x2c68fec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 18
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 36 gp=0x2c62248 m=nil [GC worker (idle)]:
runtime.gopark(0x7c43c8, 0x2c28480, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c69790 sp=0x2c6977c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c697ec sp=0x2c69790 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c697ec sp=0x2c697ec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 18
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 37 gp=0x2c62368 m=nil [GC worker (idle), 3 minutes]:
runtime.gopark(0x7c43c8, 0x2c28498, 0x1a, 0xa, 0x0)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c69f90 sp=0x2c69f7c pc=0x5c560
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c69fec sp=0x2c69f90 pc=0x37a30
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c69fec sp=0x2c69fec pc=0x933b8
created by runtime.gcBgMarkStartWorkers in goroutine 18
        /usr/local/go/src/runtime/mgc.go:1234 +0x20
goroutine 50 gp=0x29c6368 m=nil [IO wait]:
runtime.gopark(0x7c44fc, 0xf51aad28, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bc2e84 sp=0x2bc2e70 pc=0x5c560
runtime.netpollblock(0xf51aad18, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2bc2e9c sp=0x2bc2e84 pc=0x53d6c
internal/poll.runtime_pollWait(0xf51aad18, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2bc2eb0 sp=0x2bc2e9c pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2bdc108, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2bc2ec4 sp=0x2bc2eb0 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x2bdc0f0, 0x2f70f90)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x2bc2ef0 sp=0x2bc2ec4 pc=0x11339c
net.(*rawConn).Read(0x2bda220, 0x2f70f90)
        /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x2bc2f10 sp=0x2bc2ef0 pc=0x195ea0
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2a122c0, 0x2f70f60, 0x0)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x2bc2f40 sp=0x2bc2f10 pc=0x550ee4
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x2bc8098, {0x2a48000, 0x10000, 0x10000})
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x44c fp=0x2bc2f9c sp=0x2bc2f40 pc=0x554ecc
github.com/grandcat/zeroconf.(*Server).recv4(0x29b8900, 0x2bc8090)
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xec fp=0x2bc2fe0 sp=0x2bc2f9c pc=0x5ab75c
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1()
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x30 fp=0x2bc2fec sp=0x2bc2fe0 pc=0x5ab414
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bc2fec sp=0x2bc2fec pc=0x933b8
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 14
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x7c
goroutine 51 gp=0x29c6488 m=nil [IO wait, 2601 minutes]:
runtime.gopark(0x7c44fc, 0xf51aac88, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x296fe5c sp=0x296fe48 pc=0x5c560
runtime.netpollblock(0xf51aac78, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x296fe74 sp=0x296fe5c pc=0x53d6c
internal/poll.runtime_pollWait(0xf51aac78, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x296fe88 sp=0x296fe74 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2bdc158, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x296fe9c sp=0x296fe88 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x2bdc140, 0x2812030)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x296fec8 sp=0x296fe9c pc=0x11339c
net.(*rawConn).Read(0x2bda250, 0x2812030)
        /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x296fee8 sp=0x296fec8 pc=0x195ea0
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2a122d0, 0x2812000, 0x0)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x296ff18 sp=0x296fee8 pc=0x550ee4
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x2bc80c8, {0x2980000, 0x10000, 0x10000})
        /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x2ec fp=0x296ff9c sp=0x296ff18 pc=0x558854
github.com/grandcat/zeroconf.(*Server).recv6(0x29b8900, 0x2bc80c0)
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xec fp=0x296ffe0 sp=0x296ff9c pc=0x5ab950
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2()
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x30 fp=0x296ffec sp=0x296ffe0 pc=0x5ab3b8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x296ffec sp=0x296ffec pc=0x933b8
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 14
        /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xe8
goroutine 86 gp=0x2951208 m=nil [chan receive, 27 minutes]:
runtime.gopark(0x7c439c, 0x286e2b0, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2845f48 sp=0x2845f34 pc=0x5c560
runtime.chanrecv(0x286e280, 0x2845fd0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2845f84 sp=0x2845f48 pc=0x1f518
runtime.chanrecv2(0x286e280, 0x2845fd0)
        /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2845f98 sp=0x2845f84 pc=0x1f05c
main.(*App).withAppPlayer.func1()
        /home/volumio/go-librespot/cmd/daemon/main.go:268 +0x68 fp=0x2845fec sp=0x2845f98 pc=0x646e68
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2845fec sp=0x2845fec pc=0x933b8
created by main.(*App).withAppPlayer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/main.go:265 +0x464
goroutine 87 gp=0x2951328 m=nil [chan receive, 28 minutes]:
runtime.gopark(0x7c439c, 0x286e270, 0xe, 0x7, 0x2)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2f27740 sp=0x2f2772c pc=0x5c560
runtime.chanrecv(0x286e240, 0x2e1ffe0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2f2777c sp=0x2f27740 pc=0x1f518
runtime.chanrecv2(0x286e240, 0x2e1ffe0)
        /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2f27790 sp=0x2f2777c pc=0x1f05c
main.(*App).withAppPlayer.func2()
        /home/volumio/go-librespot/cmd/daemon/main.go:284 +0x6c fp=0x2f277ec sp=0x2f27790 pc=0x646a04
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2f277ec sp=0x2f277ec pc=0x933b8
created by main.(*App).withAppPlayer in goroutine 1
        /home/volumio/go-librespot/cmd/daemon/main.go:281 +0x504
goroutine 88 gp=0x2951448 m=nil [IO wait, 3 minutes]:
runtime.gopark(0x7c44fc, 0xf51aadc8, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x296bde8 sp=0x296bdd4 pc=0x5c560
runtime.netpollblock(0xf51aadb8, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x296be00 sp=0x296bde8 pc=0x53d6c
internal/poll.runtime_pollWait(0xf51aadb8, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x296be14 sp=0x296be00 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2bdc0b8, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x296be28 sp=0x296be14 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x2bdc0a0)
        /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x296be70 sp=0x296be28 pc=0x112798
net.(*netFD).accept(0x2bdc0a0)
        /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x296bed8 sp=0x296be70 pc=0x18363c
net.(*TCPListener).accept(0x2bde0a8)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x296bef0 sp=0x296bed8 pc=0x19ba78
net.(*TCPListener).Accept(0x2bde0a8)
        /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x296bf0c sp=0x296bef0 pc=0x19aae4
net/http.(*onceCloseListener).Accept(0x2ab0fa0)
        <autogenerated>:1 +0x34 fp=0x296bf24 sp=0x296bf0c pc=0x367e94
net/http.(*Server).Serve(0x29ad688, {0x869b18, 0x2bde0a8})
        /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x296bfbc sp=0x296bf24 pc=0x346550
net/http.Serve(...)
        /usr/local/go/src/net/http/server.go:2794
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2()
        /home/volumio/go-librespot/zeroconf/zeroconf.go:280 +0x8c fp=0x296bfec sp=0x296bfbc pc=0x5b0844
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x296bfec sp=0x296bfec pc=0x933b8
created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1
        /home/volumio/go-librespot/zeroconf/zeroconf.go:280 +0x160
goroutine 61 gp=0x2951688 m=nil [IO wait, 2601 minutes]:
runtime.gopark(0x7c44fc, 0xf51aa828, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285d87c sp=0x285d868 pc=0x5c560
runtime.netpollblock(0xf51aa818, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285d894 sp=0x285d87c pc=0x53d6c
internal/poll.runtime_pollWait(0xf51aa818, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285d8a8 sp=0x285d894 pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2bdc018, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285d8bc sp=0x285d8a8 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x2bdc000, {0x2a85000, 0x1000, 0x1000})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x285d904 sp=0x285d8bc pc=0x10f118
net.(*netFD).Read(0x2bdc000, {0x2a85000, 0x1000, 0x1000})
        /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x285d930 sp=0x285d904 pc=0x181748
net.(*conn).Read(0x28162b0, {0x2a85000, 0x1000, 0x1000})
        /usr/local/go/src/net/net.go:179 +0x48 fp=0x285d95c sp=0x285d930 pc=0x191c64
net.(*TCPConn).Read(0x28162b0, {0x2a85000, 0x1000, 0x1000})
        <autogenerated>:1 +0x44 fp=0x285d97c sp=0x285d95c pc=0x1a4eb8
io.(*multiReader).Read(0x2ae5940, {0x2a85000, 0x1000, 0x1000})
        /usr/local/go/src/io/multi.go:26 +0xb4 fp=0x285d9a8 sp=0x285d97c pc=0x10913c
bufio.(*Reader).fill(0x2812360)
        /usr/local/go/src/bufio/bufio.go:110 +0x10c fp=0x285d9cc sp=0x285d9a8 pc=0x2c30f4
bufio.(*Reader).ReadByte(0x2812360)
        /usr/local/go/src/bufio/bufio.go:269 +0x28 fp=0x285d9d8 sp=0x285d9cc pc=0x2c3978
nhooyr.io/websocket.readFrameHeader(0x2812360, {0x2aa0b78, 0x8, 0x8})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/frame.go:54 +0x74 fp=0x285da18 sp=0x285d9d8 pc=0x47ad58
nhooyr.io/websocket.(*Conn).readFrameHeader(0x2aa0b48, {0x86a330, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:188 +0xb4 fp=0x285dad8 sp=0x285da18 pc=0x47d9bc
nhooyr.io/websocket.(*Conn).readLoop(0x2aa0b48, {0x86a330, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:146 +0x3c fp=0x285db9c sp=0x285dad8 pc=0x47d4a4
nhooyr.io/websocket.(*Conn).reader(0x2aa0b48, {0x86a330, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:315 +0x108 fp=0x285dc28 sp=0x285db9c pc=0x47e6b8
nhooyr.io/websocket.(*Conn).Reader(...)
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:30
nhooyr.io/websocket.(*Conn).Read(0x2aa0b48, {0x86a330, 0xd13698})
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:36 +0x30 fp=0x285dc50 sp=0x285dc28 pc=0x47cd88
main.(*ConcreteApiServer).serve.func17({0x869c4c, 0x2a688c8}, 0x2a68828)
        /home/volumio/go-librespot/cmd/daemon/api_server.go:581 +0x3c0 fp=0x285dccc sp=0x285dc50 pc=0x63bea4
net/http.HandlerFunc.ServeHTTP(0x29aa180, {0x869c4c, 0x2a688c8}, 0x2a68828)
        /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x285dcdc sp=0x285dccc pc=0x342b34
net/http.(*ServeMux).ServeHTTP(0x29a0000, {0x869c4c, 0x2a688c8}, 0x2a68828)
        /usr/local/go/src/net/http/server.go:2683 +0x208 fp=0x285dd18 sp=0x285dcdc pc=0x344994
main.(*ConcreteApiServer).serve.(*Cors).Handler.func19({0x869c4c, 0x2a688c8}, 0x2a68828)
        /home/volumio/go/pkg/mod/github.com/rs/cors@v1.11.1/cors.go:289 +0x1f8 fp=0x285dd40 sp=0x285dd18 pc=0x63b8a4
net/http.HandlerFunc.ServeHTTP(0x29a4160, {0x869c4c, 0x2a688c8}, 0x2a68828)
        /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x285dd50 sp=0x285dd40 pc=0x342b34
net/http.serverHandler.ServeHTTP({0x29ac0a8}, {0x869c4c, 0x2a688c8}, 0x2a68828)
        /usr/local/go/src/net/http/server.go:3137 +0xe0 fp=0x285dd6c sp=0x285dd50 pc=0x346124
net/http.(*conn).serve(0x2b3a120, {0x86a370, 0x29b2180})
        /usr/local/go/src/net/http/server.go:2039 +0x61c fp=0x285dfdc sp=0x285dd6c pc=0x341374
net/http.(*Server).Serve.gowrap3()
        /usr/local/go/src/net/http/server.go:3285 +0x38 fp=0x285dfec sp=0x285dfdc pc=0x3469c8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285dfec sp=0x285dfec pc=0x933b8
created by net/http.(*Server).Serve in goroutine 8
        /usr/local/go/src/net/http/server.go:3285 +0x468
goroutine 32 gp=0x29518c8 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x28456a8 sp=0x2845694 pc=0x5c560
runtime.selectgo(0x28457a4, 0x284576c, 0x0, 0x0, 0x5, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2845748 sp=0x28456a8 pc=0x70318
nhooyr.io/websocket.(*Conn).timeoutLoop(0x2aa0b48)
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:153 +0x10c fp=0x28457e4 sp=0x2845748 pc=0x477c04
nhooyr.io/websocket.newConn.gowrap1()
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x28 fp=0x28457ec sp=0x28457e4 pc=0x4777f8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28457ec sp=0x28457ec pc=0x933b8
created by nhooyr.io/websocket.newConn in goroutine 61
        /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x544
goroutine 11056319 gp=0x2b6f8c8 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285ccb0 sp=0x285cc9c pc=0x5c560
runtime.selectgo(0x285ce14, 0x285cd80, 0x0, 0x0, 0x3, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x285cd50 sp=0x285ccb0 pc=0x70318
github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x2ab0420)
        /home/volumio/go-librespot/audio/provider.go:63 +0x118 fp=0x285cfe4 sp=0x285cd50 pc=0x4977a8
github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/audio/provider.go:53 +0x28 fp=0x285cfec sp=0x285cfe4 pc=0x4984f4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285cfec sp=0x285cfec pc=0x933b8
created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1 in goroutine 11056298
        /home/volumio/go-librespot/audio/provider.go:53 +0x60
goroutine 11332436 gp=0x2e7fe68 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c7fb24 sp=0x2c7fb10 pc=0x5c560
runtime.selectgo(0x2c7fc1c, 0x2c7fbec, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2c7fbc4 sp=0x2c7fb24 pc=0x70318
github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2c7fc90, {0x8695a0, 0x30100c0}, 0x0, {0x0, 0x0})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2c7fc44 sp=0x2c7fbc4 pc=0x498840
github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...)
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54
github.com/cenkalti/backoff/v4.RetryWithData[...](0x2c7fc90, {0x8695a0, 0x30100c0})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2c7fc70 sp=0x2c7fc44 pc=0x4985a8
github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2d7a200, 0x0)
        /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2c7fc9c sp=0x2c7fc70 pc=0x4955e0
github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2d7a1c0}, 0x29527c0, {0x358e080, 0x80})
        /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2c7fd10 sp=0x2c7fc9c pc=0x494d20
github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x3010020, 0x10, 0x10}}, 0x140, ...)
        /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2c7fe8c sp=0x2c7fd10 pc=0x50ec08
main.(*AppPlayer).prefetchNext(0x2e57220)
        /home/volumio/go-librespot/cmd/daemon/controls.go:48 +0x254 fp=0x2c7ffe4 sp=0x2c7fe8c pc=0x63dd00
main.(*AppPlayer).schedulePrefetchNext.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/controls.go:72 +0x28 fp=0x2c7ffec sp=0x2c7ffe4 pc=0x63e7a8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c7ffec sp=0x2c7ffec pc=0x933b8
created by main.(*AppPlayer).schedulePrefetchNext in goroutine 11056298
        /home/volumio/go-librespot/cmd/daemon/controls.go:72 +0x1c8
goroutine 11101607 gp=0x2e5db08 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30aaccc sp=0x30aacb8 pc=0x5c560
runtime.selectgo(0x30aae48, 0x30aada8, 0x0, 0x0, 0x3, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x30aad6c sp=0x30aaccc pc=0x70318
github.com/devgianlu/go-librespot/mercury.(*Client).recvLoop(0x2ab0160)
        /home/volumio/go-librespot/mercury/client.go:58 +0x138 fp=0x30aafe4 sp=0x30aad6c pc=0x528ef0
github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/mercury/client.go:48 +0x28 fp=0x30aafec sp=0x30aafe4 pc=0x52a68c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30aafec sp=0x30aafec pc=0x933b8
created by github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1 in goroutine 11056298
        /home/volumio/go-librespot/mercury/client.go:48 +0x60
goroutine 11056298 gp=0x2b9ad88 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e1d1c8 sp=0x2e1d1b4 pc=0x5c560
runtime.selectgo(0x2e1d2c0, 0x2e1d290, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e1d268 sp=0x2e1d1c8 pc=0x70318
github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2e1d334, {0x8695a0, 0x2af4d98}, 0x0, {0x0, 0x0})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2e1d2e8 sp=0x2e1d268 pc=0x498840
github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...)
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54
github.com/cenkalti/backoff/v4.RetryWithData[...](0x2e1d334, {0x8695a0, 0x2af4d98})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2e1d314 sp=0x2e1d2e8 pc=0x4985a8
github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2f43080, 0x0)
        /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2e1d340 sp=0x2e1d314 pc=0x4955e0
github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2f43040}, 0x29527c0, {0x2fa0200, 0x80})
        /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2e1d3b4 sp=0x2e1d340 pc=0x494d20
github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x2c36b30, 0x10, 0x10}}, 0x140, ...)
        /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2e1d530 sp=0x2e1d3b4 pc=0x50ec08
main.(*AppPlayer).loadCurrentTrack(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0)
        /home/volumio/go-librespot/cmd/daemon/controls.go:287 +0x65c fp=0x2e1d75c sp=0x2e1d530 pc=0x6400c0
main.(*AppPlayer).advanceNext(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0)
        /home/volumio/go-librespot/cmd/daemon/controls.go:628 +0x448 fp=0x2e1d81c sp=0x2e1d75c pc=0x643810
main.(*AppPlayer).handlePlayerEvent(0x2e57220, {0x86a350, 0xd13698}, 0x2e1da54)
        /home/volumio/go-librespot/cmd/daemon/controls.go:153 +0x528 fp=0x2e1d8f4 sp=0x2e1d81c pc=0x63ecfc
main.(*AppPlayer).Run(0x2e57220, {0x86a350, 0xd13698}, 0x32ea1c0)
        /home/volumio/go-librespot/cmd/daemon/player.go:606 +0x740 fp=0x2e1dfd8 sp=0x2e1d8f4 pc=0x64df28
main.(*App).withAppPlayer.func2.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x40 fp=0x2e1dfec sp=0x2e1dfd8 pc=0x646dd4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e1dfec sp=0x2e1dfec pc=0x933b8
created by main.(*App).withAppPlayer.func2 in goroutine 87
        /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x2c8
goroutine 11056297 gp=0x2ba4248 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bc3e74 sp=0x2bc3e60 pc=0x5c560
runtime.selectgo(0x2bc3f74, 0x2bc3f3c, 0x0, 0x0, 0x3, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2bc3f14 sp=0x2bc3e74 pc=0x70318
github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x4150690)
        /home/volumio/go-librespot/player/player.go:189 +0x1fc fp=0x2bc3fe4 sp=0x2bc3f14 pc=0x50d784
github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1()
        /home/volumio/go-librespot/player/player.go:171 +0x28 fp=0x2bc3fec sp=0x2bc3fe4 pc=0x50d364
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bc3fec sp=0x2bc3fec pc=0x933b8
created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 87
        /home/volumio/go-librespot/player/player.go:171 +0x1f8
goroutine 11056296 gp=0x2fa8a28 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2859f04 sp=0x2859ef0 pc=0x5c560
runtime.selectgo(0x2859fd4, 0x2859fc8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2859fa4 sp=0x2859f04 pc=0x70318
github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x28a3180)
        /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x2859fe4 sp=0x2859fa4 pc=0x5397ec
github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1()
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x2859fec sp=0x2859fe4 pc=0x53972c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2859fec sp=0x2859fec pc=0x933b8
created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 87
        /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310
goroutine 11056301 gp=0x39f1e68 m=nil [select, 3 minutes]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3a6feb8 sp=0x3a6fea4 pc=0x5c560
runtime.selectgo(0x3a6ffd4, 0x3a6ff7c, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3a6ff58 sp=0x3a6feb8 pc=0x70318
github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x2e8a428)
        /home/volumio/go-librespot/ap/ap.go:355 +0x8c fp=0x3a6ffe4 sp=0x3a6ff58 pc=0x49001c
github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap2()
        /home/volumio/go-librespot/ap/ap.go:264 +0x28 fp=0x3a6ffec sp=0x3a6ffe4 pc=0x48f714
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3a6ffec sp=0x3a6ffec pc=0x933b8
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 11056298
        /home/volumio/go-librespot/ap/ap.go:264 +0x15c
goroutine 11056303 gp=0x39fa7e8 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30b1e98 sp=0x30b1e84 pc=0x5c560
runtime.selectgo(0x30b1fd4, 0x30b1f60, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x30b1f38 sp=0x30b1e98 pc=0x70318
github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x2e44168)
        /home/volumio/go-librespot/dealer/dealer.go:138 +0x8c fp=0x30b1fe4 sp=0x30b1f38 pc=0x52afc4
github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap2()
        /home/volumio/go-librespot/dealer/dealer.go:129 +0x28 fp=0x30b1fec sp=0x30b1fe4 pc=0x52ced0
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30b1fec sp=0x30b1fec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 11056298
        /home/volumio/go-librespot/dealer/dealer.go:129 +0x15c
goroutine 11329710 gp=0x39fc7e8 m=nil [IO wait]:
runtime.gopark(0x7c44fc, 0xf51aa648, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30adad4 sp=0x30adac0 pc=0x5c560
runtime.netpollblock(0xf51aa638, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x30adaec sp=0x30adad4 pc=0x53d6c
internal/poll.runtime_pollWait(0xf51aa638, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x30adb00 sp=0x30adaec pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2e56b08, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x30adb14 sp=0x30adb00 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x2e56af0, {0x2d6e000, 0x1000, 0x1000})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x30adb5c sp=0x30adb14 pc=0x10f118
net.(*netFD).Read(0x2e56af0, {0x2d6e000, 0x1000, 0x1000})
        /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x30adb88 sp=0x30adb5c pc=0x181748
net.(*conn).Read(0x32ee050, {0x2d6e000, 0x1000, 0x1000})
        /usr/local/go/src/net/net.go:179 +0x48 fp=0x30adbb4 sp=0x30adb88 pc=0x191c64
net.(*TCPConn).Read(0x32ee050, {0x2d6e000, 0x1000, 0x1000})
        <autogenerated>:1 +0x44 fp=0x30adbd4 sp=0x30adbb4 pc=0x1a4eb8
crypto/tls.(*atLeastReader).Read(0x2c0c880, {0x2d6e000, 0x1000, 0x1000})
        /usr/local/go/src/crypto/tls/conn.go:806 +0x78 fp=0x30adc00 sp=0x30adbd4 pc=0x2819c0
bytes.(*Buffer).ReadFrom(0x2bafc8c, {0x86652c, 0x2c0c880})
        /usr/local/go/src/bytes/buffer.go:211 +0xa4 fp=0x30adc3c sp=0x30adc00 pc=0x13ed48
crypto/tls.(*Conn).readFromUntil(0x2bafb08, {0x8656ec, 0x32ee050}, 0x5)
        /usr/local/go/src/crypto/tls/conn.go:828 +0xd4 fp=0x30adc64 sp=0x30adc3c pc=0x281c1c
crypto/tls.(*Conn).readRecordOrCCS(0x2bafb08, 0x0)
        /usr/local/go/src/crypto/tls/conn.go:626 +0x134 fp=0x30addc8 sp=0x30adc64 pc=0x27f31c
crypto/tls.(*Conn).readRecord(...)
        /usr/local/go/src/crypto/tls/conn.go:588
crypto/tls.(*Conn).Read(0x2bafb08, {0x2938000, 0x1000, 0x1000})
        /usr/local/go/src/crypto/tls/conn.go:1370 +0x15c fp=0x30addf8 sp=0x30addc8 pc=0x28518c
bufio.(*Reader).Read(0x39f9440, {0x2ed2024, 0x9, 0x9})
        /usr/local/go/src/bufio/bufio.go:241 +0x214 fp=0x30ade1c sp=0x30addf8 pc=0x2c3780
io.ReadAtLeast({0x8658e0, 0x39f9440}, {0x2ed2024, 0x9, 0x9}, 0x9)
        /usr/local/go/src/io/io.go:335 +0x90 fp=0x30ade48 sp=0x30ade1c pc=0x107ed4
io.ReadFull(...)
        /usr/local/go/src/io/io.go:354
net/http.http2readFrameHeader({0x2ed2024, 0x9, 0x9}, {0x8658e0, 0x39f9440})
        /usr/local/go/src/net/http/h2_bundle.go:1638 +0x54 fp=0x30ade70 sp=0x30ade48 pc=0x2fc67c
net/http.(*http2Framer).ReadFrame(0x2ed2000)
        /usr/local/go/src/net/http/h2_bundle.go:1902 +0x88 fp=0x30adeec sp=0x30ade70 pc=0x2fce14
net/http.(*http2clientConnReadLoop).run(0x30adfdc)
        /usr/local/go/src/net/http/h2_bundle.go:9334 +0x150 fp=0x30adfa4 sp=0x30adeec pc=0x321630
net/http.(*http2ClientConn).readLoop(0x32e6108)
        /usr/local/go/src/net/http/h2_bundle.go:9229 +0x68 fp=0x30adfe4 sp=0x30adfa4 pc=0x320b24
net/http.(*http2Transport).newClientConn.gowrap1()
        /usr/local/go/src/net/http/h2_bundle.go:7879 +0x28 fp=0x30adfec sp=0x30adfe4 pc=0x319b70
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30adfec sp=0x30adfec pc=0x933b8
created by net/http.(*http2Transport).newClientConn in goroutine 11329709
        /usr/local/go/src/net/http/h2_bundle.go:7879 +0xcb0
goroutine 11056302 gp=0x2c445a8 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2857de0 sp=0x2857dcc pc=0x5c560
runtime.selectgo(0x2857ed4, 0x2857ea8, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2857e80 sp=0x2857de0 pc=0x70318
github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2857f24, {0x869270, 0x2829380}, 0x0, {0x0, 0x0})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x260 fp=0x2857efc sp=0x2857e80 pc=0x483d3c
github.com/cenkalti/backoff/v4.RetryNotifyWithTimer(0x2857f74, {0x869270, 0x2829380}, 0x0, {0x0, 0x0})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:61 +0x6c fp=0x2857f2c sp=0x2857efc pc=0x4836ac
github.com/cenkalti/backoff/v4.RetryNotify(...)
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:49
github.com/cenkalti/backoff/v4.Retry(...)
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:38
github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x2e44168)
        /home/volumio/go-librespot/dealer/dealer.go:237 +0x688 fp=0x2857fe4 sp=0x2857f2c pc=0x52ba7c
github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x2857fec sp=0x2857fe4 pc=0x52cf24
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2857fec sp=0x2857fec pc=0x933b8
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 11056298
        /home/volumio/go-librespot/dealer/dealer.go:125 +0x98
goroutine 11056300 gp=0x2a28b48 m=nil [IO wait]:
runtime.gopark(0x7c44fc, 0xf51aa788, 0x2, 0x2, 0x5)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30acd14 sp=0x30acd00 pc=0x5c560
runtime.netpollblock(0xf51aa778, 0x72, 0x0)
        /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x30acd2c sp=0x30acd14 pc=0x53d6c
internal/poll.runtime_pollWait(0xf51aa778, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x30acd40 sp=0x30acd2c pc=0x8e9a8
internal/poll.(*pollDesc).wait(0x2cc5698, 0x72, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x30acd54 sp=0x30acd40 pc=0x10df2c
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x2cc5680, {0x3011364, 0x3, 0x3})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x30acd9c sp=0x30acd54 pc=0x10f118
net.(*netFD).Read(0x2cc5680, {0x3011364, 0x3, 0x3})
        /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x30acdc8 sp=0x30acd9c pc=0x181748
net.(*conn).Read(0x399acc8, {0x3011364, 0x3, 0x3})
        /usr/local/go/src/net/net.go:179 +0x48 fp=0x30acdf4 sp=0x30acdc8 pc=0x191c64
net.(*TCPConn).Read(0x399acc8, {0x3011364, 0x3, 0x3})
        <autogenerated>:1 +0x44 fp=0x30ace14 sp=0x30acdf4 pc=0x1a4eb8
io.ReadAtLeast({0x8656ec, 0x399acc8}, {0x3011364, 0x3, 0x3}, 0x3)
        /usr/local/go/src/io/io.go:335 +0x90 fp=0x30ace40 sp=0x30ace14 pc=0x107ed4
io.ReadFull(...)
        /usr/local/go/src/io/io.go:354
github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x2d0d940, {0x86a350, 0xd13698})
        /home/volumio/go-librespot/ap/shannon.go:124 +0x3a0 fp=0x30acf04 sp=0x30ace40 pc=0x492fc0
github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x2e8a428)
        /home/volumio/go-librespot/ap/ap.go:276 +0x68 fp=0x30acfe4 sp=0x30acf04 pc=0x48f7fc
github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap1()
        /home/volumio/go-librespot/ap/ap.go:260 +0x28 fp=0x30acfec sp=0x30acfe4 pc=0x48f768
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30acfec sp=0x30acfec pc=0x933b8
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 11056298
        /home/volumio/go-librespot/ap/ap.go:260 +0x98
trap    0x0
error   0x0
oldmask 0x0
r0      0xce9788
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0xce8e18
fp      0x6
ip      0x3
sp      0xffe091cc
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94600 m=2 sigcode=0
goroutine 0 gp=0x28026c8 m=2 mp=0x284a588 [idle]:
runtime.usleep(0x2710)
        /usr/local/go/src/runtime/sys_linux_arm.s:577 +0x2c fp=0xf69e7da4 sp=0xf69e7d94 pc=0x94600
runtime.sysmon()
        /usr/local/go/src/runtime/proc.go:5965 +0xd0 fp=0xf69e7e00 sp=0xf69e7da4 pc=0x69aa8
runtime.mstart1()
        /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf69e7e10 sp=0xf69e7e00 pc=0x5f5fc
runtime.mstart0()
        /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf69e7e24 sp=0xf69e7e10 pc=0x5f570
runtime.mstart()
        /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf69e7e28 sp=0xf69e7e24 pc=0x9168c
trap    0x0
error   0x0
oldmask 0x0
r0      0xfffffffc
r1      0x0
r2      0x0
r3      0x2710
r4      0x0
r5      0x0
r6      0x0
r7      0xa2
r8      0x6
r9      0x0
r10     0x28026c8
fp      0x2710
ip      0x0
sp      0xf69e7d94
lr      0x945e0
pc      0x94600
cpsr    0x20070010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=3 sigcode=0
goroutine 0 gp=0x2802a28 m=3 mp=0x284ab08 [idle]:
runtime.futex(0x284abd0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf61e6bf8 sp=0xf61e6bf8 pc=0x94400
runtime.futexsleep(0x284abd0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf61e6c20 sp=0xf61e6bf8 pc=0x54d20
runtime.notesleep(0x284abd0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf61e6c40 sp=0xf61e6c20 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf61e6c54 sp=0xf61e6c40 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf61e6d00 sp=0xf61e6c54 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf61e6d1c sp=0xf61e6d00 pc=0x643bc
runtime.goschedImpl(0x2e7fe68, 0x1)
        /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf61e6d34 sp=0xf61e6d1c pc=0x64de4
runtime.gopreempt_m(...)
        /usr/local/go/src/runtime/proc.go:4082
runtime.newstack()
        /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf61e6e0c sp=0xf61e6d34 pc=0x776ac
runtime.morestack()
        /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf61e6e10 sp=0xf61e6e0c pc=0x917f8
trap    0x0
error   0x0
oldmask 0x0
r0      0x284abd0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x2802a28
fp      0x6
ip      0x84a7b4b8
sp      0xf61e6bf8
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=4 sigcode=0
goroutine 0 gp=0x2802ea8 m=4 mp=0x284b088 [idle]:
runtime.futex(0x284b150, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf59e5cc4 sp=0xf59e5cc4 pc=0x94400
runtime.futexsleep(0x284b150, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf59e5cec sp=0xf59e5cc4 pc=0x54d20
runtime.notesleep(0x284b150)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf59e5d0c sp=0xf59e5cec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf59e5d20 sp=0xf59e5d0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf59e5dcc sp=0xf59e5d20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf59e5de8 sp=0xf59e5dcc pc=0x643bc
runtime.park_m(0x2c62128)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf59e5e08 sp=0xf59e5de8 pc=0x64c34
runtime.mcall(0xf59e6450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf59e5e10 sp=0xf59e5e08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x284b150
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0x1
r10     0x2802ea8
fp      0x6
ip      0xd0d47ae7
sp      0xf59e5cc4
lr      0x54d20
pc      0x94400
cpsr    0xa00f0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=5 sigcode=0
goroutine 0 gp=0x28030e8 m=5 mp=0x284b608 [idle]:
runtime.futex(0x284b6d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf4ffecc4 sp=0xf4ffecc4 pc=0x94400
runtime.futexsleep(0x284b6d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf4ffecec sp=0xf4ffecc4 pc=0x54d20
runtime.notesleep(0x284b6d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf4ffed0c sp=0xf4ffecec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf4ffed20 sp=0xf4ffed0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf4ffedcc sp=0xf4ffed20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf4ffede8 sp=0xf4ffedcc pc=0x643bc
runtime.park_m(0x39fc7e8)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf4ffee08 sp=0xf4ffede8 pc=0x64c34
runtime.mcall(0xf4fff450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf4ffee10 sp=0xf4ffee08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x284b6d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x28030e8
fp      0x6
ip      0x4f92ba9
sp      0xf4ffecc4
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=6 sigcode=0
goroutine 0 gp=0x2803328 m=6 mp=0x284bb88 [idle]:
runtime.futex(0xd13eb4, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf43fedac sp=0xf43fedac pc=0x94400
runtime.futexsleep(0xd13eb4, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf43fedd4 sp=0xf43fedac pc=0x54d20
runtime.notesleep(0xd13eb4)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf43fedf4 sp=0xf43fedd4 pc=0x249e8
runtime.templateThread()
        /usr/local/go/src/runtime/proc.go:2760 +0x90 fp=0xf43fee00 sp=0xf43fedf4 pc=0x61084
runtime.mstart1()
        /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf43fee10 sp=0xf43fee00 pc=0x5f5fc
runtime.mstart0()
        /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf43fee24 sp=0xf43fee10 pc=0x5f570
runtime.mstart()
        /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf43fee28 sp=0xf43fee24 pc=0x9168c
trap    0x0
error   0x0
oldmask 0x0
r0      0xd13eb4
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0xf43ff450
r9      0xf43ff4c0
r10     0x2803328
fp      0x6
ip      0x7
sp      0xf43fedac
lr      0x54d20
pc      0x94400
cpsr    0xa00e0010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=7 sigcode=0
goroutine 0 gp=0x29c6248 m=7 mp=0x29ec588 [idle]:
runtime.futex(0x29ec650, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf39fecc4 sp=0xf39fecc4 pc=0x94400
runtime.futexsleep(0x29ec650, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf39fecec sp=0xf39fecc4 pc=0x54d20
runtime.notesleep(0x29ec650)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf39fed0c sp=0xf39fecec pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf39fed20 sp=0xf39fed0c pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf39fedcc sp=0xf39fed20 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf39fede8 sp=0xf39fedcc pc=0x643bc
runtime.park_m(0x2e7fe68)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf39fee08 sp=0xf39fede8 pc=0x64c34
runtime.mcall(0xf39ff450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf39fee10 sp=0xf39fee08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x29ec650
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x29c6248
fp      0x6
ip      0xd16f6998
sp      0xf39fecc4
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=8 sigcode=0
goroutine 0 gp=0x2950368 m=8 mp=0x284d708 [idle]:
runtime.futex(0x284d7d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf2ffebf8 sp=0xf2ffebf8 pc=0x94400
runtime.futexsleep(0x284d7d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf2ffec20 sp=0xf2ffebf8 pc=0x54d20
runtime.notesleep(0x284d7d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf2ffec40 sp=0xf2ffec20 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf2ffec54 sp=0xf2ffec40 pc=0x611cc
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf2ffed00 sp=0xf2ffec54 pc=0x62e6c
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf2ffed1c sp=0xf2ffed00 pc=0x643bc
runtime.goschedImpl(0x2b9ad88, 0x1)
        /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf2ffed34 sp=0xf2ffed1c pc=0x64de4
runtime.gopreempt_m(...)
        /usr/local/go/src/runtime/proc.go:4082
runtime.newstack()
        /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf2ffee0c sp=0xf2ffed34 pc=0x776ac
runtime.morestack()
        /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf2ffee10 sp=0xf2ffee0c pc=0x917f8
trap    0x0
error   0x0
oldmask 0x0
r0      0x284d7d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x1
r7      0xf0
r8      0x1
r9      0xceb3c0
r10     0x2950368
fp      0x6
ip      0xd16e51f9
sp      0xf2ffebf8
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=9 sigcode=0
goroutine 0 gp=0x2ba8a28 m=9 mp=0x2a86008 [idle]:
runtime.futex(0x2a860d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xee32acac sp=0xee32acac pc=0x94400
runtime.futexsleep(0x2a860d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xee32acd4 sp=0xee32acac pc=0x54d20
runtime.notesleep(0x2a860d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xee32acf4 sp=0xee32acd4 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xee32ad08 sp=0xee32acf4 pc=0x611cc
runtime.gcstopm()
        /usr/local/go/src/runtime/proc.go:3081 +0xd4 fp=0xee32ad20 sp=0xee32ad08 pc=0x61e84
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3149 +0x48 fp=0xee32adcc sp=0xee32ad20 pc=0x620b0
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xee32ade8 sp=0xee32adcc pc=0x643bc
runtime.park_m(0x2e7fe68)
        /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xee32ae08 sp=0xee32ade8 pc=0x64c34
runtime.mcall(0xee32b450)
        /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xee32ae10 sp=0xee32ae08 pc=0x916ec
trap    0x0
error   0x0
oldmask 0x0
r0      0x2a860d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x6
r9      0xceb3c0
r10     0x2ba8a28
fp      0x6
ip      0x84a93dca
sp      0xee32acac
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
-----
SIGQUIT: quit
PC=0x94400 m=10 sigcode=0
goroutine 0 gp=0x331cea8 m=10 mp=0x2a87608 [idle]:
runtime.futex(0x2a876d0, 0x80, 0x0, 0x0, 0x0, 0x0)
        /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf22d0be0 sp=0xf22d0be0 pc=0x94400
runtime.futexsleep(0x2a876d0, 0x0, 0xffffffffffffffff)
        /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf22d0c08 sp=0xf22d0be0 pc=0x54d20
runtime.notesleep(0x2a876d0)
        /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf22d0c28 sp=0xf22d0c08 pc=0x249e8
runtime.mPark(...)
        /usr/local/go/src/runtime/proc.go:1761
runtime.stopm()
        /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf22d0c3c sp=0xf22d0c28 pc=0x611cc
runtime.gcstopm()
        /usr/local/go/src/runtime/proc.go:3081 +0xd4 fp=0xf22d0c54 sp=0xf22d0c3c pc=0x61e84
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3149 +0x48 fp=0xf22d0d00 sp=0xf22d0c54 pc=0x620b0
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf22d0d1c sp=0xf22d0d00 pc=0x643bc
runtime.goschedImpl(0x2c62368, 0x1)
        /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf22d0d34 sp=0xf22d0d1c pc=0x64de4
runtime.gopreempt_m(...)
        /usr/local/go/src/runtime/proc.go:4082
runtime.newstack()
        /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf22d0e0c sp=0xf22d0d34 pc=0x776ac
runtime.morestack()
        /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf22d0e10 sp=0xf22d0e0c pc=0x917f8
trap    0x0
error   0x0
oldmask 0x0
r0      0x2a876d0
r1      0x80
r2      0x0
r3      0x0
r4      0x0
r5      0x0
r6      0x0
r7      0xf0
r8      0x0
r9      0x0
r10     0x331cea8
fp      0x6
ip      0x83b1408a
sp      0xf22d0be0
lr      0x54d20
pc      0x94400
cpsr    0xa0000010
fault   0x0
signal: aborted

The "main loop" is stuck here:

goroutine 11056298 gp=0x2b9ad88 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e1d1c8 sp=0x2e1d1b4 pc=0x5c560
runtime.selectgo(0x2e1d2c0, 0x2e1d290, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e1d268 sp=0x2e1d1c8 pc=0x70318
github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2e1d334, {0x8695a0, 0x2af4d98}, 0x0, {0x0, 0x0})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2e1d2e8 sp=0x2e1d268 pc=0x498840
github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...)
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54
github.com/cenkalti/backoff/v4.RetryWithData[...](0x2e1d334, {0x8695a0, 0x2af4d98})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2e1d314 sp=0x2e1d2e8 pc=0x4985a8
github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2f43080, 0x0)
        /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2e1d340 sp=0x2e1d314 pc=0x4955e0
github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2f43040}, 0x29527c0, {0x2fa0200, 0x80})
        /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2e1d3b4 sp=0x2e1d340 pc=0x494d20
github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x2c36b30, 0x10, 0x10}}, 0x140, ...)
        /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2e1d530 sp=0x2e1d3b4 pc=0x50ec08
main.(*AppPlayer).loadCurrentTrack(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0)
        /home/volumio/go-librespot/cmd/daemon/controls.go:287 +0x65c fp=0x2e1d75c sp=0x2e1d530 pc=0x6400c0
main.(*AppPlayer).advanceNext(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0)
        /home/volumio/go-librespot/cmd/daemon/controls.go:628 +0x448 fp=0x2e1d81c sp=0x2e1d75c pc=0x643810
main.(*AppPlayer).handlePlayerEvent(0x2e57220, {0x86a350, 0xd13698}, 0x2e1da54)
        /home/volumio/go-librespot/cmd/daemon/controls.go:153 +0x528 fp=0x2e1d8f4 sp=0x2e1d81c pc=0x63ecfc
main.(*AppPlayer).Run(0x2e57220, {0x86a350, 0xd13698}, 0x32ea1c0)
        /home/volumio/go-librespot/cmd/daemon/player.go:606 +0x740 fp=0x2e1dfd8 sp=0x2e1d8f4 pc=0x64df28
main.(*App).withAppPlayer.func2.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x40 fp=0x2e1dfec sp=0x2e1dfd8 pc=0x646dd4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e1dfec sp=0x2e1dfec pc=0x933b8
created by main.(*App).withAppPlayer.func2 in goroutine 87
        /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x2c8

The fact that the retries go on indefinitely is definitily wrong. I have put a limit of 3 retries in github.com/devgianlu/go-librespot@05c1cc8c7b.

<!-- gh-comment-id:3145224913 --> @devgianlu commented on GitHub (Aug 1, 2025): @tooxo I think I had this happen just today: <details> <summary>Full goroutine dump</summary> ``` time="2025-08-01T11:51:36+02:00" level=error msg="did not receive last pong from dealer, 210s passed" time="2025-08-01T11:52:06+02:00" level=error msg="did not receive last pong from dealer, 240s passed" time="2025-08-01T11:52:36+02:00" level=trace msg="received accesspoint ping" time="2025-08-01T11:52:36+02:00" level=trace msg="received accesspoint pong ack" time="2025-08-01T11:52:36+02:00" level=error msg="did not receive last pong from dealer, 270s passed" time="2025-08-01T11:53:06+02:00" level=error msg="did not receive last pong from dealer, 300s passed" time="2025-08-01T11:53:36+02:00" level=error msg="did not receive last pong from dealer, 330s passed" time="2025-08-01T11:53:46+02:00" level=debug msg="put connect state because PLAYER_STATE_CHANGED" time="2025-08-01T11:53:46+02:00" level=debug msg="sending successful reply for dealer request" time="2025-08-01T11:53:46+02:00" level=error msg="failed sending dealer reply" error="failed sending dealer reply: failed to write msg: WebSocket closed: sent close frame: status = StatusServiceRestart and reason = \"\"" uri="hm://connect-state/v1/player/command" time="2025-08-01T11:53:46+02:00" level=error msg="failed receiving dealer message" error="failed to get reader: WebSocket closed: sent close frame: status = StatusServiceRestart and reason = \"\"" time="2025-08-01T11:53:46+02:00" level=debug msg="prefetching next track" uri="spotify:track:5s2coZZQHU7IN6ErpXFula" time="2025-08-01T11:53:46+02:00" level=debug msg="selected format OGG_VORBIS_320 (4591b438e05223c47342f38edc2d786651a47121)" uri="spotify:track:5s2coZZQHU7IN6ErpXFula" time="2025-08-01T11:53:46+02:00" level=debug msg="requested aes key for file 4591b438e05223c47342f38edc2d786651a47121, gid: 5s2coZZQHU7IN6ErpXFula" time="2025-08-01T11:53:46+02:00" level=debug msg="put connect state because PLAYER_STATE_CHANGED" time="2025-08-01T11:53:46+02:00" level=trace msg="emitting websocket event: playing" time="2025-08-01T11:53:46+02:00" level=trace msg="emitting websocket event: not_playing" time="2025-08-01T11:53:46+02:00" level=debug msg="loading track (paused: false, position: 42ms)" uri="spotify:track:5s2coZZQHU7IN6ErpXFula" time="2025-08-01T11:53:46+02:00" level=debug msg="put connect state because PLAYER_STATE_CHANGED" time="2025-08-01T11:53:46+02:00" level=trace msg="emitting websocket event: will_play" time="2025-08-01T11:53:46+02:00" level=debug msg="selected format OGG_VORBIS_320 (4591b438e05223c47342f38edc2d786651a47121)" uri="spotify:track:5s2coZZQHU7IN6ErpXFula" time="2025-08-01T11:53:46+02:00" level=debug msg="requested aes key for file 4591b438e05223c47342f38edc2d786651a47121, gid: 5s2coZZQHU7IN6ErpXFula" time="2025-08-01T11:54:06+02:00" level=error msg="did not receive last pong from dealer, 360s passed" SIGABRT: abort PC=0x94400 m=0 sigcode=0 goroutine 0 gp=0xce8e18 m=0 mp=0xce96c0 [idle]: runtime.futex(0xce9788, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xffe091cc sp=0xffe091cc pc=0x94400 runtime.futexsleep(0xce9788, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xffe091f4 sp=0xffe091cc pc=0x54d20 runtime.notesleep(0xce9788) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xffe09214 sp=0xffe091f4 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xffe09228 sp=0xffe09214 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xffe092d4 sp=0xffe09228 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xffe092f0 sp=0xffe092d4 pc=0x643bc runtime.goexit0(0x2973d48) /usr/local/go/src/runtime/proc.go:4181 +0x20 fp=0xffe092f8 sp=0xffe092f0 pc=0x6527c runtime.mcall(0x863d54) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xffe09300 sp=0xffe092f8 pc=0x916ec goroutine 1 gp=0x2802128 m=nil [select, 2601 minutes]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2858d00 sp=0x2858cec pc=0x5c560 runtime.selectgo(0x2858e00, 0x293ddcc, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2858da0 sp=0x2858d00 pc=0x70318 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x2c38000, 0x2858e90) /home/volumio/go-librespot/zeroconf/zeroconf.go:283 +0x228 fp=0x2858e44 sp=0x2858da0 pc=0x5b0748 main.(*App).withAppPlayer(0x28a2d00, {0x86a350, 0xd13698}, 0x280f4f0) /home/volumio/go-librespot/cmd/daemon/main.go:321 +0x554 fp=0x2858ed0 sp=0x2858e44 pc=0x646228 main.(*App).withCredentials(...) /home/volumio/go-librespot/cmd/daemon/main.go:193 main.(*App).SpotifyToken(0x28a2d00, {0x86a350, 0xd13698}, {0x2810fd0, 0xb}, {0x295a000, 0x16a}) /home/volumio/go-librespot/cmd/daemon/main.go:185 +0xd8 fp=0x2858f00 sp=0x2858ed0 pc=0x64567c main.main() /home/volumio/go-librespot/cmd/daemon/main.go:556 +0x588 fp=0x2858fa8 sp=0x2858f00 pc=0x648588 runtime.main() /usr/local/go/src/runtime/proc.go:271 +0x2fc fp=0x2858fec sp=0x2858fa8 pc=0x5bfd0 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2858fec sp=0x2858fec pc=0x933b8 goroutine 2 gp=0x28027e8 m=nil [force gc (idle), 3 minutes]: runtime.gopark(0x7c450c, 0xce7ef0, 0x11, 0xa, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2846fd4 sp=0x2846fc0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.forcegchelper() /usr/local/go/src/runtime/proc.go:326 +0xe4 fp=0x2846fec sp=0x2846fd4 pc=0x5c39c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2846fec sp=0x2846fec pc=0x933b8 created by runtime.init.5 in goroutine 1 /usr/local/go/src/runtime/proc.go:314 +0x1c goroutine 3 gp=0x2802b48 m=nil [GC sweep wait]: runtime.gopark(0x7c450c, 0xce84f8, 0xc, 0x9, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x28477c4 sp=0x28477b0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.bgsweep(0x286e000) /usr/local/go/src/runtime/mgcsweep.go:318 +0x11c fp=0x28477e4 sp=0x28477c4 pc=0x44ce8 runtime.gcenable.gowrap1() /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x28477ec sp=0x28477e4 pc=0x34e08 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28477ec sp=0x28477ec pc=0x933b8 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:203 +0x74 goroutine 4 gp=0x2802c68 m=nil [GC scavenge wait]: runtime.gopark(0x7c450c, 0xce8ba8, 0xd, 0xa, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2847fb4 sp=0x2847fa0 pc=0x5c560 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.(*scavengerState).park(0xce8ba8) /usr/local/go/src/runtime/mgcscavenge.go:425 +0x68 fp=0x2847fc8 sp=0x2847fb4 pc=0x42008 runtime.bgscavenge(0x286e000) /usr/local/go/src/runtime/mgcscavenge.go:658 +0x60 fp=0x2847fe4 sp=0x2847fc8 pc=0x42740 runtime.gcenable.gowrap2() /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x2847fec sp=0x2847fe4 pc=0x34db4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2847fec sp=0x2847fec pc=0x933b8 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:204 +0xbc goroutine 5 gp=0x2803448 m=nil [finalizer wait]: runtime.gopark(0x7c43b8, 0xd13738, 0x10, 0xa, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x284878c sp=0x2848778 pc=0x5c560 runtime.runfinq() /usr/local/go/src/runtime/mfinal.go:194 +0x110 fp=0x28487ec sp=0x284878c pc=0x33bf4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28487ec sp=0x28487ec pc=0x933b8 created by runtime.createfing in goroutine 1 /usr/local/go/src/runtime/mfinal.go:164 +0x5c goroutine 8 gp=0x2950c68 m=nil [IO wait, 27 minutes]: runtime.gopark(0x7c44fc, 0xf51aaf08, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285bd28 sp=0x285bd14 pc=0x5c560 runtime.netpollblock(0xf51aaef8, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285bd40 sp=0x285bd28 pc=0x53d6c internal/poll.runtime_pollWait(0xf51aaef8, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285bd54 sp=0x285bd40 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2891418, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285bd68 sp=0x285bd54 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0x2891400) /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x285bdb0 sp=0x285bd68 pc=0x112798 net.(*netFD).accept(0x2891400) /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x285be18 sp=0x285bdb0 pc=0x18363c net.(*TCPListener).accept(0x2826b10) /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x285be30 sp=0x285be18 pc=0x19ba78 net.(*TCPListener).Accept(0x2826b10) /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x285be4c sp=0x285be30 pc=0x19aae4 net/http.(*onceCloseListener).Accept(0x29b0340) <autogenerated>:1 +0x34 fp=0x285be64 sp=0x285be4c pc=0x367e94 net/http.(*Server).Serve(0x29ac0a8, {0x869b18, 0x2826b10}) /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x285befc sp=0x285be64 pc=0x346550 net/http.Serve(...) /usr/local/go/src/net/http/server.go:2794 main.(*ConcreteApiServer).serve(0x2828fc0) /home/volumio/go-librespot/cmd/daemon/api_server.go:611 +0x974 fp=0x285bfe4 sp=0x285befc pc=0x63b5d4 main.NewApiServer.gowrap1() /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x28 fp=0x285bfec sp=0x285bfe4 pc=0x63a4a4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285bfec sp=0x285bfec pc=0x933b8 created by main.NewApiServer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/api_server.go:290 +0x310 goroutine 34 gp=0x2c62008 m=nil [GC worker (idle), 3 minutes]: runtime.gopark(0x7c43c8, 0x2c28450, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c68790 sp=0x2c6877c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c687ec sp=0x2c68790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c687ec sp=0x2c687ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 18 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 35 gp=0x2c62128 m=nil [GC worker (idle), 3 minutes]: runtime.gopark(0x7c43c8, 0x2c28468, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c68f90 sp=0x2c68f7c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c68fec sp=0x2c68f90 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c68fec sp=0x2c68fec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 18 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 36 gp=0x2c62248 m=nil [GC worker (idle)]: runtime.gopark(0x7c43c8, 0x2c28480, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c69790 sp=0x2c6977c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c697ec sp=0x2c69790 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c697ec sp=0x2c697ec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 18 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 37 gp=0x2c62368 m=nil [GC worker (idle), 3 minutes]: runtime.gopark(0x7c43c8, 0x2c28498, 0x1a, 0xa, 0x0) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c69f90 sp=0x2c69f7c pc=0x5c560 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xec fp=0x2c69fec sp=0x2c69f90 pc=0x37a30 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c69fec sp=0x2c69fec pc=0x933b8 created by runtime.gcBgMarkStartWorkers in goroutine 18 /usr/local/go/src/runtime/mgc.go:1234 +0x20 goroutine 50 gp=0x29c6368 m=nil [IO wait]: runtime.gopark(0x7c44fc, 0xf51aad28, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bc2e84 sp=0x2bc2e70 pc=0x5c560 runtime.netpollblock(0xf51aad18, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x2bc2e9c sp=0x2bc2e84 pc=0x53d6c internal/poll.runtime_pollWait(0xf51aad18, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x2bc2eb0 sp=0x2bc2e9c pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2bdc108, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x2bc2ec4 sp=0x2bc2eb0 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x2bdc0f0, 0x2f70f90) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x2bc2ef0 sp=0x2bc2ec4 pc=0x11339c net.(*rawConn).Read(0x2bda220, 0x2f70f90) /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x2bc2f10 sp=0x2bc2ef0 pc=0x195ea0 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2a122c0, 0x2f70f60, 0x0) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x2bc2f40 sp=0x2bc2f10 pc=0x550ee4 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x2bc8098, {0x2a48000, 0x10000, 0x10000}) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x44c fp=0x2bc2f9c sp=0x2bc2f40 pc=0x554ecc github.com/grandcat/zeroconf.(*Server).recv4(0x29b8900, 0x2bc8090) /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xec fp=0x2bc2fe0 sp=0x2bc2f9c pc=0x5ab75c github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1() /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x30 fp=0x2bc2fec sp=0x2bc2fe0 pc=0x5ab414 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bc2fec sp=0x2bc2fec pc=0x933b8 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 14 /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x7c goroutine 51 gp=0x29c6488 m=nil [IO wait, 2601 minutes]: runtime.gopark(0x7c44fc, 0xf51aac88, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x296fe5c sp=0x296fe48 pc=0x5c560 runtime.netpollblock(0xf51aac78, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x296fe74 sp=0x296fe5c pc=0x53d6c internal/poll.runtime_pollWait(0xf51aac78, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x296fe88 sp=0x296fe74 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2bdc158, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x296fe9c sp=0x296fe88 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x2bdc140, 0x2812030) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x164 fp=0x296fec8 sp=0x296fe9c pc=0x11339c net.(*rawConn).Read(0x2bda250, 0x2812030) /usr/local/go/src/net/rawconn.go:44 +0x38 fp=0x296fee8 sp=0x296fec8 pc=0x195ea0 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x2a122d0, 0x2812000, 0x0) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x154 fp=0x296ff18 sp=0x296fee8 pc=0x550ee4 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x2bc80c8, {0x2980000, 0x10000, 0x10000}) /home/volumio/go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x2ec fp=0x296ff9c sp=0x296ff18 pc=0x558854 github.com/grandcat/zeroconf.(*Server).recv6(0x29b8900, 0x2bc80c0) /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xec fp=0x296ffe0 sp=0x296ff9c pc=0x5ab950 github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2() /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x30 fp=0x296ffec sp=0x296ffe0 pc=0x5ab3b8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x296ffec sp=0x296ffec pc=0x933b8 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 14 /home/volumio/go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xe8 goroutine 86 gp=0x2951208 m=nil [chan receive, 27 minutes]: runtime.gopark(0x7c439c, 0x286e2b0, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2845f48 sp=0x2845f34 pc=0x5c560 runtime.chanrecv(0x286e280, 0x2845fd0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2845f84 sp=0x2845f48 pc=0x1f518 runtime.chanrecv2(0x286e280, 0x2845fd0) /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2845f98 sp=0x2845f84 pc=0x1f05c main.(*App).withAppPlayer.func1() /home/volumio/go-librespot/cmd/daemon/main.go:268 +0x68 fp=0x2845fec sp=0x2845f98 pc=0x646e68 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2845fec sp=0x2845fec pc=0x933b8 created by main.(*App).withAppPlayer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/main.go:265 +0x464 goroutine 87 gp=0x2951328 m=nil [chan receive, 28 minutes]: runtime.gopark(0x7c439c, 0x286e270, 0xe, 0x7, 0x2) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2f27740 sp=0x2f2772c pc=0x5c560 runtime.chanrecv(0x286e240, 0x2e1ffe0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x4b0 fp=0x2f2777c sp=0x2f27740 pc=0x1f518 runtime.chanrecv2(0x286e240, 0x2e1ffe0) /usr/local/go/src/runtime/chan.go:447 +0x20 fp=0x2f27790 sp=0x2f2777c pc=0x1f05c main.(*App).withAppPlayer.func2() /home/volumio/go-librespot/cmd/daemon/main.go:284 +0x6c fp=0x2f277ec sp=0x2f27790 pc=0x646a04 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2f277ec sp=0x2f277ec pc=0x933b8 created by main.(*App).withAppPlayer in goroutine 1 /home/volumio/go-librespot/cmd/daemon/main.go:281 +0x504 goroutine 88 gp=0x2951448 m=nil [IO wait, 3 minutes]: runtime.gopark(0x7c44fc, 0xf51aadc8, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x296bde8 sp=0x296bdd4 pc=0x5c560 runtime.netpollblock(0xf51aadb8, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x296be00 sp=0x296bde8 pc=0x53d6c internal/poll.runtime_pollWait(0xf51aadb8, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x296be14 sp=0x296be00 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2bdc0b8, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x296be28 sp=0x296be14 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0x2bdc0a0) /usr/local/go/src/internal/poll/fd_unix.go:611 +0x294 fp=0x296be70 sp=0x296be28 pc=0x112798 net.(*netFD).accept(0x2bdc0a0) /usr/local/go/src/net/fd_unix.go:172 +0x20 fp=0x296bed8 sp=0x296be70 pc=0x18363c net.(*TCPListener).accept(0x2bde0a8) /usr/local/go/src/net/tcpsock_posix.go:159 +0x20 fp=0x296bef0 sp=0x296bed8 pc=0x19ba78 net.(*TCPListener).Accept(0x2bde0a8) /usr/local/go/src/net/tcpsock.go:327 +0x30 fp=0x296bf0c sp=0x296bef0 pc=0x19aae4 net/http.(*onceCloseListener).Accept(0x2ab0fa0) <autogenerated>:1 +0x34 fp=0x296bf24 sp=0x296bf0c pc=0x367e94 net/http.(*Server).Serve(0x29ad688, {0x869b18, 0x2bde0a8}) /usr/local/go/src/net/http/server.go:3255 +0x314 fp=0x296bfbc sp=0x296bf24 pc=0x346550 net/http.Serve(...) /usr/local/go/src/net/http/server.go:2794 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2() /home/volumio/go-librespot/zeroconf/zeroconf.go:280 +0x8c fp=0x296bfec sp=0x296bfbc pc=0x5b0844 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x296bfec sp=0x296bfec pc=0x933b8 created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1 /home/volumio/go-librespot/zeroconf/zeroconf.go:280 +0x160 goroutine 61 gp=0x2951688 m=nil [IO wait, 2601 minutes]: runtime.gopark(0x7c44fc, 0xf51aa828, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285d87c sp=0x285d868 pc=0x5c560 runtime.netpollblock(0xf51aa818, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x285d894 sp=0x285d87c pc=0x53d6c internal/poll.runtime_pollWait(0xf51aa818, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x285d8a8 sp=0x285d894 pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2bdc018, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x285d8bc sp=0x285d8a8 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x2bdc000, {0x2a85000, 0x1000, 0x1000}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x285d904 sp=0x285d8bc pc=0x10f118 net.(*netFD).Read(0x2bdc000, {0x2a85000, 0x1000, 0x1000}) /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x285d930 sp=0x285d904 pc=0x181748 net.(*conn).Read(0x28162b0, {0x2a85000, 0x1000, 0x1000}) /usr/local/go/src/net/net.go:179 +0x48 fp=0x285d95c sp=0x285d930 pc=0x191c64 net.(*TCPConn).Read(0x28162b0, {0x2a85000, 0x1000, 0x1000}) <autogenerated>:1 +0x44 fp=0x285d97c sp=0x285d95c pc=0x1a4eb8 io.(*multiReader).Read(0x2ae5940, {0x2a85000, 0x1000, 0x1000}) /usr/local/go/src/io/multi.go:26 +0xb4 fp=0x285d9a8 sp=0x285d97c pc=0x10913c bufio.(*Reader).fill(0x2812360) /usr/local/go/src/bufio/bufio.go:110 +0x10c fp=0x285d9cc sp=0x285d9a8 pc=0x2c30f4 bufio.(*Reader).ReadByte(0x2812360) /usr/local/go/src/bufio/bufio.go:269 +0x28 fp=0x285d9d8 sp=0x285d9cc pc=0x2c3978 nhooyr.io/websocket.readFrameHeader(0x2812360, {0x2aa0b78, 0x8, 0x8}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/frame.go:54 +0x74 fp=0x285da18 sp=0x285d9d8 pc=0x47ad58 nhooyr.io/websocket.(*Conn).readFrameHeader(0x2aa0b48, {0x86a330, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:188 +0xb4 fp=0x285dad8 sp=0x285da18 pc=0x47d9bc nhooyr.io/websocket.(*Conn).readLoop(0x2aa0b48, {0x86a330, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:146 +0x3c fp=0x285db9c sp=0x285dad8 pc=0x47d4a4 nhooyr.io/websocket.(*Conn).reader(0x2aa0b48, {0x86a330, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:315 +0x108 fp=0x285dc28 sp=0x285db9c pc=0x47e6b8 nhooyr.io/websocket.(*Conn).Reader(...) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:30 nhooyr.io/websocket.(*Conn).Read(0x2aa0b48, {0x86a330, 0xd13698}) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/read.go:36 +0x30 fp=0x285dc50 sp=0x285dc28 pc=0x47cd88 main.(*ConcreteApiServer).serve.func17({0x869c4c, 0x2a688c8}, 0x2a68828) /home/volumio/go-librespot/cmd/daemon/api_server.go:581 +0x3c0 fp=0x285dccc sp=0x285dc50 pc=0x63bea4 net/http.HandlerFunc.ServeHTTP(0x29aa180, {0x869c4c, 0x2a688c8}, 0x2a68828) /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x285dcdc sp=0x285dccc pc=0x342b34 net/http.(*ServeMux).ServeHTTP(0x29a0000, {0x869c4c, 0x2a688c8}, 0x2a68828) /usr/local/go/src/net/http/server.go:2683 +0x208 fp=0x285dd18 sp=0x285dcdc pc=0x344994 main.(*ConcreteApiServer).serve.(*Cors).Handler.func19({0x869c4c, 0x2a688c8}, 0x2a68828) /home/volumio/go/pkg/mod/github.com/rs/cors@v1.11.1/cors.go:289 +0x1f8 fp=0x285dd40 sp=0x285dd18 pc=0x63b8a4 net/http.HandlerFunc.ServeHTTP(0x29a4160, {0x869c4c, 0x2a688c8}, 0x2a68828) /usr/local/go/src/net/http/server.go:2166 +0x34 fp=0x285dd50 sp=0x285dd40 pc=0x342b34 net/http.serverHandler.ServeHTTP({0x29ac0a8}, {0x869c4c, 0x2a688c8}, 0x2a68828) /usr/local/go/src/net/http/server.go:3137 +0xe0 fp=0x285dd6c sp=0x285dd50 pc=0x346124 net/http.(*conn).serve(0x2b3a120, {0x86a370, 0x29b2180}) /usr/local/go/src/net/http/server.go:2039 +0x61c fp=0x285dfdc sp=0x285dd6c pc=0x341374 net/http.(*Server).Serve.gowrap3() /usr/local/go/src/net/http/server.go:3285 +0x38 fp=0x285dfec sp=0x285dfdc pc=0x3469c8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285dfec sp=0x285dfec pc=0x933b8 created by net/http.(*Server).Serve in goroutine 8 /usr/local/go/src/net/http/server.go:3285 +0x468 goroutine 32 gp=0x29518c8 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x28456a8 sp=0x2845694 pc=0x5c560 runtime.selectgo(0x28457a4, 0x284576c, 0x0, 0x0, 0x5, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2845748 sp=0x28456a8 pc=0x70318 nhooyr.io/websocket.(*Conn).timeoutLoop(0x2aa0b48) /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:153 +0x10c fp=0x28457e4 sp=0x2845748 pc=0x477c04 nhooyr.io/websocket.newConn.gowrap1() /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x28 fp=0x28457ec sp=0x28457e4 pc=0x4777f8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x28457ec sp=0x28457ec pc=0x933b8 created by nhooyr.io/websocket.newConn in goroutine 61 /home/volumio/go/pkg/mod/nhooyr.io/websocket@v1.8.7/conn_notjs.go:114 +0x544 goroutine 11056319 gp=0x2b6f8c8 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x285ccb0 sp=0x285cc9c pc=0x5c560 runtime.selectgo(0x285ce14, 0x285cd80, 0x0, 0x0, 0x3, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x285cd50 sp=0x285ccb0 pc=0x70318 github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x2ab0420) /home/volumio/go-librespot/audio/provider.go:63 +0x118 fp=0x285cfe4 sp=0x285cd50 pc=0x4977a8 github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1.gowrap1() /home/volumio/go-librespot/audio/provider.go:53 +0x28 fp=0x285cfec sp=0x285cfe4 pc=0x4984f4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x285cfec sp=0x285cfec pc=0x933b8 created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).Request.(*KeyProvider).startReceiving.func1 in goroutine 11056298 /home/volumio/go-librespot/audio/provider.go:53 +0x60 goroutine 11332436 gp=0x2e7fe68 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2c7fb24 sp=0x2c7fb10 pc=0x5c560 runtime.selectgo(0x2c7fc1c, 0x2c7fbec, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2c7fbc4 sp=0x2c7fb24 pc=0x70318 github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2c7fc90, {0x8695a0, 0x30100c0}, 0x0, {0x0, 0x0}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2c7fc44 sp=0x2c7fbc4 pc=0x498840 github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54 github.com/cenkalti/backoff/v4.RetryWithData[...](0x2c7fc90, {0x8695a0, 0x30100c0}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2c7fc70 sp=0x2c7fc44 pc=0x4985a8 github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2d7a200, 0x0) /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2c7fc9c sp=0x2c7fc70 pc=0x4955e0 github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2d7a1c0}, 0x29527c0, {0x358e080, 0x80}) /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2c7fd10 sp=0x2c7fc9c pc=0x494d20 github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x3010020, 0x10, 0x10}}, 0x140, ...) /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2c7fe8c sp=0x2c7fd10 pc=0x50ec08 main.(*AppPlayer).prefetchNext(0x2e57220) /home/volumio/go-librespot/cmd/daemon/controls.go:48 +0x254 fp=0x2c7ffe4 sp=0x2c7fe8c pc=0x63dd00 main.(*AppPlayer).schedulePrefetchNext.gowrap1() /home/volumio/go-librespot/cmd/daemon/controls.go:72 +0x28 fp=0x2c7ffec sp=0x2c7ffe4 pc=0x63e7a8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2c7ffec sp=0x2c7ffec pc=0x933b8 created by main.(*AppPlayer).schedulePrefetchNext in goroutine 11056298 /home/volumio/go-librespot/cmd/daemon/controls.go:72 +0x1c8 goroutine 11101607 gp=0x2e5db08 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30aaccc sp=0x30aacb8 pc=0x5c560 runtime.selectgo(0x30aae48, 0x30aada8, 0x0, 0x0, 0x3, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x30aad6c sp=0x30aaccc pc=0x70318 github.com/devgianlu/go-librespot/mercury.(*Client).recvLoop(0x2ab0160) /home/volumio/go-librespot/mercury/client.go:58 +0x138 fp=0x30aafe4 sp=0x30aad6c pc=0x528ef0 github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1.gowrap1() /home/volumio/go-librespot/mercury/client.go:48 +0x28 fp=0x30aafec sp=0x30aafe4 pc=0x52a68c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30aafec sp=0x30aafec pc=0x933b8 created by github.com/devgianlu/go-librespot/mercury.(*Client).Request.(*Client).startReceiving.func1 in goroutine 11056298 /home/volumio/go-librespot/mercury/client.go:48 +0x60 goroutine 11056298 gp=0x2b9ad88 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e1d1c8 sp=0x2e1d1b4 pc=0x5c560 runtime.selectgo(0x2e1d2c0, 0x2e1d290, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e1d268 sp=0x2e1d1c8 pc=0x70318 github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2e1d334, {0x8695a0, 0x2af4d98}, 0x0, {0x0, 0x0}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2e1d2e8 sp=0x2e1d268 pc=0x498840 github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54 github.com/cenkalti/backoff/v4.RetryWithData[...](0x2e1d334, {0x8695a0, 0x2af4d98}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2e1d314 sp=0x2e1d2e8 pc=0x4985a8 github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2f43080, 0x0) /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2e1d340 sp=0x2e1d314 pc=0x4955e0 github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2f43040}, 0x29527c0, {0x2fa0200, 0x80}) /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2e1d3b4 sp=0x2e1d340 pc=0x494d20 github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x2c36b30, 0x10, 0x10}}, 0x140, ...) /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2e1d530 sp=0x2e1d3b4 pc=0x50ec08 main.(*AppPlayer).loadCurrentTrack(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0) /home/volumio/go-librespot/cmd/daemon/controls.go:287 +0x65c fp=0x2e1d75c sp=0x2e1d530 pc=0x6400c0 main.(*AppPlayer).advanceNext(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0) /home/volumio/go-librespot/cmd/daemon/controls.go:628 +0x448 fp=0x2e1d81c sp=0x2e1d75c pc=0x643810 main.(*AppPlayer).handlePlayerEvent(0x2e57220, {0x86a350, 0xd13698}, 0x2e1da54) /home/volumio/go-librespot/cmd/daemon/controls.go:153 +0x528 fp=0x2e1d8f4 sp=0x2e1d81c pc=0x63ecfc main.(*AppPlayer).Run(0x2e57220, {0x86a350, 0xd13698}, 0x32ea1c0) /home/volumio/go-librespot/cmd/daemon/player.go:606 +0x740 fp=0x2e1dfd8 sp=0x2e1d8f4 pc=0x64df28 main.(*App).withAppPlayer.func2.gowrap1() /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x40 fp=0x2e1dfec sp=0x2e1dfd8 pc=0x646dd4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e1dfec sp=0x2e1dfec pc=0x933b8 created by main.(*App).withAppPlayer.func2 in goroutine 87 /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x2c8 goroutine 11056297 gp=0x2ba4248 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2bc3e74 sp=0x2bc3e60 pc=0x5c560 runtime.selectgo(0x2bc3f74, 0x2bc3f3c, 0x0, 0x0, 0x3, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2bc3f14 sp=0x2bc3e74 pc=0x70318 github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x4150690) /home/volumio/go-librespot/player/player.go:189 +0x1fc fp=0x2bc3fe4 sp=0x2bc3f14 pc=0x50d784 github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1() /home/volumio/go-librespot/player/player.go:171 +0x28 fp=0x2bc3fec sp=0x2bc3fe4 pc=0x50d364 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2bc3fec sp=0x2bc3fec pc=0x933b8 created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 87 /home/volumio/go-librespot/player/player.go:171 +0x1f8 goroutine 11056296 gp=0x2fa8a28 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2859f04 sp=0x2859ef0 pc=0x5c560 runtime.selectgo(0x2859fd4, 0x2859fc8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2859fa4 sp=0x2859f04 pc=0x70318 github.com/devgianlu/go-librespot/events/impl.(*EventSender).loop(0x28a3180) /home/volumio/go-librespot/events/impl/event-sender.go:97 +0x94 fp=0x2859fe4 sp=0x2859fa4 pc=0x5397ec github.com/devgianlu/go-librespot/events/impl.NewEventSender.gowrap1() /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x28 fp=0x2859fec sp=0x2859fe4 pc=0x53972c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2859fec sp=0x2859fec pc=0x933b8 created by github.com/devgianlu/go-librespot/events/impl.NewEventSender in goroutine 87 /home/volumio/go-librespot/events/impl/event-sender.go:87 +0x310 goroutine 11056301 gp=0x39f1e68 m=nil [select, 3 minutes]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x3a6feb8 sp=0x3a6fea4 pc=0x5c560 runtime.selectgo(0x3a6ffd4, 0x3a6ff7c, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x3a6ff58 sp=0x3a6feb8 pc=0x70318 github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x2e8a428) /home/volumio/go-librespot/ap/ap.go:355 +0x8c fp=0x3a6ffe4 sp=0x3a6ff58 pc=0x49001c github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap2() /home/volumio/go-librespot/ap/ap.go:264 +0x28 fp=0x3a6ffec sp=0x3a6ffe4 pc=0x48f714 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x3a6ffec sp=0x3a6ffec pc=0x933b8 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 11056298 /home/volumio/go-librespot/ap/ap.go:264 +0x15c goroutine 11056303 gp=0x39fa7e8 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30b1e98 sp=0x30b1e84 pc=0x5c560 runtime.selectgo(0x30b1fd4, 0x30b1f60, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x30b1f38 sp=0x30b1e98 pc=0x70318 github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x2e44168) /home/volumio/go-librespot/dealer/dealer.go:138 +0x8c fp=0x30b1fe4 sp=0x30b1f38 pc=0x52afc4 github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap2() /home/volumio/go-librespot/dealer/dealer.go:129 +0x28 fp=0x30b1fec sp=0x30b1fe4 pc=0x52ced0 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30b1fec sp=0x30b1fec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 11056298 /home/volumio/go-librespot/dealer/dealer.go:129 +0x15c goroutine 11329710 gp=0x39fc7e8 m=nil [IO wait]: runtime.gopark(0x7c44fc, 0xf51aa648, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30adad4 sp=0x30adac0 pc=0x5c560 runtime.netpollblock(0xf51aa638, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x30adaec sp=0x30adad4 pc=0x53d6c internal/poll.runtime_pollWait(0xf51aa638, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x30adb00 sp=0x30adaec pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2e56b08, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x30adb14 sp=0x30adb00 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x2e56af0, {0x2d6e000, 0x1000, 0x1000}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x30adb5c sp=0x30adb14 pc=0x10f118 net.(*netFD).Read(0x2e56af0, {0x2d6e000, 0x1000, 0x1000}) /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x30adb88 sp=0x30adb5c pc=0x181748 net.(*conn).Read(0x32ee050, {0x2d6e000, 0x1000, 0x1000}) /usr/local/go/src/net/net.go:179 +0x48 fp=0x30adbb4 sp=0x30adb88 pc=0x191c64 net.(*TCPConn).Read(0x32ee050, {0x2d6e000, 0x1000, 0x1000}) <autogenerated>:1 +0x44 fp=0x30adbd4 sp=0x30adbb4 pc=0x1a4eb8 crypto/tls.(*atLeastReader).Read(0x2c0c880, {0x2d6e000, 0x1000, 0x1000}) /usr/local/go/src/crypto/tls/conn.go:806 +0x78 fp=0x30adc00 sp=0x30adbd4 pc=0x2819c0 bytes.(*Buffer).ReadFrom(0x2bafc8c, {0x86652c, 0x2c0c880}) /usr/local/go/src/bytes/buffer.go:211 +0xa4 fp=0x30adc3c sp=0x30adc00 pc=0x13ed48 crypto/tls.(*Conn).readFromUntil(0x2bafb08, {0x8656ec, 0x32ee050}, 0x5) /usr/local/go/src/crypto/tls/conn.go:828 +0xd4 fp=0x30adc64 sp=0x30adc3c pc=0x281c1c crypto/tls.(*Conn).readRecordOrCCS(0x2bafb08, 0x0) /usr/local/go/src/crypto/tls/conn.go:626 +0x134 fp=0x30addc8 sp=0x30adc64 pc=0x27f31c crypto/tls.(*Conn).readRecord(...) /usr/local/go/src/crypto/tls/conn.go:588 crypto/tls.(*Conn).Read(0x2bafb08, {0x2938000, 0x1000, 0x1000}) /usr/local/go/src/crypto/tls/conn.go:1370 +0x15c fp=0x30addf8 sp=0x30addc8 pc=0x28518c bufio.(*Reader).Read(0x39f9440, {0x2ed2024, 0x9, 0x9}) /usr/local/go/src/bufio/bufio.go:241 +0x214 fp=0x30ade1c sp=0x30addf8 pc=0x2c3780 io.ReadAtLeast({0x8658e0, 0x39f9440}, {0x2ed2024, 0x9, 0x9}, 0x9) /usr/local/go/src/io/io.go:335 +0x90 fp=0x30ade48 sp=0x30ade1c pc=0x107ed4 io.ReadFull(...) /usr/local/go/src/io/io.go:354 net/http.http2readFrameHeader({0x2ed2024, 0x9, 0x9}, {0x8658e0, 0x39f9440}) /usr/local/go/src/net/http/h2_bundle.go:1638 +0x54 fp=0x30ade70 sp=0x30ade48 pc=0x2fc67c net/http.(*http2Framer).ReadFrame(0x2ed2000) /usr/local/go/src/net/http/h2_bundle.go:1902 +0x88 fp=0x30adeec sp=0x30ade70 pc=0x2fce14 net/http.(*http2clientConnReadLoop).run(0x30adfdc) /usr/local/go/src/net/http/h2_bundle.go:9334 +0x150 fp=0x30adfa4 sp=0x30adeec pc=0x321630 net/http.(*http2ClientConn).readLoop(0x32e6108) /usr/local/go/src/net/http/h2_bundle.go:9229 +0x68 fp=0x30adfe4 sp=0x30adfa4 pc=0x320b24 net/http.(*http2Transport).newClientConn.gowrap1() /usr/local/go/src/net/http/h2_bundle.go:7879 +0x28 fp=0x30adfec sp=0x30adfe4 pc=0x319b70 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30adfec sp=0x30adfec pc=0x933b8 created by net/http.(*http2Transport).newClientConn in goroutine 11329709 /usr/local/go/src/net/http/h2_bundle.go:7879 +0xcb0 goroutine 11056302 gp=0x2c445a8 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2857de0 sp=0x2857dcc pc=0x5c560 runtime.selectgo(0x2857ed4, 0x2857ea8, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2857e80 sp=0x2857de0 pc=0x70318 github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2857f24, {0x869270, 0x2829380}, 0x0, {0x0, 0x0}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x260 fp=0x2857efc sp=0x2857e80 pc=0x483d3c github.com/cenkalti/backoff/v4.RetryNotifyWithTimer(0x2857f74, {0x869270, 0x2829380}, 0x0, {0x0, 0x0}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:61 +0x6c fp=0x2857f2c sp=0x2857efc pc=0x4836ac github.com/cenkalti/backoff/v4.RetryNotify(...) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:49 github.com/cenkalti/backoff/v4.Retry(...) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:38 github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x2e44168) /home/volumio/go-librespot/dealer/dealer.go:237 +0x688 fp=0x2857fe4 sp=0x2857f2c pc=0x52ba7c github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1.gowrap1() /home/volumio/go-librespot/dealer/dealer.go:125 +0x28 fp=0x2857fec sp=0x2857fe4 pc=0x52cf24 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2857fec sp=0x2857fec pc=0x933b8 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).ReceiveMessage.(*Dealer).startReceiving.func1 in goroutine 11056298 /home/volumio/go-librespot/dealer/dealer.go:125 +0x98 goroutine 11056300 gp=0x2a28b48 m=nil [IO wait]: runtime.gopark(0x7c44fc, 0xf51aa788, 0x2, 0x2, 0x5) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x30acd14 sp=0x30acd00 pc=0x5c560 runtime.netpollblock(0xf51aa778, 0x72, 0x0) /usr/local/go/src/runtime/netpoll.go:573 +0x100 fp=0x30acd2c sp=0x30acd14 pc=0x53d6c internal/poll.runtime_pollWait(0xf51aa778, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0x54 fp=0x30acd40 sp=0x30acd2c pc=0x8e9a8 internal/poll.(*pollDesc).wait(0x2cc5698, 0x72, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x30 fp=0x30acd54 sp=0x30acd40 pc=0x10df2c internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x2cc5680, {0x3011364, 0x3, 0x3}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x238 fp=0x30acd9c sp=0x30acd54 pc=0x10f118 net.(*netFD).Read(0x2cc5680, {0x3011364, 0x3, 0x3}) /usr/local/go/src/net/fd_posix.go:55 +0x38 fp=0x30acdc8 sp=0x30acd9c pc=0x181748 net.(*conn).Read(0x399acc8, {0x3011364, 0x3, 0x3}) /usr/local/go/src/net/net.go:179 +0x48 fp=0x30acdf4 sp=0x30acdc8 pc=0x191c64 net.(*TCPConn).Read(0x399acc8, {0x3011364, 0x3, 0x3}) <autogenerated>:1 +0x44 fp=0x30ace14 sp=0x30acdf4 pc=0x1a4eb8 io.ReadAtLeast({0x8656ec, 0x399acc8}, {0x3011364, 0x3, 0x3}, 0x3) /usr/local/go/src/io/io.go:335 +0x90 fp=0x30ace40 sp=0x30ace14 pc=0x107ed4 io.ReadFull(...) /usr/local/go/src/io/io.go:354 github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x2d0d940, {0x86a350, 0xd13698}) /home/volumio/go-librespot/ap/shannon.go:124 +0x3a0 fp=0x30acf04 sp=0x30ace40 pc=0x492fc0 github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x2e8a428) /home/volumio/go-librespot/ap/ap.go:276 +0x68 fp=0x30acfe4 sp=0x30acf04 pc=0x48f7fc github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1.gowrap1() /home/volumio/go-librespot/ap/ap.go:260 +0x28 fp=0x30acfec sp=0x30acfe4 pc=0x48f768 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x30acfec sp=0x30acfec pc=0x933b8 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).Receive.(*Accesspoint).startReceiving.func1 in goroutine 11056298 /home/volumio/go-librespot/ap/ap.go:260 +0x98 trap 0x0 error 0x0 oldmask 0x0 r0 0xce9788 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0xce8e18 fp 0x6 ip 0x3 sp 0xffe091cc lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94600 m=2 sigcode=0 goroutine 0 gp=0x28026c8 m=2 mp=0x284a588 [idle]: runtime.usleep(0x2710) /usr/local/go/src/runtime/sys_linux_arm.s:577 +0x2c fp=0xf69e7da4 sp=0xf69e7d94 pc=0x94600 runtime.sysmon() /usr/local/go/src/runtime/proc.go:5965 +0xd0 fp=0xf69e7e00 sp=0xf69e7da4 pc=0x69aa8 runtime.mstart1() /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf69e7e10 sp=0xf69e7e00 pc=0x5f5fc runtime.mstart0() /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf69e7e24 sp=0xf69e7e10 pc=0x5f570 runtime.mstart() /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf69e7e28 sp=0xf69e7e24 pc=0x9168c trap 0x0 error 0x0 oldmask 0x0 r0 0xfffffffc r1 0x0 r2 0x0 r3 0x2710 r4 0x0 r5 0x0 r6 0x0 r7 0xa2 r8 0x6 r9 0x0 r10 0x28026c8 fp 0x2710 ip 0x0 sp 0xf69e7d94 lr 0x945e0 pc 0x94600 cpsr 0x20070010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=3 sigcode=0 goroutine 0 gp=0x2802a28 m=3 mp=0x284ab08 [idle]: runtime.futex(0x284abd0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf61e6bf8 sp=0xf61e6bf8 pc=0x94400 runtime.futexsleep(0x284abd0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf61e6c20 sp=0xf61e6bf8 pc=0x54d20 runtime.notesleep(0x284abd0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf61e6c40 sp=0xf61e6c20 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf61e6c54 sp=0xf61e6c40 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf61e6d00 sp=0xf61e6c54 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf61e6d1c sp=0xf61e6d00 pc=0x643bc runtime.goschedImpl(0x2e7fe68, 0x1) /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf61e6d34 sp=0xf61e6d1c pc=0x64de4 runtime.gopreempt_m(...) /usr/local/go/src/runtime/proc.go:4082 runtime.newstack() /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf61e6e0c sp=0xf61e6d34 pc=0x776ac runtime.morestack() /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf61e6e10 sp=0xf61e6e0c pc=0x917f8 trap 0x0 error 0x0 oldmask 0x0 r0 0x284abd0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x2802a28 fp 0x6 ip 0x84a7b4b8 sp 0xf61e6bf8 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=4 sigcode=0 goroutine 0 gp=0x2802ea8 m=4 mp=0x284b088 [idle]: runtime.futex(0x284b150, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf59e5cc4 sp=0xf59e5cc4 pc=0x94400 runtime.futexsleep(0x284b150, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf59e5cec sp=0xf59e5cc4 pc=0x54d20 runtime.notesleep(0x284b150) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf59e5d0c sp=0xf59e5cec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf59e5d20 sp=0xf59e5d0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf59e5dcc sp=0xf59e5d20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf59e5de8 sp=0xf59e5dcc pc=0x643bc runtime.park_m(0x2c62128) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf59e5e08 sp=0xf59e5de8 pc=0x64c34 runtime.mcall(0xf59e6450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf59e5e10 sp=0xf59e5e08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x284b150 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0x1 r10 0x2802ea8 fp 0x6 ip 0xd0d47ae7 sp 0xf59e5cc4 lr 0x54d20 pc 0x94400 cpsr 0xa00f0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=5 sigcode=0 goroutine 0 gp=0x28030e8 m=5 mp=0x284b608 [idle]: runtime.futex(0x284b6d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf4ffecc4 sp=0xf4ffecc4 pc=0x94400 runtime.futexsleep(0x284b6d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf4ffecec sp=0xf4ffecc4 pc=0x54d20 runtime.notesleep(0x284b6d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf4ffed0c sp=0xf4ffecec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf4ffed20 sp=0xf4ffed0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf4ffedcc sp=0xf4ffed20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf4ffede8 sp=0xf4ffedcc pc=0x643bc runtime.park_m(0x39fc7e8) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf4ffee08 sp=0xf4ffede8 pc=0x64c34 runtime.mcall(0xf4fff450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf4ffee10 sp=0xf4ffee08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x284b6d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x28030e8 fp 0x6 ip 0x4f92ba9 sp 0xf4ffecc4 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=6 sigcode=0 goroutine 0 gp=0x2803328 m=6 mp=0x284bb88 [idle]: runtime.futex(0xd13eb4, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf43fedac sp=0xf43fedac pc=0x94400 runtime.futexsleep(0xd13eb4, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf43fedd4 sp=0xf43fedac pc=0x54d20 runtime.notesleep(0xd13eb4) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf43fedf4 sp=0xf43fedd4 pc=0x249e8 runtime.templateThread() /usr/local/go/src/runtime/proc.go:2760 +0x90 fp=0xf43fee00 sp=0xf43fedf4 pc=0x61084 runtime.mstart1() /usr/local/go/src/runtime/proc.go:1729 +0x7c fp=0xf43fee10 sp=0xf43fee00 pc=0x5f5fc runtime.mstart0() /usr/local/go/src/runtime/proc.go:1686 +0x7c fp=0xf43fee24 sp=0xf43fee10 pc=0x5f570 runtime.mstart() /usr/local/go/src/runtime/asm_arm.s:210 +0x8 fp=0xf43fee28 sp=0xf43fee24 pc=0x9168c trap 0x0 error 0x0 oldmask 0x0 r0 0xd13eb4 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0xf43ff450 r9 0xf43ff4c0 r10 0x2803328 fp 0x6 ip 0x7 sp 0xf43fedac lr 0x54d20 pc 0x94400 cpsr 0xa00e0010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=7 sigcode=0 goroutine 0 gp=0x29c6248 m=7 mp=0x29ec588 [idle]: runtime.futex(0x29ec650, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf39fecc4 sp=0xf39fecc4 pc=0x94400 runtime.futexsleep(0x29ec650, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf39fecec sp=0xf39fecc4 pc=0x54d20 runtime.notesleep(0x29ec650) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf39fed0c sp=0xf39fecec pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf39fed20 sp=0xf39fed0c pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf39fedcc sp=0xf39fed20 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf39fede8 sp=0xf39fedcc pc=0x643bc runtime.park_m(0x2e7fe68) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xf39fee08 sp=0xf39fede8 pc=0x64c34 runtime.mcall(0xf39ff450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xf39fee10 sp=0xf39fee08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x29ec650 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x29c6248 fp 0x6 ip 0xd16f6998 sp 0xf39fecc4 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=8 sigcode=0 goroutine 0 gp=0x2950368 m=8 mp=0x284d708 [idle]: runtime.futex(0x284d7d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf2ffebf8 sp=0xf2ffebf8 pc=0x94400 runtime.futexsleep(0x284d7d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf2ffec20 sp=0xf2ffebf8 pc=0x54d20 runtime.notesleep(0x284d7d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf2ffec40 sp=0xf2ffec20 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf2ffec54 sp=0xf2ffec40 pc=0x611cc runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3512 +0xe04 fp=0xf2ffed00 sp=0xf2ffec54 pc=0x62e6c runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf2ffed1c sp=0xf2ffed00 pc=0x643bc runtime.goschedImpl(0x2b9ad88, 0x1) /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf2ffed34 sp=0xf2ffed1c pc=0x64de4 runtime.gopreempt_m(...) /usr/local/go/src/runtime/proc.go:4082 runtime.newstack() /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf2ffee0c sp=0xf2ffed34 pc=0x776ac runtime.morestack() /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf2ffee10 sp=0xf2ffee0c pc=0x917f8 trap 0x0 error 0x0 oldmask 0x0 r0 0x284d7d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x1 r7 0xf0 r8 0x1 r9 0xceb3c0 r10 0x2950368 fp 0x6 ip 0xd16e51f9 sp 0xf2ffebf8 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=9 sigcode=0 goroutine 0 gp=0x2ba8a28 m=9 mp=0x2a86008 [idle]: runtime.futex(0x2a860d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xee32acac sp=0xee32acac pc=0x94400 runtime.futexsleep(0x2a860d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xee32acd4 sp=0xee32acac pc=0x54d20 runtime.notesleep(0x2a860d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xee32acf4 sp=0xee32acd4 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xee32ad08 sp=0xee32acf4 pc=0x611cc runtime.gcstopm() /usr/local/go/src/runtime/proc.go:3081 +0xd4 fp=0xee32ad20 sp=0xee32ad08 pc=0x61e84 runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3149 +0x48 fp=0xee32adcc sp=0xee32ad20 pc=0x620b0 runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xee32ade8 sp=0xee32adcc pc=0x643bc runtime.park_m(0x2e7fe68) /usr/local/go/src/runtime/proc.go:4036 +0x1b0 fp=0xee32ae08 sp=0xee32ade8 pc=0x64c34 runtime.mcall(0xee32b450) /usr/local/go/src/runtime/asm_arm.s:265 +0x48 fp=0xee32ae10 sp=0xee32ae08 pc=0x916ec trap 0x0 error 0x0 oldmask 0x0 r0 0x2a860d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x6 r9 0xceb3c0 r10 0x2ba8a28 fp 0x6 ip 0x84a93dca sp 0xee32acac lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 ----- SIGQUIT: quit PC=0x94400 m=10 sigcode=0 goroutine 0 gp=0x331cea8 m=10 mp=0x2a87608 [idle]: runtime.futex(0x2a876d0, 0x80, 0x0, 0x0, 0x0, 0x0) /usr/local/go/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xf22d0be0 sp=0xf22d0be0 pc=0x94400 runtime.futexsleep(0x2a876d0, 0x0, 0xffffffffffffffff) /usr/local/go/src/runtime/os_linux.go:69 +0x5c fp=0xf22d0c08 sp=0xf22d0be0 pc=0x54d20 runtime.notesleep(0x2a876d0) /usr/local/go/src/runtime/lock_futex.go:170 +0xb8 fp=0xf22d0c28 sp=0xf22d0c08 pc=0x249e8 runtime.mPark(...) /usr/local/go/src/runtime/proc.go:1761 runtime.stopm() /usr/local/go/src/runtime/proc.go:2782 +0x90 fp=0xf22d0c3c sp=0xf22d0c28 pc=0x611cc runtime.gcstopm() /usr/local/go/src/runtime/proc.go:3081 +0xd4 fp=0xf22d0c54 sp=0xf22d0c3c pc=0x61e84 runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3149 +0x48 fp=0xf22d0d00 sp=0xf22d0c54 pc=0x620b0 runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0xac fp=0xf22d0d1c sp=0xf22d0d00 pc=0x643bc runtime.goschedImpl(0x2c62368, 0x1) /usr/local/go/src/runtime/proc.go:4065 +0x198 fp=0xf22d0d34 sp=0xf22d0d1c pc=0x64de4 runtime.gopreempt_m(...) /usr/local/go/src/runtime/proc.go:4082 runtime.newstack() /usr/local/go/src/runtime/stack.go:1070 +0x3b0 fp=0xf22d0e0c sp=0xf22d0d34 pc=0x776ac runtime.morestack() /usr/local/go/src/runtime/asm_arm.s:383 +0x60 fp=0xf22d0e10 sp=0xf22d0e0c pc=0x917f8 trap 0x0 error 0x0 oldmask 0x0 r0 0x2a876d0 r1 0x80 r2 0x0 r3 0x0 r4 0x0 r5 0x0 r6 0x0 r7 0xf0 r8 0x0 r9 0x0 r10 0x331cea8 fp 0x6 ip 0x83b1408a sp 0xf22d0be0 lr 0x54d20 pc 0x94400 cpsr 0xa0000010 fault 0x0 signal: aborted ``` </details> The "main loop" is stuck here: ``` goroutine 11056298 gp=0x2b9ad88 m=nil [select]: runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e1d1c8 sp=0x2e1d1b4 pc=0x5c560 runtime.selectgo(0x2e1d2c0, 0x2e1d290, 0x0, 0x0, 0x2, 0x1) /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e1d268 sp=0x2e1d1c8 pc=0x70318 github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2e1d334, {0x8695a0, 0x2af4d98}, 0x0, {0x0, 0x0}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2e1d2e8 sp=0x2e1d268 pc=0x498840 github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54 github.com/cenkalti/backoff/v4.RetryWithData[...](0x2e1d334, {0x8695a0, 0x2af4d98}) /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2e1d314 sp=0x2e1d2e8 pc=0x4985a8 github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2f43080, 0x0) /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2e1d340 sp=0x2e1d314 pc=0x4955e0 github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2f43040}, 0x29527c0, {0x2fa0200, 0x80}) /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2e1d3b4 sp=0x2e1d340 pc=0x494d20 github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x2c36b30, 0x10, 0x10}}, 0x140, ...) /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2e1d530 sp=0x2e1d3b4 pc=0x50ec08 main.(*AppPlayer).loadCurrentTrack(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0) /home/volumio/go-librespot/cmd/daemon/controls.go:287 +0x65c fp=0x2e1d75c sp=0x2e1d530 pc=0x6400c0 main.(*AppPlayer).advanceNext(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0) /home/volumio/go-librespot/cmd/daemon/controls.go:628 +0x448 fp=0x2e1d81c sp=0x2e1d75c pc=0x643810 main.(*AppPlayer).handlePlayerEvent(0x2e57220, {0x86a350, 0xd13698}, 0x2e1da54) /home/volumio/go-librespot/cmd/daemon/controls.go:153 +0x528 fp=0x2e1d8f4 sp=0x2e1d81c pc=0x63ecfc main.(*AppPlayer).Run(0x2e57220, {0x86a350, 0xd13698}, 0x32ea1c0) /home/volumio/go-librespot/cmd/daemon/player.go:606 +0x740 fp=0x2e1dfd8 sp=0x2e1d8f4 pc=0x64df28 main.(*App).withAppPlayer.func2.gowrap1() /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x40 fp=0x2e1dfec sp=0x2e1dfd8 pc=0x646dd4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e1dfec sp=0x2e1dfec pc=0x933b8 created by main.(*App).withAppPlayer.func2 in goroutine 87 /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x2c8 ``` The fact that the retries go on indefinitely is definitily wrong. I have put a limit of 3 retries in https://github.com/devgianlu/go-librespot/commit/05c1cc8c7bc291b924e5a1537184f826e463ceb2.
Author
Owner

@tooxo commented on GitHub (Aug 2, 2025):

@tooxo I think I had this happen just today:
Full goroutine dump

The "main loop" is stuck here:

goroutine 11056298 gp=0x2b9ad88 m=nil [select]:
runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1)
        /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e1d1c8 sp=0x2e1d1b4 pc=0x5c560
runtime.selectgo(0x2e1d2c0, 0x2e1d290, 0x0, 0x0, 0x2, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e1d268 sp=0x2e1d1c8 pc=0x70318
github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2e1d334, {0x8695a0, 0x2af4d98}, 0x0, {0x0, 0x0})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2e1d2e8 sp=0x2e1d268 pc=0x498840
github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...)
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54
github.com/cenkalti/backoff/v4.RetryWithData[...](0x2e1d334, {0x8695a0, 0x2af4d98})
        /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2e1d314 sp=0x2e1d2e8 pc=0x4985a8
github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2f43080, 0x0)
        /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2e1d340 sp=0x2e1d314 pc=0x4955e0
github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2f43040}, 0x29527c0, {0x2fa0200, 0x80})
        /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2e1d3b4 sp=0x2e1d340 pc=0x494d20
github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x2c36b30, 0x10, 0x10}}, 0x140, ...)
        /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2e1d530 sp=0x2e1d3b4 pc=0x50ec08
main.(*AppPlayer).loadCurrentTrack(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0)
        /home/volumio/go-librespot/cmd/daemon/controls.go:287 +0x65c fp=0x2e1d75c sp=0x2e1d530 pc=0x6400c0
main.(*AppPlayer).advanceNext(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0)
        /home/volumio/go-librespot/cmd/daemon/controls.go:628 +0x448 fp=0x2e1d81c sp=0x2e1d75c pc=0x643810
main.(*AppPlayer).handlePlayerEvent(0x2e57220, {0x86a350, 0xd13698}, 0x2e1da54)
        /home/volumio/go-librespot/cmd/daemon/controls.go:153 +0x528 fp=0x2e1d8f4 sp=0x2e1d81c pc=0x63ecfc
main.(*AppPlayer).Run(0x2e57220, {0x86a350, 0xd13698}, 0x32ea1c0)
        /home/volumio/go-librespot/cmd/daemon/player.go:606 +0x740 fp=0x2e1dfd8 sp=0x2e1d8f4 pc=0x64df28
main.(*App).withAppPlayer.func2.gowrap1()
        /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x40 fp=0x2e1dfec sp=0x2e1dfd8 pc=0x646dd4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e1dfec sp=0x2e1dfec pc=0x933b8
created by main.(*App).withAppPlayer.func2 in goroutine 87
        /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x2c8

The fact that the retries go on indefinitely is definitily wrong. I have put a limit of 3 retries in 05c1cc8.

Also: I did not have the time to research this thoroughly, but from what i saw, the http.Client used in the fetchChunk method does not have any timeout set, which could also lead to very long execution times if there is packet loss etc.

<!-- gh-comment-id:3146494960 --> @tooxo commented on GitHub (Aug 2, 2025): > [@tooxo](https://github.com/tooxo) I think I had this happen just today: > Full goroutine dump > > The "main loop" is stuck here: > > ``` > goroutine 11056298 gp=0x2b9ad88 m=nil [select]: > runtime.gopark(0x7c4540, 0x0, 0x9, 0x3, 0x1) > /usr/local/go/src/runtime/proc.go:402 +0x104 fp=0x2e1d1c8 sp=0x2e1d1b4 pc=0x5c560 > runtime.selectgo(0x2e1d2c0, 0x2e1d290, 0x0, 0x0, 0x2, 0x1) > /usr/local/go/src/runtime/select.go:327 +0xaf0 fp=0x2e1d268 sp=0x2e1d1c8 pc=0x70318 > github.com/cenkalti/backoff/v4.doRetryNotify[...](0x2e1d334, {0x8695a0, 0x2af4d98}, 0x0, {0x0, 0x0}) > /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:112 +0x270 fp=0x2e1d2e8 sp=0x2e1d268 pc=0x498840 > github.com/cenkalti/backoff/v4.RetryNotifyWithData[...](...) > /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:54 > github.com/cenkalti/backoff/v4.RetryWithData[...](0x2e1d334, {0x8695a0, 0x2af4d98}) > /home/volumio/go/pkg/mod/github.com/cenkalti/backoff/v4@v4.2.1/retry.go:43 +0x54 fp=0x2e1d314 sp=0x2e1d2e8 pc=0x4985a8 > github.com/devgianlu/go-librespot/audio.(*HttpChunkedReader).downloadChunk(0x2f43080, 0x0) > /home/volumio/go-librespot/audio/chunked_reader.go:114 +0x84 fp=0x2e1d340 sp=0x2e1d314 pc=0x4955e0 > github.com/devgianlu/go-librespot/audio.NewHttpChunkedReader({0x86c818, 0x2f43040}, 0x29527c0, {0x2fa0200, 0x80}) > /home/volumio/go-librespot/audio/chunked_reader.go:78 +0x16c fp=0x2e1d3b4 sp=0x2e1d340 pc=0x494d20 > github.com/devgianlu/go-librespot/player.(*Player).NewStream(0x4150690, {0x86a350, 0xd13698}, 0x29527c0, {{0x2f72b48, 0x5}, {0x2c36b30, 0x10, 0x10}}, 0x140, ...) > /home/volumio/go-librespot/player/player.go:508 +0x88c fp=0x2e1d530 sp=0x2e1d3b4 pc=0x50ec08 > main.(*AppPlayer).loadCurrentTrack(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0) > /home/volumio/go-librespot/cmd/daemon/controls.go:287 +0x65c fp=0x2e1d75c sp=0x2e1d530 pc=0x6400c0 > main.(*AppPlayer).advanceNext(0x2e57220, {0x86a350, 0xd13698}, 0x0, 0x0) > /home/volumio/go-librespot/cmd/daemon/controls.go:628 +0x448 fp=0x2e1d81c sp=0x2e1d75c pc=0x643810 > main.(*AppPlayer).handlePlayerEvent(0x2e57220, {0x86a350, 0xd13698}, 0x2e1da54) > /home/volumio/go-librespot/cmd/daemon/controls.go:153 +0x528 fp=0x2e1d8f4 sp=0x2e1d81c pc=0x63ecfc > main.(*AppPlayer).Run(0x2e57220, {0x86a350, 0xd13698}, 0x32ea1c0) > /home/volumio/go-librespot/cmd/daemon/player.go:606 +0x740 fp=0x2e1dfd8 sp=0x2e1d8f4 pc=0x64df28 > main.(*App).withAppPlayer.func2.gowrap1() > /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x40 fp=0x2e1dfec sp=0x2e1dfd8 pc=0x646dd4 > runtime.goexit({}) > /usr/local/go/src/runtime/asm_arm.s:859 +0x4 fp=0x2e1dfec sp=0x2e1dfec pc=0x933b8 > created by main.(*App).withAppPlayer.func2 in goroutine 87 > /home/volumio/go-librespot/cmd/daemon/main.go:309 +0x2c8 > ``` > > The fact that the retries go on indefinitely is definitily wrong. I have put a limit of 3 retries in [05c1cc8](https://github.com/devgianlu/go-librespot/commit/05c1cc8c7bc291b924e5a1537184f826e463ceb2). Also: I did not have the time to research this thoroughly, but from what i saw, the http.Client used in the fetchChunk method does not have any timeout set, which could also lead to very long execution times if there is packet loss etc.
Author
Owner

@JaragonCR commented on GitHub (Aug 13, 2025):

I'm trying to get iotsound formerly balenasound to use this. I seem to be able to reproduce this on demand, to the point that I can only play one song

 librespot  Generated config:
 librespot  log_level: info
 librespot  device_name: Pergola-test
 librespot  device_type: speaker
 librespot  audio_backend: pulseaudio
 librespot  bitrate: 320
 librespot  normalisation_disabled: true
 librespot  credentials:
 librespot    type: "zeroconf"
 librespot  INFO[0000] running go-librespot b39e5e50                
 librespot  INFO[0000] generated new device id: b8e946ad97997507aada8b4288267ed82af54c5e 
 librespot  INFO[0000] zeroconf server listening on port 51933      
 librespot  INFO[0103] authenticated AP                              username="22*********************pq"
 librespot  INFO[0104] authenticated Login5                          username="22*********************pq"
 librespot  INFO[0104] accepted zeroconf from Jorge's S24 Ultra      username="22*********************pq"
 librespot  INFO[0105] loaded track "Caraluna" (paused: false, position: 6326ms, duration: 266160ms, prefetched: false)  uri="spotify:track:7DhYjNLksXZhbRQeheAums"
 librespot  ERRO[0194] did not receive last pong from dealer, 60s passed 
 librespot  ERRO[0224] did not receive last pong from dealer, 90s passed 
 librespot  ERRO[0254] did not receive last pong from dealer, 120s passed 

Swapping songs, disconnecting from speaker, etc would cause this and the player hangs.

<!-- gh-comment-id:3184113507 --> @JaragonCR commented on GitHub (Aug 13, 2025): I'm trying to get iotsound formerly balenasound to use this. I seem to be able to reproduce this on demand, to the point that I can only play one song ``` librespot Generated config: librespot log_level: info librespot device_name: Pergola-test librespot device_type: speaker librespot audio_backend: pulseaudio librespot bitrate: 320 librespot normalisation_disabled: true librespot credentials: librespot type: "zeroconf" librespot INFO[0000] running go-librespot b39e5e50 librespot INFO[0000] generated new device id: b8e946ad97997507aada8b4288267ed82af54c5e librespot INFO[0000] zeroconf server listening on port 51933 librespot INFO[0103] authenticated AP username="22*********************pq" librespot INFO[0104] authenticated Login5 username="22*********************pq" librespot INFO[0104] accepted zeroconf from Jorge's S24 Ultra username="22*********************pq" librespot INFO[0105] loaded track "Caraluna" (paused: false, position: 6326ms, duration: 266160ms, prefetched: false) uri="spotify:track:7DhYjNLksXZhbRQeheAums" librespot ERRO[0194] did not receive last pong from dealer, 60s passed librespot ERRO[0224] did not receive last pong from dealer, 90s passed librespot ERRO[0254] did not receive last pong from dealer, 120s passed ``` Swapping songs, disconnecting from speaker, etc would cause this and the player hangs.
Author
Owner

@devgianlu commented on GitHub (Aug 13, 2025):

@JaragonCR Would you able to send a SIGABRT to the daemon when it gets stuck to get the goroutine dump? You can do it from the terminal with kill -s ABRT $(pidof go-librespot), depending on the name of the binary.

<!-- gh-comment-id:3184254360 --> @devgianlu commented on GitHub (Aug 13, 2025): @JaragonCR Would you able to send a SIGABRT to the daemon when it gets stuck to get the goroutine dump? You can do it from the terminal with `kill -s ABRT $(pidof go-librespot)`, depending on the name of the binary.
Author
Owner

@JaragonCR commented on GitHub (Aug 13, 2025):

@devgianlu the answer is yes, but since it is a container monitoring the process this restarts it, let me rebuild it with a shared directory to dump the core. Do you know on top of your head how to change the core dump location? I will probably get to this later today or this week.

<!-- gh-comment-id:3184302901 --> @JaragonCR commented on GitHub (Aug 13, 2025): @devgianlu the answer is yes, but since it is a container monitoring the process this restarts it, let me rebuild it with a shared directory to dump the core. Do you know on top of your head how to change the core dump location? I will probably get to this later today or this week.
Author
Owner

@devgianlu commented on GitHub (Aug 13, 2025):

Do you know on top of your head how to change the core dump location? I will probably get to this later today or this week.

The goroutine dump is written to stderr (similarly to the ones above in the thread).

<!-- gh-comment-id:3184371525 --> @devgianlu commented on GitHub (Aug 13, 2025): >Do you know on top of your head how to change the core dump location? I will probably get to this later today or this week. The goroutine dump is written to stderr (similarly to the ones above in the thread).
Author
Owner

@JaragonCR commented on GitHub (Aug 13, 2025):

Definitely does not happen in this environment, need to see why...

/go-librespot # ps -ef 
PID   USER     TIME  COMMAND
    1 root      0:00 /go-librespot/daemon --config_dir /config
   27 root      0:00 /bin/sh
   35 root      0:00 ps -ef
/go-librespot # kill -6 1
/go-librespot # ^[[23;17R
OCI runtime exec failed: exec failed: unable to start container process: exec: "bash": executable file not found in $PATH: unknown
SSH session disconnected
SSH reconnecting...
Spawning shell...
/go-librespot # 
<!-- gh-comment-id:3184392047 --> @JaragonCR commented on GitHub (Aug 13, 2025): Definitely does not happen in this environment, need to see why... ``` /go-librespot # ps -ef PID USER TIME COMMAND 1 root 0:00 /go-librespot/daemon --config_dir /config 27 root 0:00 /bin/sh 35 root 0:00 ps -ef /go-librespot # kill -6 1 /go-librespot # ^[[23;17R OCI runtime exec failed: exec failed: unable to start container process: exec: "bash": executable file not found in $PATH: unknown SSH session disconnected SSH reconnecting... Spawning shell... /go-librespot # ```
Author
Owner

@devgianlu commented on GitHub (Aug 13, 2025):

It is dumped by the daemon process, most likely you'll see it in the docker logs before it restarts.

<!-- gh-comment-id:3184398911 --> @devgianlu commented on GitHub (Aug 13, 2025): It is dumped by the `daemon` process, most likely you'll see it in the docker logs before it restarts.
Author
Owner

@JaragonCR commented on GitHub (Aug 13, 2025):

Generated config:
log_level: info
device_name: Pergola-test
device_type: speaker
audio_backend: pulseaudio
bitrate: 320
normalisation_disabled: true
credentials:
  type: "zeroconf"
INFO[0000] running go-librespot b39e5e50                
INFO[0000] zeroconf server listening on port 51377      
INFO[0021] authenticated AP                              username="22*********************pq"
INFO[0021] authenticated Login5                          username="22*********************pq"
INFO[0021] accepted zeroconf from Jorge's S24 Ultra      username="22*********************pq"
ERRO[0112] did not receive last pong from dealer, 60s passed 
ERRO[0142] did not receive last pong from dealer, 90s passed 
SIGABRT: abort
PC=0x408d40 m=0 sigcode=0

goroutine 0 gp=0x10d1f20 m=0 mp=0x10d2560 [idle]:
runtime/internal/syscall.Syscall6(0x16, 0x4, 0x7fefb61e98, 0x80, 0xc79, 0x0, 0x0)
        /usr/local/go/src/runtime/internal/syscall/asm_linux_arm64.s:17 +0x20 fp=0x7fefb61dd0 sp=0x7fefb61dd0 pc=0x408d40
runtime/internal/syscall.EpollWait(0x0?, {0x7fefb61e98?, 0x7fefb61e78?, 0x43b5a0?}, 0x0?, 0x0?)
        /usr/local/go/src/runtime/internal/syscall/syscall_linux.go:55 +0x58 fp=0x7fefb61e40 sp=0x7fefb61dd0 pc=0x408c78
runtime.netpoll(0xbe604640)
        /usr/local/go/src/runtime/netpoll_epoll.go:118 +0xf4 fp=0x7fefb626d0 sp=0x7fefb61e40 pc=0x43b414
runtime.findRunnable()
        /usr/local/go/src/runtime/proc.go:3470 +0x9ec fp=0x7fefb62840 sp=0x7fefb626d0 pc=0x447ecc
runtime.schedule()
        /usr/local/go/src/runtime/proc.go:3868 +0x98 fp=0x7fefb62880 sp=0x7fefb62840 pc=0x4498f8
runtime.park_m(0x40003b41c0)
        /usr/local/go/src/runtime/proc.go:4036 +0x240 fp=0x7fefb628e0 sp=0x7fefb62880 pc=0x449f90
runtime.mcall()
        /usr/local/go/src/runtime/asm_arm64.s:192 +0x54 fp=0x7fefb628f0 sp=0x7fefb628e0 pc=0x472cd4

goroutine 1 gp=0x40000021c0 m=nil [select, 2 minutes]:
runtime.gopark(0x4000047cb0?, 0x2?, 0x48?, 0x7b?, 0x4000047c4c?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000249ae0 sp=0x4000249ac0 pc=0x4418a8
runtime.selectgo(0x4000249cb0, 0x4000047c48, 0x40003aa1e0?, 0x0, 0x1d8?, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x4000249bf0 sp=0x4000249ae0 pc=0x454294
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x4000579e00, 0x4000249dc8)
        /go-librespot/zeroconf/zeroconf.go:283 +0x1f4 fp=0x4000249d40 sp=0x4000249bf0 pc=0x8c6af4
main.(*App).withAppPlayer(0x400033a000, {0xc11378, 0x11387e0}, 0x4000338130)
        /go-librespot/cmd/daemon/main.go:321 +0x450 fp=0x4000249e50 sp=0x4000249d40 pc=0x94db10
main.(*App).Zeroconf(...)
        /go-librespot/cmd/daemon/main.go:170
main.main()
        /go-librespot/cmd/daemon/main.go:548 +0x410 fp=0x4000249f40 sp=0x4000249e50 pc=0x94f660
runtime.main()
        /usr/local/go/src/runtime/proc.go:271 +0x28c fp=0x4000249fd0 sp=0x4000249f40 pc=0x44147c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000249fd0 sp=0x4000249fd0 pc=0x475214

goroutine 2 gp=0x4000002c40 m=nil [force gc (idle), 2 minutes]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000060f90 sp=0x4000060f70 pc=0x4418a8
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.forcegchelper()
        /usr/local/go/src/runtime/proc.go:326 +0xb8 fp=0x4000060fd0 sp=0x4000060f90 pc=0x441738
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000060fd0 sp=0x4000060fd0 pc=0x475214
created by runtime.init.6 in goroutine 1
        /usr/local/go/src/runtime/proc.go:314 +0x24

goroutine 18 gp=0x4000102380 m=nil [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400005c760 sp=0x400005c740 pc=0x4418a8
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.bgsweep(0x400010e000)
        /usr/local/go/src/runtime/mgcsweep.go:318 +0x108 fp=0x400005c7b0 sp=0x400005c760 pc=0x42cda8
runtime.gcenable.gowrap1()
        /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x400005c7d0 sp=0x400005c7b0 pc=0x420f58
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400005c7d0 sp=0x400005c7d0 pc=0x475214
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:203 +0x6c

goroutine 19 gp=0x4000102540 m=nil [GC scavenge wait]:
runtime.gopark(0x88da1f?, 0x12aa861c?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400005cf60 sp=0x400005cf40 pc=0x4418a8
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:408
runtime.(*scavengerState).park(0x10d1a00)
        /usr/local/go/src/runtime/mgcscavenge.go:425 +0x5c fp=0x400005cf90 sp=0x400005cf60 pc=0x42a73c
runtime.bgscavenge(0x400010e000)
        /usr/local/go/src/runtime/mgcscavenge.go:658 +0xac fp=0x400005cfb0 sp=0x400005cf90 pc=0x42acec
runtime.gcenable.gowrap2()
        /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x400005cfd0 sp=0x400005cfb0 pc=0x420ef8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400005cfd0 sp=0x400005cfd0 pc=0x475214
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:204 +0xac

goroutine 20 gp=0x4000102a80 m=nil [finalizer wait]:
runtime.gopark(0x0?, 0x4002310a30?, 0x70?, 0x60?, 0x1000000010?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000436d80 sp=0x4000436d60 pc=0x4418a8
runtime.runfinq()
        /usr/local/go/src/runtime/mfinal.go:194 +0x108 fp=0x4000436fd0 sp=0x4000436d80 pc=0x420028
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000436fd0 sp=0x4000436fd0 pc=0x475214
created by runtime.createfing in goroutine 1
        /usr/local/go/src/runtime/mfinal.go:164 +0x80

goroutine 100 gp=0x400028f340 m=nil [select]:
runtime.gopark(0x400033f788?, 0x2?, 0x58?, 0xf6?, 0x400033f754?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400033f600 sp=0x400033f5e0 pc=0x4418a8
runtime.selectgo(0x400033f788, 0x400033f750, 0x10d1860?, 0x0, 0x0?, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x400033f710 sp=0x400033f600 pc=0x454294
github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x400045c000)
        /go-librespot/ap/ap.go:355 +0x74 fp=0x400033f7b0 sp=0x400033f710 pc=0x7d4634
github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1.gowrap2()
        /go-librespot/ap/ap.go:264 +0x28 fp=0x400033f7d0 sp=0x400033f7b0 pc=0x7d3ce8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400033f7d0 sp=0x400033f7d0 pc=0x475214
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1 in goroutine 66
        /go-librespot/ap/ap.go:264 +0x108

goroutine 3 gp=0x400028f880 m=nil [GC worker (idle)]:
runtime.gopark(0x38a718243bf8?, 0x3?, 0xa9?, 0x65?, 0x0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000340f30 sp=0x4000340f10 pc=0x4418a8
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x4000340fd0 sp=0x4000340f30 pc=0x423058
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000340fd0 sp=0x4000340fd0 pc=0x475214
created by runtime.gcBgMarkStartWorkers in goroutine 40
        /usr/local/go/src/runtime/mgc.go:1234 +0x28

goroutine 42 gp=0x40003b5340 m=nil [GC worker (idle)]:
runtime.gopark(0x38a7183004a4?, 0x1?, 0x6?, 0x18?, 0x0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000341730 sp=0x4000341710 pc=0x4418a8
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x40003417d0 sp=0x4000341730 pc=0x423058
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40003417d0 sp=0x40003417d0 pc=0x475214
created by runtime.gcBgMarkStartWorkers in goroutine 40
        /usr/local/go/src/runtime/mgc.go:1234 +0x28

goroutine 43 gp=0x40003b5500 m=nil [GC worker (idle), 1 minutes]:
runtime.gopark(0x38a718240f1f?, 0x3?, 0x1c?, 0x6e?, 0x0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000341f30 sp=0x4000341f10 pc=0x4418a8
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x4000341fd0 sp=0x4000341f30 pc=0x423058
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000341fd0 sp=0x4000341fd0 pc=0x475214
created by runtime.gcBgMarkStartWorkers in goroutine 40
        /usr/local/go/src/runtime/mgc.go:1234 +0x28

goroutine 4 gp=0x4000003500 m=nil [GC worker (idle)]:
runtime.gopark(0x38a7182403d6?, 0x3?, 0x91?, 0x5e?, 0x40003049a0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000340730 sp=0x4000340710 pc=0x4418a8
runtime.gcBgMarkWorker()
        /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x40003407d0 sp=0x4000340730 pc=0x423058
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40003407d0 sp=0x40003407d0 pc=0x475214
created by runtime.gcBgMarkStartWorkers in goroutine 40
        /usr/local/go/src/runtime/mgc.go:1234 +0x28

goroutine 26 gp=0x40001db6c0 m=nil [chan receive, 2 minutes]:
runtime.gopark(0x60?, 0x7f9e317f18?, 0x60?, 0x0?, 0x4000067808?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000063670 sp=0x4000063650 pc=0x4418a8
runtime.chanrecv(0x40001180c0, 0x4000063790, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x40000636f0 sp=0x4000063670 pc=0x40d234
runtime.chanrecv2(0x0?, 0x0?)
        /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000063720 sp=0x40000636f0 pc=0x40ce14
main.(*App).withAppPlayer.func1()
        /go-librespot/cmd/daemon/main.go:268 +0x60 fp=0x40000637d0 sp=0x4000063720 pc=0x94e510
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40000637d0 sp=0x40000637d0 pc=0x475214
created by main.(*App).withAppPlayer in goroutine 1
        /go-librespot/cmd/daemon/main.go:265 +0x36c

goroutine 27 gp=0x40001dbc00 m=nil [chan receive, 2 minutes]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000063e60 sp=0x4000063e40 pc=0x4418a8
runtime.chanrecv(0x40003241e0, 0x4000063fb0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000063ee0 sp=0x4000063e60 pc=0x40d234
runtime.chanrecv2(0x0?, 0x0?)
        /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000063f10 sp=0x4000063ee0 pc=0x40ce14
main.(*App).withAppPlayer.func2()
        /go-librespot/cmd/daemon/main.go:284 +0x6c fp=0x4000063fd0 sp=0x4000063f10 pc=0x94e19c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000063fd0 sp=0x4000063fd0 pc=0x475214
created by main.(*App).withAppPlayer in goroutine 1
        /go-librespot/cmd/daemon/main.go:281 +0x404

goroutine 28 gp=0x40001dbdc0 m=nil [IO wait]:
runtime.gopark(0x4000071be8?, 0x4e5f70?, 0x0?, 0x0?, 0x400004e008?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000071ba0 sp=0x4000071b80 pc=0x4418a8
runtime.netpollblock(0x4000071c38?, 0x4e3f84?, 0x0?)
        /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x4000071be0 sp=0x4000071ba0 pc=0x43a8e8
internal/poll.runtime_pollWait(0x7f57859e40, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x4000071c10 sp=0x4000071be0 pc=0x46f990
internal/poll.(*pollDesc).wait(0x8?, 0x8?, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x4000071c40 sp=0x4000071c10 pc=0x4df5e8
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x40002de180)
        /usr/local/go/src/internal/poll/fd_unix.go:611 +0x250 fp=0x4000071cf0 sp=0x4000071c40 pc=0x4e4070
net.(*netFD).accept(0x40002de180)
        /usr/local/go/src/net/fd_unix.go:172 +0x28 fp=0x4000071db0 sp=0x4000071cf0 pc=0x547bd8
net.(*TCPListener).accept(0x40005448c0)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x28 fp=0x4000071de0 sp=0x4000071db0 pc=0x55d968
net.(*TCPListener).Accept(0x40005448c0)
        /usr/local/go/src/net/tcpsock.go:327 +0x2c fp=0x4000071e20 sp=0x4000071de0 pc=0x55cb7c
net/http.(*onceCloseListener).Accept(0x40004901b0?)
        <autogenerated>:1 +0x30 fp=0x4000071e40 sp=0x4000071e20 pc=0x6d13d0
net/http.(*Server).Serve(0x4000092000, {0xc10220, 0x40005448c0})
        /usr/local/go/src/net/http/server.go:3260 +0x2a8 fp=0x4000071f70 sp=0x4000071e40 pc=0x6af978
net/http.Serve(...)
        /usr/local/go/src/net/http/server.go:2799
github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2()
        /go-librespot/zeroconf/zeroconf.go:280 +0x84 fp=0x4000071fd0 sp=0x4000071f70 pc=0x8c6be4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000071fd0 sp=0x4000071fd0 pc=0x475214
created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1
        /go-librespot/zeroconf/zeroconf.go:280 +0x138

goroutine 44 gp=0x40003b4000 m=nil [IO wait]:
runtime.gopark(0x50?, 0x4001d67638?, 0x58?, 0xad?, 0x413f30?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001aace0 sp=0x40001aacc0 pc=0x4418a8
runtime.netpollblock(0xb0434b?, 0x3?, 0x0?)
        /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001aad20 sp=0x40001aace0 pc=0x43a8e8
internal/poll.runtime_pollWait(0x7f57859c50, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001aad50 sp=0x40001aad20 pc=0x46f990
internal/poll.(*pollDesc).wait(0x40002df000?, 0x413a08?, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001aad80 sp=0x40001aad50 pc=0x4df5e8
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x40002df000, 0x4000bff720)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x130 fp=0x40001aade0 sp=0x40001aad80 pc=0x4e4d40
net.(*rawConn).Read(0x4000122070, 0x0?)
        /usr/local/go/src/net/rawconn.go:44 +0x30 fp=0x40001aae20 sp=0x40001aade0 pc=0x558910
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x4000544c40, 0x4001d8a6c0, 0x0)
        /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x138 fp=0x40001aae80 sp=0x40001aae20 pc=0x86b208
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x40005775a0, {0x400034e000, 0x10000, 0x10000})
        /go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x468 fp=0x40001aaf30 sp=0x40001aae80 pc=0x86f028
github.com/grandcat/zeroconf.(*Server).recv4(0x400055dce0, 0x4000577590)
        /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xc4 fp=0x40001aafb0 sp=0x40001aaf30 pc=0x8c2464
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1()
        /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x2c fp=0x40001aafd0 sp=0x40001aafb0 pc=0x8c20ac
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001aafd0 sp=0x40001aafd0 pc=0x475214
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 24
        /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x78

goroutine 45 gp=0x40003b41c0 m=nil [IO wait]:
runtime.gopark(0x50?, 0x4001d67680?, 0x8?, 0x6d?, 0x413f30?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001a6c90 sp=0x40001a6c70 pc=0x4418a8
runtime.netpollblock(0xb0434b?, 0x3?, 0x0?)
        /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001a6cd0 sp=0x40001a6c90 pc=0x43a8e8
internal/poll.runtime_pollWait(0x7f57859b58, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001a6d00 sp=0x40001a6cd0 pc=0x46f990
internal/poll.(*pollDesc).wait(0x40002df080?, 0x413a08?, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001a6d30 sp=0x40001a6d00 pc=0x4df5e8
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).RawRead(0x40002df080, 0x4000bff770)
        /usr/local/go/src/internal/poll/fd_unix.go:708 +0x130 fp=0x40001a6d90 sp=0x40001a6d30 pc=0x4e4d40
net.(*rawConn).Read(0x4000122080, 0x0?)
        /usr/local/go/src/net/rawconn.go:44 +0x30 fp=0x40001a6dd0 sp=0x40001a6d90 pc=0x558910
golang.org/x/net/internal/socket.(*Conn).recvMsg(0x4000544c60, 0x4001d8a720, 0x0)
        /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x138 fp=0x40001a6e30 sp=0x40001a6dd0 pc=0x86b208
golang.org/x/net/internal/socket.(*Conn).RecvMsg(...)
        /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247
golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x40005775f0, {0x4000232000, 0x10000, 0x10000})
        /go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x344 fp=0x40001a6f30 sp=0x40001a6e30 pc=0x8725a4
github.com/grandcat/zeroconf.(*Server).recv6(0x400055dce0, 0x40005775e0)
        /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xc4 fp=0x40001a6fb0 sp=0x40001a6f30 pc=0x8c2624
github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2()
        /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x2c fp=0x40001a6fd0 sp=0x40001a6fb0 pc=0x8c204c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001a6fd0 sp=0x40001a6fd0 pc=0x475214
created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 24
        /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xd8

goroutine 194 gp=0x4000003dc0 m=nil [IO wait]:
runtime.gopark(0x4000402300?, 0x40003b7950?, 0x0?, 0xe7?, 0x95ab3a?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001a5be0 sp=0x40001a5bc0 pc=0x4418a8
runtime.netpollblock(0x0?, 0xffffffff?, 0xff?)
        /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001a5c20 sp=0x40001a5be0 pc=0x43a8e8
internal/poll.runtime_pollWait(0x7f5750af08, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001a5c50 sp=0x40001a5c20 pc=0x46f990
internal/poll.(*pollDesc).wait(0x40005f0700?, 0x4000498000?, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001a5c80 sp=0x40001a5c50 pc=0x4df5e8
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x40005f0700, {0x4000498000, 0x1000, 0x1000})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x200 fp=0x40001a5d20 sp=0x40001a5c80 pc=0x4e0930
net.(*netFD).Read(0x40005f0700, {0x4000498000?, 0x400040c000?, 0x4000460070?})
        /usr/local/go/src/net/fd_posix.go:55 +0x28 fp=0x40001a5d70 sp=0x40001a5d20 pc=0x545ff8
net.(*conn).Read(0x40002f40b8, {0x4000498000?, 0x0?, 0x5?})
        /usr/local/go/src/net/net.go:185 +0x34 fp=0x40001a5dc0 sp=0x40001a5d70 pc=0x5549f4
net.(*TCPConn).Read(0xc1ba88?, {0x4000498000?, 0x0?, 0x4000492748?})
        <autogenerated>:1 +0x2c fp=0x40001a5df0 sp=0x40001a5dc0 pc=0x56605c
bufio.(*Reader).Read(0x4000402300, {0x40003b7950, 0x4, 0x4000492748?})
        /usr/local/go/src/bufio/bufio.go:241 +0x1b4 fp=0x40001a5e30 sp=0x40001a5df0 pc=0x638af4
io.ReadAtLeast({0xc09580, 0x4000402300}, {0x40003b7950, 0x4, 0x8}, 0x4)
        /usr/local/go/src/io/io.go:335 +0xa0 fp=0x40001a5e80 sp=0x40001a5e30 pc=0x4d9a60
io.ReadFull(...)
        /usr/local/go/src/io/io.go:354
github.com/jfreymuth/pulse/proto.(*ProtocolReader).uint32(0x40003b7930)
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/reader.go:42 +0x3c fp=0x40001a5ec0 sp=0x40001a5e80 pc=0x7df0bc
github.com/jfreymuth/pulse/proto.(*Client).readLoop(0x40003b7930)
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/client.go:123 +0x28 fp=0x40001a5fb0 sp=0x40001a5ec0 pc=0x7dcdd8
github.com/jfreymuth/pulse/proto.(*Client).Open.gowrap1()
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/client.go:55 +0x28 fp=0x40001a5fd0 sp=0x40001a5fb0 pc=0x7dc638
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001a5fd0 sp=0x40001a5fd0 pc=0x475214
created by github.com/jfreymuth/pulse/proto.(*Client).Open in goroutine 16
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/client.go:55 +0x228

goroutine 99 gp=0x40003b4700 m=nil [IO wait]:
runtime.gopark(0x40001a7aa8?, 0x41c65c?, 0xd8?, 0x7a?, 0x9?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001a7a60 sp=0x40001a7a40 pc=0x4418a8
runtime.netpollblock(0x0?, 0xffffffff?, 0xff?)
        /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001a7aa0 sp=0x40001a7a60 pc=0x43a8e8
internal/poll.runtime_pollWait(0x7f57859778, 0x72)
        /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001a7ad0 sp=0x40001a7aa0 pc=0x46f990
internal/poll.(*pollDesc).wait(0x4000168580?, 0x4001d358ac?, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001a7b00 sp=0x40001a7ad0 pc=0x4df5e8
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x4000168580, {0x4001d358ac, 0x3, 0x3})
        /usr/local/go/src/internal/poll/fd_unix.go:164 +0x200 fp=0x40001a7ba0 sp=0x40001a7b00 pc=0x4e0930
net.(*netFD).Read(0x4000168580, {0x4001d358ac?, 0x1000000?, 0x10d2560?})
        /usr/local/go/src/net/fd_posix.go:55 +0x28 fp=0x40001a7bf0 sp=0x40001a7ba0 pc=0x545ff8
net.(*conn).Read(0x4000122048, {0x4001d358ac?, 0x40001a7c88?, 0x10d2560?})
        /usr/local/go/src/net/net.go:185 +0x34 fp=0x40001a7c40 sp=0x40001a7bf0 pc=0x5549f4
net.(*TCPConn).Read(0x0?, {0x4001d358ac?, 0x40001a7cb8?, 0x7d7074?})
        <autogenerated>:1 +0x2c fp=0x40001a7c70 sp=0x40001a7c40 pc=0x56605c
io.ReadAtLeast({0xc09220, 0x4000122048}, {0x4001d358ac, 0x3, 0x3}, 0x3)
        /usr/local/go/src/io/io.go:335 +0xa0 fp=0x40001a7cc0 sp=0x40001a7c70 pc=0x4d9a60
io.ReadFull(...)
        /usr/local/go/src/io/io.go:354
github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x40000cb140, {0xc11378, 0x11387e0})
        /go-librespot/ap/shannon.go:124 +0x334 fp=0x40001a7e10 sp=0x40001a7cc0 pc=0x7d7094
github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x400045c000)
        /go-librespot/ap/ap.go:276 +0x60 fp=0x40001a7fb0 sp=0x40001a7e10 pc=0x7d3de0
github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1.gowrap1()
        /go-librespot/ap/ap.go:260 +0x28 fp=0x40001a7fd0 sp=0x40001a7fb0 pc=0x7d3d48
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001a7fd0 sp=0x40001a7fd0 pc=0x475214
created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1 in goroutine 66
        /go-librespot/ap/ap.go:260 +0x88

goroutine 16 gp=0x40003b4c40 m=nil [chan receive, 2 minutes]:
runtime.gopark(0x400048f380?, 0x40003ae400?, 0x0?, 0x4?, 0x400?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400152ad30 sp=0x400152ad10 pc=0x4418a8
runtime.chanrecv(0x400003e2a0, 0x0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x400152adb0 sp=0x400152ad30 pc=0x40d234
runtime.chanrecv1(0x40003b7930?, 0xc0c640?)
        /usr/local/go/src/runtime/chan.go:442 +0x14 fp=0x400152ade0 sp=0x400152adb0 pc=0x40cdf4
github.com/jfreymuth/pulse.(*PlaybackStream).Start(0x400026e700)
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:196 +0x100 fp=0x400152ae20 sp=0x400152ade0 pc=0x7e4c30
github.com/devgianlu/go-librespot/output.(*pulseAudioOutput).Drop(0x400055c120)
        /go-librespot/output/driver-pulseaudio.go:169 +0xcc fp=0x400152ae70 sp=0x400152ae20 pc=0x7e828c
github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x40005f0680)
        /go-librespot/player/player.go:240 +0x3ac fp=0x400152afb0 sp=0x400152ae70 pc=0x83d34c
github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1()
        /go-librespot/player/player.go:183 +0x28 fp=0x400152afd0 sp=0x400152afb0 pc=0x83cd88
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400152afd0 sp=0x400152afd0 pc=0x475214
created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 1
        /go-librespot/player/player.go:183 +0x1ec

goroutine 66 gp=0x40003b4e00 m=nil [chan receive, 2 minutes]:
runtime.gopark(0x40000ee998?, 0x40c0c8?, 0x0?, 0x1?, 0x4000320720?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40000ee920 sp=0x40000ee900 pc=0x4418a8
runtime.chanrecv(0x40003246c0, 0x40000eec88, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x40000ee9a0 sp=0x40000ee920 pc=0x40d234
runtime.chanrecv1(0xa80a00?, 0x40000eed10?)
        /usr/local/go/src/runtime/chan.go:442 +0x14 fp=0x40000ee9d0 sp=0x40000ee9a0 pc=0x40cdf4
github.com/devgianlu/go-librespot/player.(*Player).SetPrimaryStream(...)
        /go-librespot/player/player.go:415
main.(*AppPlayer).loadCurrentTrack(0x40000aa000, {0xc11378, 0x11387e0}, 0x0, 0x1)
        /go-librespot/cmd/daemon/controls.go:293 +0x6dc fp=0x40000eedf0 sp=0x40000ee9d0 pc=0x948aac
main.(*AppPlayer).handlePlayerCommand(_, {_, _}, {0x2411955a, {0x40000370b0, 0x28}, {{0x400049bdc0, 0x8}, {0x0, 0x0}, ...}})
        /go-librespot/cmd/daemon/player.go:250 +0x17c8 fp=0x40000ef000 sp=0x40000eedf0 pc=0x951cc8
main.(*AppPlayer).handleDealerRequest(_, {_, _}, {0x400003e300, {0x4000036390, 0x24}, {0x2411955a, {0x40000370b0, 0x28}, {{0x400049bdc0, ...}, ...}}})
        /go-librespot/cmd/daemon/player.go:368 +0x118 fp=0x40000ef250 sp=0x40000ef000 pc=0x9521a8
main.(*AppPlayer).Run(0x40000aa000, {0xc11378, 0x11387e0}, 0x400003f080)
        /go-librespot/cmd/daemon/player.go:596 +0x4e0 fp=0x40000effa0 sp=0x40000ef250 pc=0x953db0
main.(*App).withAppPlayer.func3.gowrap1()
        /go-librespot/cmd/daemon/main.go:358 +0x34 fp=0x40000effd0 sp=0x40000effa0 pc=0x94e0f4
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40000effd0 sp=0x40000effd0 pc=0x475214
created by main.(*App).withAppPlayer.func3 in goroutine 1
        /go-librespot/cmd/daemon/main.go:358 +0x468

goroutine 101 gp=0x40001db500 m=nil [chan receive, 2 minutes]:
runtime.gopark(0x40004c5b58?, 0x40c0c8?, 0x60?, 0xc?, 0x7f9e3206a8?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000247ae0 sp=0x4000247ac0 pc=0x4418a8
runtime.chanrecv(0x400003e300, 0x40004c5bd7, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000247b60 sp=0x4000247ae0 pc=0x40d234
runtime.chanrecv1(0x40000a2000?, 0x0?)
        /usr/local/go/src/runtime/chan.go:442 +0x14 fp=0x4000247b90 sp=0x4000247b60 pc=0x40cdf4
github.com/devgianlu/go-librespot/dealer.(*Dealer).handleRequest(0x400041e7e0, 0x4000490240)
        /go-librespot/dealer/recv.go:237 +0x234 fp=0x4000247e70 sp=0x4000247b90 pc=0x859eb4
github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x400041e7e0)
        /go-librespot/dealer/dealer.go:213 +0x3b4 fp=0x4000247fb0 sp=0x4000247e70 pc=0x858764
github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1.gowrap1()
        /go-librespot/dealer/dealer.go:125 +0x28 fp=0x4000247fd0 sp=0x4000247fb0 pc=0x857f38
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000247fd0 sp=0x4000247fd0 pc=0x475214
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1 in goroutine 66
        /go-librespot/dealer/dealer.go:125 +0x88

goroutine 102 gp=0x40001db880 m=nil [select]:
runtime.gopark(0x4000243f88?, 0x2?, 0x0?, 0x0?, 0x4000243f2c?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000243dd0 sp=0x4000243db0 pc=0x4418a8
runtime.selectgo(0x4000243f88, 0x4000243f28, 0x0?, 0x0, 0x40003cb960?, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x4000243ee0 sp=0x4000243dd0 pc=0x454294
github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x400041e7e0)
        /go-librespot/dealer/dealer.go:138 +0x74 fp=0x4000243fb0 sp=0x4000243ee0 pc=0x857fe4
github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1.gowrap2()
        /go-librespot/dealer/dealer.go:129 +0x28 fp=0x4000243fd0 sp=0x4000243fb0 pc=0x857ed8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000243fd0 sp=0x4000243fd0 pc=0x475214
created by github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1 in goroutine 66
        /go-librespot/dealer/dealer.go:129 +0x108

goroutine 122 gp=0x40003e76c0 m=nil [select, 2 minutes]:
runtime.gopark(0x4000070c38?, 0x3?, 0x38?, 0xa?, 0x4000070b3a?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40000709d0 sp=0x40000709b0 pc=0x4418a8
runtime.selectgo(0x4000070c38, 0x4000070b34, 0x0?, 0x0, 0x99cb60?, 0x1)
        /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x4000070ae0 sp=0x40000709d0 pc=0x454294
github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x400028dc00)
        /go-librespot/audio/provider.go:63 +0x114 fp=0x4000070fb0 sp=0x4000070ae0 pc=0x7dae14
github.com/devgianlu/go-librespot/audio.(*KeyProvider).startReceiving.func1.gowrap1()
        /go-librespot/audio/provider.go:53 +0x28 fp=0x4000070fd0 sp=0x4000070fb0 pc=0x7dacc8
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000070fd0 sp=0x4000070fd0 pc=0x475214
created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).startReceiving.func1 in goroutine 66
        /go-librespot/audio/provider.go:53 +0x60

goroutine 166 gp=0x4000536e00 m=nil [chan receive, 2 minutes]:
runtime.gopark(0x40000be660?, 0x10d1860?, 0x28?, 0x1f?, 0x1000000005479b0?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40005b1ea0 sp=0x40005b1e80 pc=0x4418a8
runtime.chanrecv(0x400055c240, 0x40005b1fb0, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x40005b1f20 sp=0x40005b1ea0 pc=0x40d234
runtime.chanrecv2(0x77?, 0x1?)
        /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x40005b1f50 sp=0x40005b1f20 pc=0x40ce14
github.com/devgianlu/go-librespot/output.newPulseAudioOutput.func1()
        /go-librespot/output/driver-pulseaudio.go:92 +0x48 fp=0x40005b1fd0 sp=0x40005b1f50 pc=0x7e7b68
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40005b1fd0 sp=0x40005b1fd0 pc=0x475214
created by github.com/devgianlu/go-librespot/output.newPulseAudioOutput in goroutine 16
        /go-librespot/output/driver-pulseaudio.go:91 +0x5f0

goroutine 153 gp=0x4000537a40 m=nil [chan receive]:
runtime.gopark(0x40000bed20?, 0x400058c800?, 0xd8?, 0x8e?, 0x7e3f64?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000438e90 sp=0x4000438e70 pc=0x4418a8
runtime.chanrecv(0x400003e120, 0x4000438f90, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000438f10 sp=0x4000438e90 pc=0x40d234
runtime.chanrecv2(0x40003b7930?, 0x4000000000?)
        /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000438f40 sp=0x4000438f10 pc=0x40ce14
github.com/jfreymuth/pulse.(*PlaybackStream).run(0x400026e700)
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:97 +0x38 fp=0x4000438fb0 sp=0x4000438f40 pc=0x7e46f8
github.com/jfreymuth/pulse.(*Client).NewPlayback.gowrap2()
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:92 +0x28 fp=0x4000438fd0 sp=0x4000438fb0 pc=0x7e4628
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000438fd0 sp=0x4000438fd0 pc=0x475214
created by github.com/jfreymuth/pulse.(*Client).NewPlayback in goroutine 16
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:92 +0x508

goroutine 212 gp=0x4000537c00 m=nil [chan receive, 2 minutes]:
runtime.gopark(0x4000075ef8?, 0x40d734?, 0x0?, 0x4?, 0x40000be660?)
        /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000075e80 sp=0x4000075e60 pc=0x4418a8
runtime.chanrecv(0x40003245a0, 0x4000075f60, 0x1)
        /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000075f00 sp=0x4000075e80 pc=0x40d234
runtime.chanrecv2(0x0?, 0xc0c5e0?)
        /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000075f30 sp=0x4000075f00 pc=0x40ce14
github.com/jfreymuth/pulse.(*PlaybackStream).handleEvents(0x400026e700, 0x40003245a0)
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:130 +0x48 fp=0x4000075fb0 sp=0x4000075f30 pc=0x7e4968
github.com/jfreymuth/pulse.(*Client).NewPlayback.gowrap1()
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:77 +0x2c fp=0x4000075fd0 sp=0x4000075fb0 pc=0x7e468c
runtime.goexit({})
        /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000075fd0 sp=0x4000075fd0 pc=0x475214
created by github.com/jfreymuth/pulse.(*Client).NewPlayback in goroutine 16
        /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:77 +0x28c

r0      0xfffffffffffffffc
r1      0x7fefb61e98
r2      0x80
r3      0xc79
r4      0x0
r5      0x0
r6      0xc79
r7      0x7fefb62688
r8      0x16
r9      0x1
r10     0x0
r11     0x4
r12     0x0
r13     0x1
r14     0xb
r15     0xc
r16     0x7fefb43bf0
r17     0x7fefb61ec0
r18     0xe0
r19     0xfffffffffffffffb
r20     0x7fefb61e40
r21     0x10d2560
r22     0x1
r23     0x11392c8
r24     0x0
r25     0x4000053cc0
r26     0xb6d490
r27     0x109a000
r28     0x10d1f20
r29     0x7fefb61dc8
lr      0x408c78
sp      0x7fefb61dd0
pc      0x408d40
fault   0x0
<!-- gh-comment-id:3184431166 --> @JaragonCR commented on GitHub (Aug 13, 2025): ``` Generated config: log_level: info device_name: Pergola-test device_type: speaker audio_backend: pulseaudio bitrate: 320 normalisation_disabled: true credentials: type: "zeroconf" INFO[0000] running go-librespot b39e5e50 INFO[0000] zeroconf server listening on port 51377 INFO[0021] authenticated AP username="22*********************pq" INFO[0021] authenticated Login5 username="22*********************pq" INFO[0021] accepted zeroconf from Jorge's S24 Ultra username="22*********************pq" ERRO[0112] did not receive last pong from dealer, 60s passed ERRO[0142] did not receive last pong from dealer, 90s passed SIGABRT: abort PC=0x408d40 m=0 sigcode=0 goroutine 0 gp=0x10d1f20 m=0 mp=0x10d2560 [idle]: runtime/internal/syscall.Syscall6(0x16, 0x4, 0x7fefb61e98, 0x80, 0xc79, 0x0, 0x0) /usr/local/go/src/runtime/internal/syscall/asm_linux_arm64.s:17 +0x20 fp=0x7fefb61dd0 sp=0x7fefb61dd0 pc=0x408d40 runtime/internal/syscall.EpollWait(0x0?, {0x7fefb61e98?, 0x7fefb61e78?, 0x43b5a0?}, 0x0?, 0x0?) /usr/local/go/src/runtime/internal/syscall/syscall_linux.go:55 +0x58 fp=0x7fefb61e40 sp=0x7fefb61dd0 pc=0x408c78 runtime.netpoll(0xbe604640) /usr/local/go/src/runtime/netpoll_epoll.go:118 +0xf4 fp=0x7fefb626d0 sp=0x7fefb61e40 pc=0x43b414 runtime.findRunnable() /usr/local/go/src/runtime/proc.go:3470 +0x9ec fp=0x7fefb62840 sp=0x7fefb626d0 pc=0x447ecc runtime.schedule() /usr/local/go/src/runtime/proc.go:3868 +0x98 fp=0x7fefb62880 sp=0x7fefb62840 pc=0x4498f8 runtime.park_m(0x40003b41c0) /usr/local/go/src/runtime/proc.go:4036 +0x240 fp=0x7fefb628e0 sp=0x7fefb62880 pc=0x449f90 runtime.mcall() /usr/local/go/src/runtime/asm_arm64.s:192 +0x54 fp=0x7fefb628f0 sp=0x7fefb628e0 pc=0x472cd4 goroutine 1 gp=0x40000021c0 m=nil [select, 2 minutes]: runtime.gopark(0x4000047cb0?, 0x2?, 0x48?, 0x7b?, 0x4000047c4c?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000249ae0 sp=0x4000249ac0 pc=0x4418a8 runtime.selectgo(0x4000249cb0, 0x4000047c48, 0x40003aa1e0?, 0x0, 0x1d8?, 0x1) /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x4000249bf0 sp=0x4000249ae0 pc=0x454294 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve(0x4000579e00, 0x4000249dc8) /go-librespot/zeroconf/zeroconf.go:283 +0x1f4 fp=0x4000249d40 sp=0x4000249bf0 pc=0x8c6af4 main.(*App).withAppPlayer(0x400033a000, {0xc11378, 0x11387e0}, 0x4000338130) /go-librespot/cmd/daemon/main.go:321 +0x450 fp=0x4000249e50 sp=0x4000249d40 pc=0x94db10 main.(*App).Zeroconf(...) /go-librespot/cmd/daemon/main.go:170 main.main() /go-librespot/cmd/daemon/main.go:548 +0x410 fp=0x4000249f40 sp=0x4000249e50 pc=0x94f660 runtime.main() /usr/local/go/src/runtime/proc.go:271 +0x28c fp=0x4000249fd0 sp=0x4000249f40 pc=0x44147c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000249fd0 sp=0x4000249fd0 pc=0x475214 goroutine 2 gp=0x4000002c40 m=nil [force gc (idle), 2 minutes]: runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000060f90 sp=0x4000060f70 pc=0x4418a8 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.forcegchelper() /usr/local/go/src/runtime/proc.go:326 +0xb8 fp=0x4000060fd0 sp=0x4000060f90 pc=0x441738 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000060fd0 sp=0x4000060fd0 pc=0x475214 created by runtime.init.6 in goroutine 1 /usr/local/go/src/runtime/proc.go:314 +0x24 goroutine 18 gp=0x4000102380 m=nil [GC sweep wait]: runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400005c760 sp=0x400005c740 pc=0x4418a8 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.bgsweep(0x400010e000) /usr/local/go/src/runtime/mgcsweep.go:318 +0x108 fp=0x400005c7b0 sp=0x400005c760 pc=0x42cda8 runtime.gcenable.gowrap1() /usr/local/go/src/runtime/mgc.go:203 +0x28 fp=0x400005c7d0 sp=0x400005c7b0 pc=0x420f58 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400005c7d0 sp=0x400005c7d0 pc=0x475214 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:203 +0x6c goroutine 19 gp=0x4000102540 m=nil [GC scavenge wait]: runtime.gopark(0x88da1f?, 0x12aa861c?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400005cf60 sp=0x400005cf40 pc=0x4418a8 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:408 runtime.(*scavengerState).park(0x10d1a00) /usr/local/go/src/runtime/mgcscavenge.go:425 +0x5c fp=0x400005cf90 sp=0x400005cf60 pc=0x42a73c runtime.bgscavenge(0x400010e000) /usr/local/go/src/runtime/mgcscavenge.go:658 +0xac fp=0x400005cfb0 sp=0x400005cf90 pc=0x42acec runtime.gcenable.gowrap2() /usr/local/go/src/runtime/mgc.go:204 +0x28 fp=0x400005cfd0 sp=0x400005cfb0 pc=0x420ef8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400005cfd0 sp=0x400005cfd0 pc=0x475214 created by runtime.gcenable in goroutine 1 /usr/local/go/src/runtime/mgc.go:204 +0xac goroutine 20 gp=0x4000102a80 m=nil [finalizer wait]: runtime.gopark(0x0?, 0x4002310a30?, 0x70?, 0x60?, 0x1000000010?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000436d80 sp=0x4000436d60 pc=0x4418a8 runtime.runfinq() /usr/local/go/src/runtime/mfinal.go:194 +0x108 fp=0x4000436fd0 sp=0x4000436d80 pc=0x420028 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000436fd0 sp=0x4000436fd0 pc=0x475214 created by runtime.createfing in goroutine 1 /usr/local/go/src/runtime/mfinal.go:164 +0x80 goroutine 100 gp=0x400028f340 m=nil [select]: runtime.gopark(0x400033f788?, 0x2?, 0x58?, 0xf6?, 0x400033f754?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400033f600 sp=0x400033f5e0 pc=0x4418a8 runtime.selectgo(0x400033f788, 0x400033f750, 0x10d1860?, 0x0, 0x0?, 0x1) /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x400033f710 sp=0x400033f600 pc=0x454294 github.com/devgianlu/go-librespot/ap.(*Accesspoint).pongAckTicker(0x400045c000) /go-librespot/ap/ap.go:355 +0x74 fp=0x400033f7b0 sp=0x400033f710 pc=0x7d4634 github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1.gowrap2() /go-librespot/ap/ap.go:264 +0x28 fp=0x400033f7d0 sp=0x400033f7b0 pc=0x7d3ce8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400033f7d0 sp=0x400033f7d0 pc=0x475214 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1 in goroutine 66 /go-librespot/ap/ap.go:264 +0x108 goroutine 3 gp=0x400028f880 m=nil [GC worker (idle)]: runtime.gopark(0x38a718243bf8?, 0x3?, 0xa9?, 0x65?, 0x0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000340f30 sp=0x4000340f10 pc=0x4418a8 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x4000340fd0 sp=0x4000340f30 pc=0x423058 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000340fd0 sp=0x4000340fd0 pc=0x475214 created by runtime.gcBgMarkStartWorkers in goroutine 40 /usr/local/go/src/runtime/mgc.go:1234 +0x28 goroutine 42 gp=0x40003b5340 m=nil [GC worker (idle)]: runtime.gopark(0x38a7183004a4?, 0x1?, 0x6?, 0x18?, 0x0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000341730 sp=0x4000341710 pc=0x4418a8 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x40003417d0 sp=0x4000341730 pc=0x423058 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40003417d0 sp=0x40003417d0 pc=0x475214 created by runtime.gcBgMarkStartWorkers in goroutine 40 /usr/local/go/src/runtime/mgc.go:1234 +0x28 goroutine 43 gp=0x40003b5500 m=nil [GC worker (idle), 1 minutes]: runtime.gopark(0x38a718240f1f?, 0x3?, 0x1c?, 0x6e?, 0x0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000341f30 sp=0x4000341f10 pc=0x4418a8 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x4000341fd0 sp=0x4000341f30 pc=0x423058 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000341fd0 sp=0x4000341fd0 pc=0x475214 created by runtime.gcBgMarkStartWorkers in goroutine 40 /usr/local/go/src/runtime/mgc.go:1234 +0x28 goroutine 4 gp=0x4000003500 m=nil [GC worker (idle)]: runtime.gopark(0x38a7182403d6?, 0x3?, 0x91?, 0x5e?, 0x40003049a0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000340730 sp=0x4000340710 pc=0x4418a8 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1310 +0xd8 fp=0x40003407d0 sp=0x4000340730 pc=0x423058 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40003407d0 sp=0x40003407d0 pc=0x475214 created by runtime.gcBgMarkStartWorkers in goroutine 40 /usr/local/go/src/runtime/mgc.go:1234 +0x28 goroutine 26 gp=0x40001db6c0 m=nil [chan receive, 2 minutes]: runtime.gopark(0x60?, 0x7f9e317f18?, 0x60?, 0x0?, 0x4000067808?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000063670 sp=0x4000063650 pc=0x4418a8 runtime.chanrecv(0x40001180c0, 0x4000063790, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x40000636f0 sp=0x4000063670 pc=0x40d234 runtime.chanrecv2(0x0?, 0x0?) /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000063720 sp=0x40000636f0 pc=0x40ce14 main.(*App).withAppPlayer.func1() /go-librespot/cmd/daemon/main.go:268 +0x60 fp=0x40000637d0 sp=0x4000063720 pc=0x94e510 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40000637d0 sp=0x40000637d0 pc=0x475214 created by main.(*App).withAppPlayer in goroutine 1 /go-librespot/cmd/daemon/main.go:265 +0x36c goroutine 27 gp=0x40001dbc00 m=nil [chan receive, 2 minutes]: runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000063e60 sp=0x4000063e40 pc=0x4418a8 runtime.chanrecv(0x40003241e0, 0x4000063fb0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000063ee0 sp=0x4000063e60 pc=0x40d234 runtime.chanrecv2(0x0?, 0x0?) /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000063f10 sp=0x4000063ee0 pc=0x40ce14 main.(*App).withAppPlayer.func2() /go-librespot/cmd/daemon/main.go:284 +0x6c fp=0x4000063fd0 sp=0x4000063f10 pc=0x94e19c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000063fd0 sp=0x4000063fd0 pc=0x475214 created by main.(*App).withAppPlayer in goroutine 1 /go-librespot/cmd/daemon/main.go:281 +0x404 goroutine 28 gp=0x40001dbdc0 m=nil [IO wait]: runtime.gopark(0x4000071be8?, 0x4e5f70?, 0x0?, 0x0?, 0x400004e008?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000071ba0 sp=0x4000071b80 pc=0x4418a8 runtime.netpollblock(0x4000071c38?, 0x4e3f84?, 0x0?) /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x4000071be0 sp=0x4000071ba0 pc=0x43a8e8 internal/poll.runtime_pollWait(0x7f57859e40, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x4000071c10 sp=0x4000071be0 pc=0x46f990 internal/poll.(*pollDesc).wait(0x8?, 0x8?, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x4000071c40 sp=0x4000071c10 pc=0x4df5e8 internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0x40002de180) /usr/local/go/src/internal/poll/fd_unix.go:611 +0x250 fp=0x4000071cf0 sp=0x4000071c40 pc=0x4e4070 net.(*netFD).accept(0x40002de180) /usr/local/go/src/net/fd_unix.go:172 +0x28 fp=0x4000071db0 sp=0x4000071cf0 pc=0x547bd8 net.(*TCPListener).accept(0x40005448c0) /usr/local/go/src/net/tcpsock_posix.go:159 +0x28 fp=0x4000071de0 sp=0x4000071db0 pc=0x55d968 net.(*TCPListener).Accept(0x40005448c0) /usr/local/go/src/net/tcpsock.go:327 +0x2c fp=0x4000071e20 sp=0x4000071de0 pc=0x55cb7c net/http.(*onceCloseListener).Accept(0x40004901b0?) <autogenerated>:1 +0x30 fp=0x4000071e40 sp=0x4000071e20 pc=0x6d13d0 net/http.(*Server).Serve(0x4000092000, {0xc10220, 0x40005448c0}) /usr/local/go/src/net/http/server.go:3260 +0x2a8 fp=0x4000071f70 sp=0x4000071e40 pc=0x6af978 net/http.Serve(...) /usr/local/go/src/net/http/server.go:2799 github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve.func2() /go-librespot/zeroconf/zeroconf.go:280 +0x84 fp=0x4000071fd0 sp=0x4000071f70 pc=0x8c6be4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000071fd0 sp=0x4000071fd0 pc=0x475214 created by github.com/devgianlu/go-librespot/zeroconf.(*Zeroconf).Serve in goroutine 1 /go-librespot/zeroconf/zeroconf.go:280 +0x138 goroutine 44 gp=0x40003b4000 m=nil [IO wait]: runtime.gopark(0x50?, 0x4001d67638?, 0x58?, 0xad?, 0x413f30?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001aace0 sp=0x40001aacc0 pc=0x4418a8 runtime.netpollblock(0xb0434b?, 0x3?, 0x0?) /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001aad20 sp=0x40001aace0 pc=0x43a8e8 internal/poll.runtime_pollWait(0x7f57859c50, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001aad50 sp=0x40001aad20 pc=0x46f990 internal/poll.(*pollDesc).wait(0x40002df000?, 0x413a08?, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001aad80 sp=0x40001aad50 pc=0x4df5e8 internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x40002df000, 0x4000bff720) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x130 fp=0x40001aade0 sp=0x40001aad80 pc=0x4e4d40 net.(*rawConn).Read(0x4000122070, 0x0?) /usr/local/go/src/net/rawconn.go:44 +0x30 fp=0x40001aae20 sp=0x40001aade0 pc=0x558910 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x4000544c40, 0x4001d8a6c0, 0x0) /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x138 fp=0x40001aae80 sp=0x40001aae20 pc=0x86b208 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv4.(*payloadHandler).ReadFrom(0x40005775a0, {0x400034e000, 0x10000, 0x10000}) /go/pkg/mod/golang.org/x/net@v0.26.0/ipv4/payload_cmsg.go:31 +0x468 fp=0x40001aaf30 sp=0x40001aae80 pc=0x86f028 github.com/grandcat/zeroconf.(*Server).recv4(0x400055dce0, 0x4000577590) /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:254 +0xc4 fp=0x40001aafb0 sp=0x40001aaf30 pc=0x8c2464 github.com/grandcat/zeroconf.(*Server).mainloop.gowrap1() /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x2c fp=0x40001aafd0 sp=0x40001aafb0 pc=0x8c20ac runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001aafd0 sp=0x40001aafd0 pc=0x475214 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 24 /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:188 +0x78 goroutine 45 gp=0x40003b41c0 m=nil [IO wait]: runtime.gopark(0x50?, 0x4001d67680?, 0x8?, 0x6d?, 0x413f30?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001a6c90 sp=0x40001a6c70 pc=0x4418a8 runtime.netpollblock(0xb0434b?, 0x3?, 0x0?) /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001a6cd0 sp=0x40001a6c90 pc=0x43a8e8 internal/poll.runtime_pollWait(0x7f57859b58, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001a6d00 sp=0x40001a6cd0 pc=0x46f990 internal/poll.(*pollDesc).wait(0x40002df080?, 0x413a08?, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001a6d30 sp=0x40001a6d00 pc=0x4df5e8 internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).RawRead(0x40002df080, 0x4000bff770) /usr/local/go/src/internal/poll/fd_unix.go:708 +0x130 fp=0x40001a6d90 sp=0x40001a6d30 pc=0x4e4d40 net.(*rawConn).Read(0x4000122080, 0x0?) /usr/local/go/src/net/rawconn.go:44 +0x30 fp=0x40001a6dd0 sp=0x40001a6d90 pc=0x558910 golang.org/x/net/internal/socket.(*Conn).recvMsg(0x4000544c60, 0x4001d8a720, 0x0) /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/rawconn_msg.go:27 +0x138 fp=0x40001a6e30 sp=0x40001a6dd0 pc=0x86b208 golang.org/x/net/internal/socket.(*Conn).RecvMsg(...) /go/pkg/mod/golang.org/x/net@v0.26.0/internal/socket/socket.go:247 golang.org/x/net/ipv6.(*payloadHandler).ReadFrom(0x40005775f0, {0x4000232000, 0x10000, 0x10000}) /go/pkg/mod/golang.org/x/net@v0.26.0/ipv6/payload_cmsg.go:31 +0x344 fp=0x40001a6f30 sp=0x40001a6e30 pc=0x8725a4 github.com/grandcat/zeroconf.(*Server).recv6(0x400055dce0, 0x40005775e0) /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:282 +0xc4 fp=0x40001a6fb0 sp=0x40001a6f30 pc=0x8c2624 github.com/grandcat/zeroconf.(*Server).mainloop.gowrap2() /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0x2c fp=0x40001a6fd0 sp=0x40001a6fb0 pc=0x8c204c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001a6fd0 sp=0x40001a6fd0 pc=0x475214 created by github.com/grandcat/zeroconf.(*Server).mainloop in goroutine 24 /go/pkg/mod/github.com/grandcat/zeroconf@v1.0.0/server.go:191 +0xd8 goroutine 194 gp=0x4000003dc0 m=nil [IO wait]: runtime.gopark(0x4000402300?, 0x40003b7950?, 0x0?, 0xe7?, 0x95ab3a?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001a5be0 sp=0x40001a5bc0 pc=0x4418a8 runtime.netpollblock(0x0?, 0xffffffff?, 0xff?) /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001a5c20 sp=0x40001a5be0 pc=0x43a8e8 internal/poll.runtime_pollWait(0x7f5750af08, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001a5c50 sp=0x40001a5c20 pc=0x46f990 internal/poll.(*pollDesc).wait(0x40005f0700?, 0x4000498000?, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001a5c80 sp=0x40001a5c50 pc=0x4df5e8 internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x40005f0700, {0x4000498000, 0x1000, 0x1000}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x200 fp=0x40001a5d20 sp=0x40001a5c80 pc=0x4e0930 net.(*netFD).Read(0x40005f0700, {0x4000498000?, 0x400040c000?, 0x4000460070?}) /usr/local/go/src/net/fd_posix.go:55 +0x28 fp=0x40001a5d70 sp=0x40001a5d20 pc=0x545ff8 net.(*conn).Read(0x40002f40b8, {0x4000498000?, 0x0?, 0x5?}) /usr/local/go/src/net/net.go:185 +0x34 fp=0x40001a5dc0 sp=0x40001a5d70 pc=0x5549f4 net.(*TCPConn).Read(0xc1ba88?, {0x4000498000?, 0x0?, 0x4000492748?}) <autogenerated>:1 +0x2c fp=0x40001a5df0 sp=0x40001a5dc0 pc=0x56605c bufio.(*Reader).Read(0x4000402300, {0x40003b7950, 0x4, 0x4000492748?}) /usr/local/go/src/bufio/bufio.go:241 +0x1b4 fp=0x40001a5e30 sp=0x40001a5df0 pc=0x638af4 io.ReadAtLeast({0xc09580, 0x4000402300}, {0x40003b7950, 0x4, 0x8}, 0x4) /usr/local/go/src/io/io.go:335 +0xa0 fp=0x40001a5e80 sp=0x40001a5e30 pc=0x4d9a60 io.ReadFull(...) /usr/local/go/src/io/io.go:354 github.com/jfreymuth/pulse/proto.(*ProtocolReader).uint32(0x40003b7930) /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/reader.go:42 +0x3c fp=0x40001a5ec0 sp=0x40001a5e80 pc=0x7df0bc github.com/jfreymuth/pulse/proto.(*Client).readLoop(0x40003b7930) /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/client.go:123 +0x28 fp=0x40001a5fb0 sp=0x40001a5ec0 pc=0x7dcdd8 github.com/jfreymuth/pulse/proto.(*Client).Open.gowrap1() /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/client.go:55 +0x28 fp=0x40001a5fd0 sp=0x40001a5fb0 pc=0x7dc638 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001a5fd0 sp=0x40001a5fd0 pc=0x475214 created by github.com/jfreymuth/pulse/proto.(*Client).Open in goroutine 16 /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/proto/client.go:55 +0x228 goroutine 99 gp=0x40003b4700 m=nil [IO wait]: runtime.gopark(0x40001a7aa8?, 0x41c65c?, 0xd8?, 0x7a?, 0x9?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40001a7a60 sp=0x40001a7a40 pc=0x4418a8 runtime.netpollblock(0x0?, 0xffffffff?, 0xff?) /usr/local/go/src/runtime/netpoll.go:573 +0x158 fp=0x40001a7aa0 sp=0x40001a7a60 pc=0x43a8e8 internal/poll.runtime_pollWait(0x7f57859778, 0x72) /usr/local/go/src/runtime/netpoll.go:345 +0xa0 fp=0x40001a7ad0 sp=0x40001a7aa0 pc=0x46f990 internal/poll.(*pollDesc).wait(0x4000168580?, 0x4001d358ac?, 0x0) /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x28 fp=0x40001a7b00 sp=0x40001a7ad0 pc=0x4df5e8 internal/poll.(*pollDesc).waitRead(...) /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0x4000168580, {0x4001d358ac, 0x3, 0x3}) /usr/local/go/src/internal/poll/fd_unix.go:164 +0x200 fp=0x40001a7ba0 sp=0x40001a7b00 pc=0x4e0930 net.(*netFD).Read(0x4000168580, {0x4001d358ac?, 0x1000000?, 0x10d2560?}) /usr/local/go/src/net/fd_posix.go:55 +0x28 fp=0x40001a7bf0 sp=0x40001a7ba0 pc=0x545ff8 net.(*conn).Read(0x4000122048, {0x4001d358ac?, 0x40001a7c88?, 0x10d2560?}) /usr/local/go/src/net/net.go:185 +0x34 fp=0x40001a7c40 sp=0x40001a7bf0 pc=0x5549f4 net.(*TCPConn).Read(0x0?, {0x4001d358ac?, 0x40001a7cb8?, 0x7d7074?}) <autogenerated>:1 +0x2c fp=0x40001a7c70 sp=0x40001a7c40 pc=0x56605c io.ReadAtLeast({0xc09220, 0x4000122048}, {0x4001d358ac, 0x3, 0x3}, 0x3) /usr/local/go/src/io/io.go:335 +0xa0 fp=0x40001a7cc0 sp=0x40001a7c70 pc=0x4d9a60 io.ReadFull(...) /usr/local/go/src/io/io.go:354 github.com/devgianlu/go-librespot/ap.(*shannonConn).receivePacket(0x40000cb140, {0xc11378, 0x11387e0}) /go-librespot/ap/shannon.go:124 +0x334 fp=0x40001a7e10 sp=0x40001a7cc0 pc=0x7d7094 github.com/devgianlu/go-librespot/ap.(*Accesspoint).recvLoop(0x400045c000) /go-librespot/ap/ap.go:276 +0x60 fp=0x40001a7fb0 sp=0x40001a7e10 pc=0x7d3de0 github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1.gowrap1() /go-librespot/ap/ap.go:260 +0x28 fp=0x40001a7fd0 sp=0x40001a7fb0 pc=0x7d3d48 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40001a7fd0 sp=0x40001a7fd0 pc=0x475214 created by github.com/devgianlu/go-librespot/ap.(*Accesspoint).startReceiving.func1 in goroutine 66 /go-librespot/ap/ap.go:260 +0x88 goroutine 16 gp=0x40003b4c40 m=nil [chan receive, 2 minutes]: runtime.gopark(0x400048f380?, 0x40003ae400?, 0x0?, 0x4?, 0x400?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x400152ad30 sp=0x400152ad10 pc=0x4418a8 runtime.chanrecv(0x400003e2a0, 0x0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x400152adb0 sp=0x400152ad30 pc=0x40d234 runtime.chanrecv1(0x40003b7930?, 0xc0c640?) /usr/local/go/src/runtime/chan.go:442 +0x14 fp=0x400152ade0 sp=0x400152adb0 pc=0x40cdf4 github.com/jfreymuth/pulse.(*PlaybackStream).Start(0x400026e700) /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:196 +0x100 fp=0x400152ae20 sp=0x400152ade0 pc=0x7e4c30 github.com/devgianlu/go-librespot/output.(*pulseAudioOutput).Drop(0x400055c120) /go-librespot/output/driver-pulseaudio.go:169 +0xcc fp=0x400152ae70 sp=0x400152ae20 pc=0x7e828c github.com/devgianlu/go-librespot/player.(*Player).manageLoop(0x40005f0680) /go-librespot/player/player.go:240 +0x3ac fp=0x400152afb0 sp=0x400152ae70 pc=0x83d34c github.com/devgianlu/go-librespot/player.NewPlayer.gowrap1() /go-librespot/player/player.go:183 +0x28 fp=0x400152afd0 sp=0x400152afb0 pc=0x83cd88 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x400152afd0 sp=0x400152afd0 pc=0x475214 created by github.com/devgianlu/go-librespot/player.NewPlayer in goroutine 1 /go-librespot/player/player.go:183 +0x1ec goroutine 66 gp=0x40003b4e00 m=nil [chan receive, 2 minutes]: runtime.gopark(0x40000ee998?, 0x40c0c8?, 0x0?, 0x1?, 0x4000320720?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40000ee920 sp=0x40000ee900 pc=0x4418a8 runtime.chanrecv(0x40003246c0, 0x40000eec88, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x40000ee9a0 sp=0x40000ee920 pc=0x40d234 runtime.chanrecv1(0xa80a00?, 0x40000eed10?) /usr/local/go/src/runtime/chan.go:442 +0x14 fp=0x40000ee9d0 sp=0x40000ee9a0 pc=0x40cdf4 github.com/devgianlu/go-librespot/player.(*Player).SetPrimaryStream(...) /go-librespot/player/player.go:415 main.(*AppPlayer).loadCurrentTrack(0x40000aa000, {0xc11378, 0x11387e0}, 0x0, 0x1) /go-librespot/cmd/daemon/controls.go:293 +0x6dc fp=0x40000eedf0 sp=0x40000ee9d0 pc=0x948aac main.(*AppPlayer).handlePlayerCommand(_, {_, _}, {0x2411955a, {0x40000370b0, 0x28}, {{0x400049bdc0, 0x8}, {0x0, 0x0}, ...}}) /go-librespot/cmd/daemon/player.go:250 +0x17c8 fp=0x40000ef000 sp=0x40000eedf0 pc=0x951cc8 main.(*AppPlayer).handleDealerRequest(_, {_, _}, {0x400003e300, {0x4000036390, 0x24}, {0x2411955a, {0x40000370b0, 0x28}, {{0x400049bdc0, ...}, ...}}}) /go-librespot/cmd/daemon/player.go:368 +0x118 fp=0x40000ef250 sp=0x40000ef000 pc=0x9521a8 main.(*AppPlayer).Run(0x40000aa000, {0xc11378, 0x11387e0}, 0x400003f080) /go-librespot/cmd/daemon/player.go:596 +0x4e0 fp=0x40000effa0 sp=0x40000ef250 pc=0x953db0 main.(*App).withAppPlayer.func3.gowrap1() /go-librespot/cmd/daemon/main.go:358 +0x34 fp=0x40000effd0 sp=0x40000effa0 pc=0x94e0f4 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40000effd0 sp=0x40000effd0 pc=0x475214 created by main.(*App).withAppPlayer.func3 in goroutine 1 /go-librespot/cmd/daemon/main.go:358 +0x468 goroutine 101 gp=0x40001db500 m=nil [chan receive, 2 minutes]: runtime.gopark(0x40004c5b58?, 0x40c0c8?, 0x60?, 0xc?, 0x7f9e3206a8?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000247ae0 sp=0x4000247ac0 pc=0x4418a8 runtime.chanrecv(0x400003e300, 0x40004c5bd7, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000247b60 sp=0x4000247ae0 pc=0x40d234 runtime.chanrecv1(0x40000a2000?, 0x0?) /usr/local/go/src/runtime/chan.go:442 +0x14 fp=0x4000247b90 sp=0x4000247b60 pc=0x40cdf4 github.com/devgianlu/go-librespot/dealer.(*Dealer).handleRequest(0x400041e7e0, 0x4000490240) /go-librespot/dealer/recv.go:237 +0x234 fp=0x4000247e70 sp=0x4000247b90 pc=0x859eb4 github.com/devgianlu/go-librespot/dealer.(*Dealer).recvLoop(0x400041e7e0) /go-librespot/dealer/dealer.go:213 +0x3b4 fp=0x4000247fb0 sp=0x4000247e70 pc=0x858764 github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1.gowrap1() /go-librespot/dealer/dealer.go:125 +0x28 fp=0x4000247fd0 sp=0x4000247fb0 pc=0x857f38 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000247fd0 sp=0x4000247fd0 pc=0x475214 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1 in goroutine 66 /go-librespot/dealer/dealer.go:125 +0x88 goroutine 102 gp=0x40001db880 m=nil [select]: runtime.gopark(0x4000243f88?, 0x2?, 0x0?, 0x0?, 0x4000243f2c?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000243dd0 sp=0x4000243db0 pc=0x4418a8 runtime.selectgo(0x4000243f88, 0x4000243f28, 0x0?, 0x0, 0x40003cb960?, 0x1) /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x4000243ee0 sp=0x4000243dd0 pc=0x454294 github.com/devgianlu/go-librespot/dealer.(*Dealer).pingTicker(0x400041e7e0) /go-librespot/dealer/dealer.go:138 +0x74 fp=0x4000243fb0 sp=0x4000243ee0 pc=0x857fe4 github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1.gowrap2() /go-librespot/dealer/dealer.go:129 +0x28 fp=0x4000243fd0 sp=0x4000243fb0 pc=0x857ed8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000243fd0 sp=0x4000243fd0 pc=0x475214 created by github.com/devgianlu/go-librespot/dealer.(*Dealer).startReceiving.func1 in goroutine 66 /go-librespot/dealer/dealer.go:129 +0x108 goroutine 122 gp=0x40003e76c0 m=nil [select, 2 minutes]: runtime.gopark(0x4000070c38?, 0x3?, 0x38?, 0xa?, 0x4000070b3a?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40000709d0 sp=0x40000709b0 pc=0x4418a8 runtime.selectgo(0x4000070c38, 0x4000070b34, 0x0?, 0x0, 0x99cb60?, 0x1) /usr/local/go/src/runtime/select.go:327 +0x614 fp=0x4000070ae0 sp=0x40000709d0 pc=0x454294 github.com/devgianlu/go-librespot/audio.(*KeyProvider).recvLoop(0x400028dc00) /go-librespot/audio/provider.go:63 +0x114 fp=0x4000070fb0 sp=0x4000070ae0 pc=0x7dae14 github.com/devgianlu/go-librespot/audio.(*KeyProvider).startReceiving.func1.gowrap1() /go-librespot/audio/provider.go:53 +0x28 fp=0x4000070fd0 sp=0x4000070fb0 pc=0x7dacc8 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000070fd0 sp=0x4000070fd0 pc=0x475214 created by github.com/devgianlu/go-librespot/audio.(*KeyProvider).startReceiving.func1 in goroutine 66 /go-librespot/audio/provider.go:53 +0x60 goroutine 166 gp=0x4000536e00 m=nil [chan receive, 2 minutes]: runtime.gopark(0x40000be660?, 0x10d1860?, 0x28?, 0x1f?, 0x1000000005479b0?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x40005b1ea0 sp=0x40005b1e80 pc=0x4418a8 runtime.chanrecv(0x400055c240, 0x40005b1fb0, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x40005b1f20 sp=0x40005b1ea0 pc=0x40d234 runtime.chanrecv2(0x77?, 0x1?) /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x40005b1f50 sp=0x40005b1f20 pc=0x40ce14 github.com/devgianlu/go-librespot/output.newPulseAudioOutput.func1() /go-librespot/output/driver-pulseaudio.go:92 +0x48 fp=0x40005b1fd0 sp=0x40005b1f50 pc=0x7e7b68 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x40005b1fd0 sp=0x40005b1fd0 pc=0x475214 created by github.com/devgianlu/go-librespot/output.newPulseAudioOutput in goroutine 16 /go-librespot/output/driver-pulseaudio.go:91 +0x5f0 goroutine 153 gp=0x4000537a40 m=nil [chan receive]: runtime.gopark(0x40000bed20?, 0x400058c800?, 0xd8?, 0x8e?, 0x7e3f64?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000438e90 sp=0x4000438e70 pc=0x4418a8 runtime.chanrecv(0x400003e120, 0x4000438f90, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000438f10 sp=0x4000438e90 pc=0x40d234 runtime.chanrecv2(0x40003b7930?, 0x4000000000?) /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000438f40 sp=0x4000438f10 pc=0x40ce14 github.com/jfreymuth/pulse.(*PlaybackStream).run(0x400026e700) /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:97 +0x38 fp=0x4000438fb0 sp=0x4000438f40 pc=0x7e46f8 github.com/jfreymuth/pulse.(*Client).NewPlayback.gowrap2() /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:92 +0x28 fp=0x4000438fd0 sp=0x4000438fb0 pc=0x7e4628 runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000438fd0 sp=0x4000438fd0 pc=0x475214 created by github.com/jfreymuth/pulse.(*Client).NewPlayback in goroutine 16 /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:92 +0x508 goroutine 212 gp=0x4000537c00 m=nil [chan receive, 2 minutes]: runtime.gopark(0x4000075ef8?, 0x40d734?, 0x0?, 0x4?, 0x40000be660?) /usr/local/go/src/runtime/proc.go:402 +0xc8 fp=0x4000075e80 sp=0x4000075e60 pc=0x4418a8 runtime.chanrecv(0x40003245a0, 0x4000075f60, 0x1) /usr/local/go/src/runtime/chan.go:583 +0x404 fp=0x4000075f00 sp=0x4000075e80 pc=0x40d234 runtime.chanrecv2(0x0?, 0xc0c5e0?) /usr/local/go/src/runtime/chan.go:447 +0x14 fp=0x4000075f30 sp=0x4000075f00 pc=0x40ce14 github.com/jfreymuth/pulse.(*PlaybackStream).handleEvents(0x400026e700, 0x40003245a0) /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:130 +0x48 fp=0x4000075fb0 sp=0x4000075f30 pc=0x7e4968 github.com/jfreymuth/pulse.(*Client).NewPlayback.gowrap1() /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:77 +0x2c fp=0x4000075fd0 sp=0x4000075fb0 pc=0x7e468c runtime.goexit({}) /usr/local/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x4000075fd0 sp=0x4000075fd0 pc=0x475214 created by github.com/jfreymuth/pulse.(*Client).NewPlayback in goroutine 16 /go/pkg/mod/github.com/jfreymuth/pulse@v0.1.2-0.20241102120944-4ffb35054b53/playback.go:77 +0x28c r0 0xfffffffffffffffc r1 0x7fefb61e98 r2 0x80 r3 0xc79 r4 0x0 r5 0x0 r6 0xc79 r7 0x7fefb62688 r8 0x16 r9 0x1 r10 0x0 r11 0x4 r12 0x0 r13 0x1 r14 0xb r15 0xc r16 0x7fefb43bf0 r17 0x7fefb61ec0 r18 0xe0 r19 0xfffffffffffffffb r20 0x7fefb61e40 r21 0x10d2560 r22 0x1 r23 0x11392c8 r24 0x0 r25 0x4000053cc0 r26 0xb6d490 r27 0x109a000 r28 0x10d1f20 r29 0x7fefb61dc8 lr 0x408c78 sp 0x7fefb61dd0 pc 0x408d40 fault 0x0 ```
Author
Owner

@devgianlu commented on GitHub (Aug 14, 2025):

@JaragonCR I am unable to reproduce the issue. Could you try with the alsa backend?

<!-- gh-comment-id:3188793474 --> @devgianlu commented on GitHub (Aug 14, 2025): @JaragonCR I am unable to reproduce the issue. Could you try with the alsa backend?
Author
Owner

@JaragonCR commented on GitHub (Aug 14, 2025):

@devgianlu not with how iotsound is designed. I could try to add the alsa bridge to the container to emulate alsa but it would take a me a while.

<!-- gh-comment-id:3188909568 --> @JaragonCR commented on GitHub (Aug 14, 2025): @devgianlu not with how iotsound is designed. I could try to add the alsa bridge to the container to emulate alsa but it would take a me a while.
Author
Owner

@JaragonCR commented on GitHub (Aug 14, 2025):

@devgianlu cannot reproduce with ALSA, works perfectly, you are onto something.

Here's my Docker build, needs cleanup, don't judge , it works :P

FROM golang:1.22-alpine

RUN apk add --no-cache \
    git \
    build-base \
    pkgconf \
    alsa-lib-dev \
    libogg-dev \
    libvorbis-dev \
    libpulse \
    avahi \
    libgcc \
    gcompat \
    alsa-lib \
    curl


RUN git clone https://github.com/devgianlu/go-librespot.git /go-librespot

WORKDIR /go-librespot

RUN go mod download
RUN go build -v ./cmd/daemon
ENV PULSE_SERVER=tcp:localhost:4317
RUN curl -skL https://raw.githubusercontent.com/balena-io-experimental/audio/master/scripts/alsa-bridge/alpine-setup.sh | sh

COPY start.sh /usr/src/

CMD [ "/bin/sh", "/usr/src/start.sh" ]

and here's the config it started with

Generated config:
 librespot  log_level: info
 librespot  device_name: Pergola-test
 librespot  device_type: speaker
 librespot  bitrate: 320
 librespot  normalisation_disabled: true
 librespot  credentials:
 librespot    type: "zeroconf"
<!-- gh-comment-id:3189330987 --> @JaragonCR commented on GitHub (Aug 14, 2025): @devgianlu cannot reproduce with ALSA, works perfectly, you are onto something. Here's my Docker build, needs cleanup, don't judge , it works :P ``` FROM golang:1.22-alpine RUN apk add --no-cache \ git \ build-base \ pkgconf \ alsa-lib-dev \ libogg-dev \ libvorbis-dev \ libpulse \ avahi \ libgcc \ gcompat \ alsa-lib \ curl RUN git clone https://github.com/devgianlu/go-librespot.git /go-librespot WORKDIR /go-librespot RUN go mod download RUN go build -v ./cmd/daemon ENV PULSE_SERVER=tcp:localhost:4317 RUN curl -skL https://raw.githubusercontent.com/balena-io-experimental/audio/master/scripts/alsa-bridge/alpine-setup.sh | sh COPY start.sh /usr/src/ CMD [ "/bin/sh", "/usr/src/start.sh" ] ``` and here's the config it started with ``` Generated config: librespot log_level: info librespot device_name: Pergola-test librespot device_type: speaker librespot bitrate: 320 librespot normalisation_disabled: true librespot credentials: librespot type: "zeroconf" ```
Author
Owner

@JaragonCR commented on GitHub (Aug 20, 2025):

@devgianlu did you get a chance to go over the pulse implementation?

<!-- gh-comment-id:3206887209 --> @JaragonCR commented on GitHub (Aug 20, 2025): @devgianlu did you get a chance to go over the pulse implementation?
Author
Owner

@devgianlu commented on GitHub (Aug 20, 2025):

@devgianlu did you get a chance to go over the pulse implementation?

Please open another issue so that we can discuss thius further.

<!-- gh-comment-id:3207325182 --> @devgianlu commented on GitHub (Aug 20, 2025): > [@devgianlu](https://github.com/devgianlu) did you get a chance to go over the pulse implementation? Please open another issue so that we can discuss thius further.
Author
Owner

@devgianlu commented on GitHub (Aug 20, 2025):

I am going to close this issue because it has become a bit of catch all.

If you experience this problem again, please open a new issue providing a goroutine dump (see instructions above).

<!-- gh-comment-id:3207327014 --> @devgianlu commented on GitHub (Aug 20, 2025): I am going to close this issue because it has become a bit of catch all. If you experience this problem again, please open a new issue providing a goroutine dump (see instructions above).
Author
Owner

@neeohw commented on GitHub (Sep 12, 2025):

Just want to say that with all the latest work I haven't had this issue anymore. Thank you!

<!-- gh-comment-id:3285743137 --> @neeohw commented on GitHub (Sep 12, 2025): Just want to say that with all the latest work I haven't had this issue anymore. Thank you!
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/go-librespot#120
No description provided.