On 4/20/07, pradeep singh <2500.pradeep@xxxxxxxxx> wrote:
On 4/20/07, Christian Boon <c.boon@xxxxxxxxxxxxxxxxxxxx> wrote: > Hello, > > i've got a question about local_irq_save() > > When i use this function to disable interrupts, does this mean that when > an interrupt occurs > when interrupts are disabled, for example from the ethernet chip, this > interrupt is lost or does it mean > that the interrupt isnt serviced at the moment but serviced when > interrupts are enabled again? the interrupt is lost, if it maskable and not unmaskable interrupts IMHO.Because local_irq_save() macro inturn makes use of cli assembly instruction. Somebody please CMIIW.
Please include only on the cpu on whom you called local_irq_save(). This means if you have a multiprocessor system, your critical section can be accessed and modified by some other CPU. Thanks ~psr
> > i've got 2 interrupts in my driver which both need to write data in the > same buffer so when i keep > interrupts enabled, then i get bad behaviour. Is the buffer too large.Try writing from different ends on the same buffer for each interrupts.Does this helps anyway? HTH ~psr > > Is there a way to lock a buffer from two interrupt service routines > without disabling interrupts? > > thanks in advance, > > Chris. > > > > > > -- > To unsubscribe from this list: send an email with > "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx > Please read the FAQ at http://kernelnewbies.org/FAQ > > -- play the game
-- play the game -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ