xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: "Jan Beulich" <JBeulich@novell.com>
To: Keir Fraser <keir.xen@gmail.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: [xen-unstable test] 6947: regressions - trouble: broken/fail/pass
Date: Mon, 02 May 2011 13:29:59 +0100	[thread overview]
Message-ID: <4DBEBFE7020000780003F29F@vpn.id2.novell.com> (raw)
In-Reply-To: <C9E45FF1.17156%keir.xen@gmail.com>

>>> On 02.05.11 at 14:19, Keir Fraser <keir.xen@gmail.com> wrote:
> On 02/05/2011 13:00, "Jan Beulich" <JBeulich@novell.com> wrote:
> 
>>> (3) Restructure the interrupt code to do less work in IRQ context. For
>>> example tasklet-per-irq, and schedule on the local cpu. Protect a bunch of
>>> the PIRQ structures with a non-IRQ lock. Would increase interrupt latency if
>>> the local CPU is interrupted in hypervisor context. I'm not sure about this
>>> one -- I'm not that happy about the amount of work now done in hardirq
>>> context, but I'm not sure on the performance impact of deferring the work.
>> 
>> I'm not inclined to make changes in this area for the purpose at hand
>> either (again, Linux gets away without this - would have to check how
>> e.g. KVM gets the TLB flushing done, or whether they don't defer
>> flushes like we do).
> 
> Oh, another way would be to make lookup_slot invocations from IRQ context be
> RCU-safe. Then the radix tree updates would not have to synchronise on the
> irq_desc lock? And I believe Linux has examples of RCU-safe usage of radix

I'm not sure - the patch doesn't introduce the locking (i.e. the
translation arrays used without the patch also get updated under
lock). I'm also not certain about slot recycling aspects (i.e. what
would the result be if freeing slots got deferred via RCU, but the
same slot is then needed to be used again before the grace period
expires). Quite possibly this consideration is mute, just resulting
from my only half-baked understanding of RCU...

Jan

> trees -- certainly Linux's radix-tree.h mentions RCU.
> 
> I must say this would be far more attractive to me than hacking the xmalloc
> subsystem. That's pretty nasty.
> 
>  -- Keir

  reply	other threads:[~2011-05-02 12:29 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-01 19:56 [xen-unstable test] 6947: regressions - trouble: broken/fail/pass xen.org
2011-05-01 20:48 ` Keir Fraser
2011-05-02  9:01   ` Jan Beulich
2011-05-02 11:22     ` Keir Fraser
2011-05-02 12:00       ` Jan Beulich
2011-05-02 12:13         ` Keir Fraser
2011-05-02 12:24           ` Jan Beulich
2011-05-02 12:19         ` Keir Fraser
2011-05-02 12:29           ` Jan Beulich [this message]
2011-05-02 13:14             ` Keir Fraser
2011-05-02 13:39               ` Keir Fraser
2011-05-02 14:04               ` Jan Beulich
2011-05-02 15:45                 ` Keir Fraser
2011-05-02 16:36                   ` Dan Magenheimer
2011-05-02 17:07                     ` Keir Fraser
2011-05-03  9:35           ` Jan Beulich
2011-05-03 10:09             ` Keir Fraser
2011-05-03 13:36               ` Jan Beulich
2011-05-03 14:09                 ` Keir Fraser

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=4DBEBFE7020000780003F29F@vpn.id2.novell.com \
    --to=jbeulich@novell.com \
    --cc=keir.xen@gmail.com \
    --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).