1. Reentrant timers/interrupt handlers (HELP!)
I am in the process of writing a parallel file system for linux clusters
and have run into a problem that I don't seem to be able to figure out.
The file system is integrated into VFS just like a regular file system.
However, on each node in the cluster, there is a kernel daemon that
handles requests from other nodes in the cluster to read/write/open
My problem is this, basically I have a timer set up that polls a port
every so often and executes a handler if a request as been issued from a
remote node (This could very easily just be an interrupt handler, but
I'm using custom network hardware and the interrupts don't work.), so
essentially it's an interrupt handler, but not one that preempts the
Anyway, the problem is that in order to read/write any of the buffer
blocks in the VFS buffer cache the interrupt handler needs access to the
buffer cache locks. But the buffers may be locked by some non-interrupt
code. In other words, the interrupt handler may have to wait on a lock
and may need to go to sleep.
So....how do I put the interrupt handler to sleep until the buffer is
unlocked? It's not the same as simply putting a user process to sleep
because this handler is acting independent of any particular user
process on the machine. The interrupt handler itself has to be put to
sleep and woken up again at it's previous point of execution, not just
simply being called again. Sleep() doesn't work since interrupt handlers
are not supposed to go to sleep. I get the standard "Aieeee..........."
message when I do that.
Right now the file system works by ignoring the locks (Arghhh!!!). But
I've got to solve this problem.
Any help would be greatly appreciated,
2. Connexion : PC to SUN SOLARIS 2.5 by modem
3. lost timer interrupts when doing audio CD burn/extract
4. redhat 6.2 on 486 laptop, video help needed
5. Timer interrupt cleanups [2/3] - local timer
6. Color Scanner
7. Timer interrupt cleanups [1/3] - global timer
8. Need guidance in Software Configuration Management (SCM(
9. Ethernet interrupts getting processed as timer interrupts
10. Handlers, Handlers, Handlers
11. timer handler for audio input
12. timer and signal handlers
13. timer handler for audio input