Re: [patch] paravirt: VDSO page is essential
From: Zachary Amsden
Date: Mon Mar 05 2007 - 15:11:56 EST
Andi Kleen wrote:
But this still means I would need to decide between a PARAVIRT
kernel that either supports xen/VMI or cannot boot old user land without
weird options. I don't think that's the correct solution. The goal
is a single binary that runs everywhere and is still compatible.
Rusty's patch looks a step in the right direction to me. I can't
comment on Ingo's patch as he failed to -cc me on it, despite the fact
that we are the only ones affected by it. We are not concerned so much
with supporting legacy user land deployments, as we expect for the most
part, the install scenario to happen when upgrading to new distros.
What would probably work is to somehow decide at runtime if a hypervisor
is there or not and then set vdso default based on that. I guess that
detection would be hypervisor specific though and probably would
need paravirt ops extensions.
What we really need to do is to be able to detect an old user land and
drop VDSO support when that is found. But since we can't do that, the
next best thing is to allow the hypervisor to choose whatever workaround
it wants when it moves the fixmap and compat_vdso was enabled. In our
case, the workaround we will want is a boot option to disable VDSO for
old user land, and a printk warning if you take #GPs and kill the init
proc, because for us, this is not an expected support scenario. We
would much rather support the VDSO by default in paravirt kernels even
with COMPAT_VDSO turned on.
Zach
-
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/