Re: [PATCH] xen: use spin_lock_nest_lock when pinning a pagetable

From: Ingo Molnar
Date: Thu Oct 09 2008 - 08:26:34 EST



* Jeremy Fitzhardinge <jeremy@xxxxxxxx> wrote:

> When pinning/unpinning a pagetable with split pte locks, we can end up
> holding multiple pte locks at once (we need to hold the locks while
> there's a pending batched hypercall affecting the pte page). Because
> all the pte locks are in the same lock class, lockdep thinks that
> we're potentially taking a lock recursively.
>
> This warning is spurious because we always take the pte locks while
> holding mm->page_table_lock. lockdep now has spin_lock_nest_lock to
> express this kind of dominant lock use, so use it here so that lockdep
> knows what's going on.
>
> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>
> ---
> arch/x86/xen/mmu.c | 74 +++++++++++++++++++++++++++++++++-------------------
> arch/x86/xen/mmu.h | 3 --
> 2 files changed, 48 insertions(+), 29 deletions(-)

applied to tip/x86/xen, thanks Jeremy!

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/