From: Jan Kiszka <jan.kiszka@web.de>
To: Abel Gordon <ABELG@il.ibm.com>
Cc: Alex Landau <LALEX@il.ibm.com>,
Dan Tsafrir <dan.tsafrir@gmail.com>,
sheng qiu <herbert1984106@gmail.com>, kvm <kvm@vger.kernel.org>,
Muli Ben-Yehuda <muli@cs.technion.ac.il>,
Nadav Har'El <NYH@il.ibm.com>, Nadav Amit <nadav.amit@gmail.com>
Subject: Re: KVM handling external interrupts
Date: Thu, 07 Jun 2012 17:05:55 +0200 [thread overview]
Message-ID: <4FD0C353.7030707@web.de> (raw)
In-Reply-To: <OF463A087A.37491A92-ONC2257A16.00438537-C2257A16.00444299@il.ibm.com>
[-- Attachment #1: Type: text/plain, Size: 1450 bytes --]
On 2012-06-07 14:25, Abel Gordon wrote:
> Jan Kiszka <jan.kiszka@web.de> wrote on 07/06/2012 15:11:24:
>
>>> Am I missing something ? In your case, I assume, [virtual = logical]
> and
>>> [linear = linear]
>>> or you are using some different semantics ?
>> No, you are right, the descriptor tables run through paging as well.
>
> Txs. Now that you understand your mistake, the discussion will be simpler.
>
> > But how do you ensure that the shadow IDT is mapped where you expect it?
>
> First, I assume, you will agree with us that using the e820 as you
> suggested doesn't help because we need mapped memory.
>
> How ? As we described in the paper, we use the PCI BAR to obtain mapped
> memory.
> Where ? Doesn't matter. We know the GPA of the BAR and just do a reverse
> translation to obtain the GVA.
It remains a fragile approach:
- host-side reverse translations may not return a stable result, thus
may require to redo this step several times
- the guest may decide to remove/disable the device you chose for
appending the IDT
- changing the real BAR size can confuse the guest, or it only maps
what it requires of the real device
That's why I consider it nasty.
I'm wondering if redirecting (to different cores) or masking (at
device/IOAPIC/LAPIC level) of non-guest interrupts and only relying on
preemption timer/NMI isn't simpler. Then you wouldn't have to shadow the
IDT.
Jan
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 262 bytes --]
next prev parent reply other threads:[~2012-06-07 15:06 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-07 0:12 KVM handling external interrupts sheng qiu
2012-06-07 7:51 ` Abel Gordon
2012-06-07 8:13 ` Jan Kiszka
2012-06-07 9:02 ` Jan Kiszka
2012-06-07 10:47 ` Abel Gordon
2012-06-07 10:51 ` Jan Kiszka
2012-06-07 11:05 ` Abel Gordon
2012-06-07 11:13 ` Jan Kiszka
2012-06-07 11:51 ` Abel Gordon
2012-06-07 11:54 ` Jan Kiszka
2012-06-07 12:02 ` Abel Gordon
2012-06-07 11:10 ` Jan Kiszka
2012-06-07 11:49 ` Abel Gordon
2012-06-07 12:11 ` Jan Kiszka
2012-06-07 12:25 ` Abel Gordon
2012-06-07 15:05 ` Jan Kiszka [this message]
2012-06-10 8:41 ` Abel Gordon
2012-06-10 10:16 ` Jan Kiszka
2012-06-10 10:43 ` Abel Gordon
2012-06-10 12:16 ` Jan Kiszka
2012-06-10 13:30 ` Abel Gordon
2012-06-07 9:55 ` Abel Gordon
2012-06-07 10:23 ` Jan Kiszka
2012-06-07 10:34 ` Nadav Har'El
2012-06-07 10:48 ` Jan Kiszka
2012-06-07 11:40 ` Jan Kiszka
2012-06-07 12:17 ` Abel Gordon
2012-06-07 12:19 ` Jan Kiszka
2012-06-07 12:32 ` Abel Gordon
2012-06-07 15:07 ` Jan Kiszka
2012-06-10 10:12 ` Abel Gordon
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=4FD0C353.7030707@web.de \
--to=jan.kiszka@web.de \
--cc=ABELG@il.ibm.com \
--cc=LALEX@il.ibm.com \
--cc=NYH@il.ibm.com \
--cc=dan.tsafrir@gmail.com \
--cc=herbert1984106@gmail.com \
--cc=kvm@vger.kernel.org \
--cc=muli@cs.technion.ac.il \
--cc=nadav.amit@gmail.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 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.