From: Martin Schwidefsky <schwidefsky@de.ibm.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>,
linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [patch] s390: do not use _local_bh_enable()
Date: Fri, 23 Feb 2007 15:20:29 +0100 [thread overview]
Message-ID: <1172240430.30132.40.camel@localhost> (raw)
In-Reply-To: <20070223140443.GA23754@elte.hu>
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.
prev parent reply other threads:[~2007-02-23 14:20 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-23 6:14 [patch] s390: do not use _local_bh_enable() Ingo Molnar
2007-02-23 9:36 ` Heiko Carstens
2007-02-23 13:41 ` Martin Schwidefsky
2007-02-23 14:04 ` Ingo Molnar
2007-02-23 14:20 ` Martin Schwidefsky [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1172240430.30132.40.camel@localhost \
--to=schwidefsky@de.ibm.com \
--cc=heiko.carstens@de.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.