Thread (4 messages) 4 messages, 3 authors, 2002-08-17

Re: aic7xxx dump_card_state not reentrant?

From: Justin T. Gibbs <hidden>
Date: 2002-08-17 19:54:24

I'm trying to get suspend and resume working for a 2.4 kernel with
scsi devices, and I'm running into trouble saving and restoring the
card state.  One thing that I've discovered in the process of looking
into this is that the ahc_dump_card_state routine is called at both
process level and interrupt level.  If I read it correctly, it alters
the card state while dumping the list of SCBs.  If a sequencer
interrupt occurs in the meantime, bad stuff happens.  Doesn't it?
Well, I'm seeing panics in which ahc_dump_card_state is running in
both contexts "simultaneously."
You must hold the ahc_lock() before calling most routines in the driver.
It is tha ahc_lock() that protects against reentrancy.

--
Justin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help