riscom8: replace cli()/sti()
Quoted 15 lines · Domen Puncer
Quoted 2 lines · On 15/12/04 23:45 -0600, [email protected] wrote:
This is an attempt to get the riscom8 driver working on SMP. I think I did it properly (per what
Documentation/cli-sti-removal.txtdetails).
rc_interruptalso needs to protect data with locks (on UP it was ok, because interrupts were disabled).Around line 1130 there are two
msleep_interruptiblecalls under lock (this was wrong before too).Some functions don't need to save flags, because you know they are never called from interrupt (all from
riscom_ops?).
Quoted 7 lines
IMHO it would be nice to notice somewhere what is protected by lock (
rc_boardandrc_portstructures); and it would probably be better to have a lock per board inriscom_boardstruct.Domen
I had thought the same re putting the spinlock in the per-board structure (after submitting all of these - of course) - and got a lot of other pointers on how to make things SMP-correct. Go ahead and disregard this set of patches - I'll have to take a more careful look at each one of them.
I thought I had seen some sleep-while-locked problems, but thought I was just reading it wrong.
_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors