Re: Linux-2.6.12

From: Hugh Dickins
Date: Mon Jun 20 2005 - 08:48:31 EST

Gosh, I thought from the Subject that you'd taken over from Linus,
and were announcing your new release ;)

On Mon, 20 Jun 2005, Richard B. Johnson wrote:
> Attempts to run a driver that worked up to shows that
> it aparently is no longer possible to nest calls to `down`.
> In other words, a procedure that has taken a semaphore can't
> then take another semaphore.
> down(&first_resource);
> down(&second_resource);
> ...
> ...
> up(&second_resource);
> up(&first_resource);
> The error is 'sleeping function called from invalid context....'
> ------------[ cut here ]------------
> kernel BUG at mm/memory.c:1112!

No, the error is "kernel BUG at mm/memory.c:1112!", which occurs while
it's holding page table lock, from which it doesn't recover very well.

It's the BUG_ON(!pte_none(*pte)) in remap_pte_range. Maybe your page
table is corrupt, maybe your driver is trying to remap_pfn_range on
top of something already mapped.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at