[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1172240430.30132.40.camel@localhost>
Date: Fri, 23 Feb 2007 15:20:29 +0100
From: Martin Schwidefsky <schwidefsky@...ibm.com>
To: Ingo Molnar <mingo@...e.hu>
Cc: Heiko Carstens <heiko.carstens@...ibm.com>,
linux-kernel@...r.kernel.org, Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [patch] s390: do not use _local_bh_enable()
On Fri, 2007-02-23 at 15:04 +0100, Ingo Molnar wrote:
> > [...] cio_tpi and sclp_sync_wait are used to wait for the interrupt of
> > the console device to make room in the buffer for a printk out of
> > disabled context.
>
> ouch. So you want/need to wait for a specific type of interrupt, in a
> section of code that has all interrupts disabled? Is this the only form
> of communication to the hypervisor, for this particular purpose? It
> seems to me that polling a bit in a buffer shared between the hypervisor
> and the guest OS [combined with cpu_relax()] would fit this scenario
> alot better (and wouldnt cause any such gymnastics to avoid regular
> Linux irq processing) than waiting for an interrupt to be injected by
> the hypervisor. Or is this interrupt-based interface an ABI property and
> the only way to do it?
This has nothing to do with the hypervisor. Even on bare metal (that
machine mode exists up to G7, newer machine always run a hypervisor) you
have to deal with your console device. If this is a 3270 green-screen
you have to do asynchronous i/o. To wait for some room in the console
buffer translates to waiting for the interrupt of a ccw device. The
memory of the machine is unchanged until the interrupt is received.
So yes, ouch!
--
blue skies, IBM Deutschland Entwicklung GmbH
Martin Vorsitzender des Aufsichtsrats: Johann Weihen
Geschäftsführung: Herbert Kircher
Martin Schwidefsky Sitz der Gesellschaft: Böblingen
Linux on zSeries Registergericht: Amtsgericht Stuttgart,
Development HRB 243294
"Reality continues to ruin my life." - Calvin.
-
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