Re: mmotm 2010-10-20-15-01 uploaded

From: Andrew Morton
Date: Thu Oct 21 2010 - 03:30:30 EST


On Thu, 21 Oct 2010 09:17:26 +0200 Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> wrote:

> > It would have been clearer to do
> >
> > WARN_ON_ONCE(vaddr != __fix_to_virt(FIX_KMAP_BEGIN + idx))
> >
> > but I don't see what's gone wrong here. Peter?
>
> Right, so that's the warning that the unmapped address isn't actually
> the top-of-stack one.
>
> Your version is much nicer, although I haven't looked too hard at it, I
> probably got my head in a twist.
>
> But like you, I cannot directly see what's going wrong here,
> zero_user_segments() seems a simple enough function without any
> kmap_atomic nesting, so I'm not at all seeing how that's going wrong.
>
> /me goes find where you hide your mmotm patch-queue and stare at the
> actual code.

hm, OK. The x86 guys have been mucking with the fixmap code lately but
I don't see anything which could cause this.

btw, it's a bit sad to use KM_TYPE_NR*NR_CPUS pages of virtual address
space for kmap_atomic(). I'd expect that distros set NR_CPUS quite
large (Fedora has 256). That's 20MB of virtual address space consumed,
I think.

And we consume it on non-highmem kernels, too...
--
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/