Rockbox

  • Status Closed
  • Percent Complete
    100%
  • Task Type Bugs
  • Category Applications
  • Assigned To No-one
  • Operating System All players
  • Severity Critical
  • Priority Medium
  • Reported Version Daily build (which?)
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by amachronic - 2023-01-09
Last edited by amachronic - 2023-01-18

FS#13386 - Crash when playing any file on Sansa Clip+

Attempting to play back any file on the Clip+ triggers a “prefetch abort” panic. Reported by wsa, see https://gerrit.rockbox.org/r/c/rockbox/+/4915 and https://www.rockbox.org/irc/log-20230106#14:57:11.

Reverting g#4915 fixes the issue. After further investigation, removing the →configure() loop in dsp_init() caused the bug, and restoring the loop or replacing it with mdelay(1) makes things work again. See https://www.rockbox.org/irc/log-20230109#15:53:03, https://gerrit.rockbox.org/r/c/rockbox/+/5027.

It looks like real problem here is a race condition of some sort, but it’s not obvious where it’s coming from or why the delay in dsp_init() suppresses it.

Closed by  amachronic
2023-01-18 17:48
Reason for closing:  Not a Bug

Tested moving dsp_init() earlier in the boot, before i2c_init() - https://gerrit.rockbox.org/r/c/rockbox/+/5037. Didn't fix the problem. I don't think any threads are running by that time, so I guess that rules out the idea that it's a race condition?

Admin

I removed g#5035 and try as I might I cannot repro that crash on the Clip+
I tried again mp3 flac opus ape wav wma m4a opa ogg.. etc, i tried internal and sd boot, start screen:resume pb, all the dsp settings enabled and Its Rock Solid (TM)

https://gerrit.rockbox.org/r/c/rockbox/+/5035 : rbcodec/dsp: restore configure loop in dsp_init() (FS#13386)

I don't know if its hardware differences I know there were several hw revisions through the Clip+ lifetime I couldn't tell you what changed between them besides screen types but i know the processor has several revisions as well

Solved - https://gerrit.rockbox.org/r/c/rockbox/+/5074

It was a case of human error plus our crappy ABI versioning scheme - removing DSP_INIT broke the codec ABI and this caused old codecs to crash. And updated codecs weren't getting installed due to a nonstandard installation method involving "make bininstall"…

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing