Re: [x86, vdso] BUG: unable to handle kernel paging request at d34bd000

From: Linus Torvalds
Date: Mon Mar 10 2014 - 16:19:26 EST


On Mon, Mar 10, 2014 at 1:06 PM, H. Peter Anvin <hpa@xxxxxxxxxxxxxxx> wrote:
>
> The quick way to get something working is simply to reserve more than
> one page (two should presumably be enough) in the fixmap and adjust the
> link address of the VDSO accordingly. This is not where we want to go
> in the long term, but it doesn't seem to make sense to try to do
> everything all at once -- we are already starting to push way too close
> to the 3.15 merge window.

If the only immediate problem is the code generation size, then Andy
already had a (simpler) hack-around:

#undef CONFIG_OPTIMIZE_INLINING
#undef CONFIG_X86_PPRO_FENCE

in vclock_gettime.c.

I think we could make it a bit less hacky by just restricting the
inlining of the paravirt case, since that's presumably the crap code
that causes things to grow too large. Or find out what in there it is
that explodes in size, and just try to de-crapify the code enough that
it no longer does that.

Or is there something else going on too?

Linus
--
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/