virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Virtualization Mailing List <virtualization@lists.osdl.org>,
	Xen-devel <xen-devel@lists.xensource.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] xen: use iret directly where possible
Date: Mon, 4 Jun 2007 21:45:29 +0200	[thread overview]
Message-ID: <200706042145.30339.ak@suse.de> (raw)
In-Reply-To: <46646662.9020707@goop.org>



Not sure what a recursive exception is. You mean the interrupt?

It looks ...very... ug^w^wcomplicated.

>  - If the interrupt causes a softirq to be queued, we will return to
>    userspace without processing it, since its already after the point at
>    which we look for queued softirqs.  This means it could be an
>    unbounded amount of time before it gets processed on next kernel
>    entry.

That doesn't make sense. softirqs get processed after interrupts,
not on return to user space. So the nested interrupt should handle
its own softirqs because the softirq counters are already decreased.

>  - If the interrupt causes a signal to be delivered to the current process,
>    the signal will be marked pending on the process, but it will not
>    get delivered because we're past the point where pending signals
>    are detected.  Again, it could be an unbounded amount of time
>    before the signal gets delivered.

It's still not clear to me why you can't do cli ; check again ; iret-equivalent
to handle this.
 
>  - The recursion is, in theory, unbounded.  There's a small chance that
>    a series of unfortunate events will cause the exception frames to
>    build up and overrun the stack.  But that's very unlikely.

Doesn't seem to be different to me than a normal interrupt anywhere
else. If you're worried about overflow use interrupt stacks.

-Andi

  reply	other threads:[~2007-06-04 19:45 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-04 19:22 [PATCH] xen: use iret directly where possible Jeremy Fitzhardinge
2007-06-04 19:45 ` Andi Kleen [this message]
2007-06-04 20:33   ` Jeremy Fitzhardinge
2007-06-04 21:05     ` Andi Kleen
2007-06-04 21:28       ` Jeremy Fitzhardinge
2007-06-04 21:46         ` [Xen-devel] " Andi Kleen
2007-06-04 22:08           ` Jeremy Fitzhardinge

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=200706042145.30339.ak@suse.de \
    --to=ak@suse.de \
    --cc=akpm@linux-foundation.org \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=virtualization@lists.osdl.org \
    --cc=xen-devel@lists.xensource.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).