Messages queues must be guarded on both ends or else it's a race between detecting...
commitd469b6cf723428ba2d7416029e1e0407e78e4baa
authorjethead71 <jethead71@a1c6a512-1295-4272-9138-f99709370657>
Sat, 12 May 2007 05:20:04 +0000 (12 05:20 +0000)
committerjethead71 <jethead71@a1c6a512-1295-4272-9138-f99709370657>
Sat, 12 May 2007 05:20:04 +0000 (12 05:20 +0000)
tree9f94a2918b075f6dedbcb21f06e83aea2c24ec8b
parent1724426f2fdd5bb16a2806b080a668448c5a7941
Messages queues must be guarded on both ends or else it's a race between detecting a message present and missing a wakeup on thread about to wait. Keeping IRQs from interacting with the scheduler would be preferable but this should do at the moment. Add more detailed panic info regarding blocking violations so we know who. Make panicf function well enough on Gigabeat and PortalPlayer targets. Move the core sleep instructions into a CPU-specific inline to keep thing organized.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13374 a1c6a512-1295-4272-9138-f99709370657
firmware/export/system.h
firmware/export/thread.h
firmware/kernel.c
firmware/panic.c
firmware/thread.c