[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4701E418.7010603@goop.org>
Date: Mon, 01 Oct 2007 23:24:24 -0700
From: Jeremy Fitzhardinge <jeremy@...p.org>
To: Avi Kivity <avi@...ranet.com>
CC: Virtualization Mailing List <virtualization@...ts.osdl.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Andi Kleen <ak@...e.de>, Zachary Amsden <zach@...are.com>,
Rusty Russell <rusty@...tcorp.com.au>,
Anthony Liguori <anthony@...emonkey.ws>,
Glauber de Oliveira Costa <glommer@...il.com>,
"Nakajima, Jun" <jun.nakajima@...el.com>
Subject: Re: [PATCH RFC] paravirt: cleanup lazy mode handling
Avi Kivity wrote:
> The code doesn't support having both lazy modes active at once. Maybe
> that's not an issue, but aren't the two modes orthogonal?
Hm, well, that's a good question. The initial semantics of the lazy
mode calls were "what VMI wants", and they're still not really nailed
down. VMI doesn't support having both active at once, and its a little
unclear what it would mean anyway. For now, we don't support multiple
lazy modes active at once, and the kernel never tries to do it (in fact,
it would be a bug, since lazy mmu must be preempt disabled, and lazy cpu
is only used for context switches).
>
>> --- a/arch/i386/xen/multicalls.h
>> +++ b/arch/i386/xen/multicalls.h
>> @@ -35,7 +35,7 @@ void xen_mc_flush(void);
>> /* Issue a multicall if we're not in a lazy mode */
>> static inline void xen_mc_issue(unsigned mode)
>> {
>> - if ((xen_get_lazy_mode() & mode) == 0)
>> + if ((paravirt_get_lazy_mode() & mode) == 0)
>> xen_mc_flush();
>
> This snippet looks like it wants to support concurrently active lazy
> modes.
Yeah, its a little more general than it needs to be.
J
-
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