[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <46C3312D.40106@redhat.com>
Date: Wed, 15 Aug 2007 14:00:29 -0300
From: Glauber de Oliveira Costa <gcosta@...hat.com>
To: Chris Wright <chrisw@...s-sol.org>
CC: Andi Kleen <ak@...e.de>,
Glauber de Oliveira Costa <glommer@...il.com>,
linux-kernel@...r.kernel.org, akpm@...ux-foundation.org,
rusty@...tcorp.com.au, mingo@...e.hu, jeremy@...p.org,
avi@...ranet.com, anthony@...emonkey.ws,
virtualization@...ts.linux-foundation.org, lguest@...abs.org,
Steven Rostedt <rostedt@...dmis.org>, kiran@...lemp.com,
shai@...lemp.com
Subject: Re: [PATCH 3/25][V3] irq_flags / halt routines
Chris Wright escreveu:
> * Glauber de Oliveira Costa (gcosta@...hat.com) wrote:
>> As alternatives what we have now, we can either keep the paravirt_ops as
>> it is now for the native case, just hooking the vsmp functions in place
>> of the normal one, (there are just three ops anyway), refill the
>> paravirt_ops entirely in somewhere like vsmp.c, or similar (or maybe
>> even assigning paravirt_ops.fn = vsmp_fn on the fly, but early enough).
It will definitely keep the code shorter, and to be honest, I'd feel
more confortable with (since I don't know the subtles of the architecture).
Only caveat, is that it has to be done before smp gets in the game, and
with interrupts disabled. (which makes the function in vsmp.c not eligible).
My current option is to force VSMP to use PARAVIRT, as said before, and
then fill paravirt_arch_setup, which is currently unused, with code to
replace the needed paravirt_ops.fn.
I don't know if there is any method to dynamically determine (at this
point) that we are in a vsmp arch, and if there are not, it will have to
get ifdefs anyway. But at least, they are far more local.
> This is the best (just override pvops.fn for the few needed for VSMP).
> The irq_disabled_flags() is the only problem. For i386 we dropped it
> (disabled_flags) as a pvop and forced the backend to provide a flags
> (via save_flags) that conforms to IF only.
I am okay with both, but after all the explanation, I don't think that
adding a new pvops is a bad idea. It would make things less cumbersome
in this case. Also, hacks like this save_fl may require changes to the
hypervisor, right? I don't even know where such hypervisor is, and how
easy it is to replace it (it may be deeply hidden in firmware)
A question raises here: Would vsmp turn paravirt_enabled to 1 ?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists