Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Problem with unregister_ata_idle_func and one-shot events

Problem with unregister_ata_idle_func and one-shot events

From: Bertrik Sikken <bertrik_at_sikken.nl>
Date: Wed, 28 May 2008 19:33:46 +0200

Hi all,

I think there's a problem with the unregister_ata_idle_func function,
which is probably responsible for "event xxx not found" panics, like
the one in http://www.rockbox.org/tracker/task/8993

The problem is that ata_idle events are registered as one-shot events
which clear themselves once they've fired. A subsequent call to
unregister_ata_idle_func may fail the find the event (because it
cleared itself) and cause the panic.

Completely removing unregister_ata_idle_func is an option but may be
a bit too drastic. I can also see a potential problem if a plugin
registers an ata_idle callback and then gets unloaded leaving a
stray function pointer. An example of a plugin that could use the
ata_idle callback is the battery bench plugin.
Maybe the simplest way is just to remove the panic.

What do you think?

Kind regards,
Bertrik
Received on 2008-05-28


Page was last modified "Jan 10 2012" The Rockbox Crew
aaa