Re: [PATCH 1/7] introduce atomic_dec_and_lock_irqsave()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Wed, 30 Aug 2006, Dipankar Sarma wrote:

> > > uidhash_lock can be taken from irq context. For example, delayed_put_task_struct()
> > > does __put_task_struct()->free_uid().
> > 
> > AFAICT it's called via rcu, does that mean anything released via rcu has 
> > to be protected against interrupts?
> 
> No. You need protection only if you have are using some 
> data that can also be used by the RCU callback. For example,
> if your RCU callback just calls kfree(), you don't have to 
> do a spin_lock_bh().

In this case kfree() does its own interrupt synchronization. I didn't 
realize before that rcu had this (IMO serious) limitation. I think there 
should be two call_rcu() variants, one that queues the callback in a soft 
irq and a second which queues it in a thread context.

bye, Roman
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux