Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-28 Thread Hugh Dickins
On Sun, 25 Feb 2007, Oleg Nesterov wrote: > page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with > PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is > theoretically possible that slab returns anon_vma's memory to the system > before we do

Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-28 Thread Hugh Dickins
On Sun, 25 Feb 2007, Oleg Nesterov wrote: page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is theoretically possible that slab returns anon_vma's memory to the system before we do

Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-27 Thread Paul E. McKenney
On Tue, Feb 27, 2007 at 12:25:17PM -0800, Andrew Morton wrote: > > On Sun, 25 Feb 2007 23:06:21 +0300 Oleg Nesterov <[EMAIL PROTECTED]> wrote: > > page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with > > PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is

Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-27 Thread Oleg Nesterov
On 02/27, Andrew Morton wrote: > > > On Sun, 25 Feb 2007 23:06:21 +0300 Oleg Nesterov <[EMAIL PROTECTED]> wrote: > > page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with > > PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is > > theoretically possible

Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-27 Thread Andrew Morton
> On Sun, 25 Feb 2007 23:06:21 +0300 Oleg Nesterov <[EMAIL PROTECTED]> wrote: > page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with > PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is > theoretically possible that slab returns anon_vma's memory to the

Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-27 Thread Andrew Morton
On Sun, 25 Feb 2007 23:06:21 +0300 Oleg Nesterov [EMAIL PROTECTED] wrote: page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is theoretically possible that slab returns anon_vma's memory to the system

Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-27 Thread Oleg Nesterov
On 02/27, Andrew Morton wrote: On Sun, 25 Feb 2007 23:06:21 +0300 Oleg Nesterov [EMAIL PROTECTED] wrote: page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is theoretically possible that slab

Re: [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-27 Thread Paul E. McKenney
On Tue, Feb 27, 2007 at 12:25:17PM -0800, Andrew Morton wrote: On Sun, 25 Feb 2007 23:06:21 +0300 Oleg Nesterov [EMAIL PROTECTED] wrote: page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is

[PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-25 Thread Oleg Nesterov
page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is theoretically possible that slab returns anon_vma's memory to the system before we do spin_unlock(_vma->lock). Signed-off-by: Oleg Nesterov <[EMAIL

[PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU

2007-02-25 Thread Oleg Nesterov
page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is theoretically possible that slab returns anon_vma's memory to the system before we do spin_unlock(anon_vma-lock). Signed-off-by: Oleg Nesterov [EMAIL