From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: "Dong, Eddie" <eddie.dong-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: kvm-devel <kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: Re: u <-> k cross migration and IDT_Vectoring save/restore
Date: Sun, 05 Aug 2007 12:34:23 +0300 [thread overview]
Message-ID: <46B5999F.10008@qumranet.com> (raw)
In-Reply-To: <10EA09EFD8728347A513008B6B0DA77A01E00941-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
Dong, Eddie wrote:
> Avi:
> Basically with those patches applied so far, we can do k<->k, u
> <->u and k->u live migration for typical case, the u->k migration has
> bug so far which is still debuging.
> But I am thinking about the corner case (pending irq) for cross
> migration, i.e. pending irq in valid IDT_Vectoring of kernel irqchip and
> those in interrupt_bitmap of user level case. In most case, there are
> no pending irqs, that is fine for us. In some case if there is a pending
> irq, cross migration need to convert between them which may be not
> feasible.
> In k->u case, we can just convert the IDT_vectoring indicated
> pending irq (single vector) to a interrupt_bitmap, but vice versa may
> not be true since user level case may have multiple pending irqs in
> theory though rare. In that case u->k cross migration may fail since we
> don't know this vectored irq comes from PIC or APIC and thus unable to
> push back to PIC/APIC device model. If there is only one pending irq in
> interrupt_bitmap, we can simply convert it to IDT_Vectoring
> BTW, multiple pending IRQs in interrupt_bitmap has potential
> architectural issue even in pure user level case due to premature
> IRR->ISR convert in PIC/APIC device model as we discussed.
>
> If above limitation is fine, we can use interrupt_bitmap in
> SREGS data structure to carry the pending irq for kernel level too.
> Any opinion?
> thx,eddie
>
Userspace will never set more than one bit in the pending bitmap,
because it needs to inspect the tpr before injecting an interrupt. As
to converting the single bit to IDT_Vectoring, I think this is very
natural since the pending bitmap maps to IDT_Vectoring much more closely
than to the apic or pic (as it is after apic and pic processing).
--
error compiling committee.c: too many arguments to function
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
next prev parent reply other threads:[~2007-08-05 9:34 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-03 6:18 [PATCH 0/6] in-kernel APIC save/restore and live migration He, Qing
[not found] ` <37E52D09333DE2469A03574C88DBF40F048EE0-wq7ZOvIWXbM/UvCtAeCM4rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-08-03 16:54 ` Avi Kivity
2007-08-05 7:59 ` Avi Kivity
[not found] ` <46B5837D.4040807-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-08-05 9:25 ` u <-> k cross migration and IDT_Vectoring save/restore Dong, Eddie
[not found] ` <10EA09EFD8728347A513008B6B0DA77A01E00941-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-08-05 9:34 ` Avi Kivity [this message]
[not found] ` <46B5999F.10008-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-08-05 10:45 ` Dong, Eddie
[not found] ` <10EA09EFD8728347A513008B6B0DA77A01E0094F-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-08-05 10:54 ` Avi Kivity
[not found] ` <46B5AC69.4020908-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-08-05 10:56 ` Dong, Eddie
2007-08-05 13:55 ` Dong, Eddie
[not found] ` <10EA09EFD8728347A513008B6B0DA77A01E0097A-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-08-05 13:58 ` Avi Kivity
[not found] ` <46B5D798.7020509-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-08-05 14:03 ` Dong, Eddie
[not found] ` <10EA09EFD8728347A513008B6B0DA77A01E00980-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-08-05 15:00 ` Avi Kivity
2007-08-06 3:04 ` k->u migration bug fix Dong, Eddie
[not found] ` <10EA09EFD8728347A513008B6B0DA77A01E00BA4-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-08-06 13:25 ` Avi Kivity
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=46B5999F.10008@qumranet.com \
--to=avi-atkuwr5tajbwk0htik3j/w@public.gmane.org \
--cc=eddie.dong-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
/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