From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: "Dong, Eddie" <eddie.dong-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: preview of in kernel irqchip live migration support
Date: Tue, 24 Jul 2007 12:46:42 +0300 [thread overview]
Message-ID: <46A5CA82.3040105@qumranet.com> (raw)
In-Reply-To: <10EA09EFD8728347A513008B6B0DA77A01D15BAB-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
Dong, Eddie wrote:
> This patch is only for idea collection so far.
> The dilemma is that how to export the pic/IOAPIC/apic state data
> structure
> to user and make sure it has same/similar structure in user level.
> Otherwise a
> convert is a must and we must maintain the converter.
>
>
I think we have to have a converter, we can't tie the kernel to qemu or
vice versa.
It's just a series of assignments, I don't see an issue with it.
> With this, PIC only guest can do live migration successfully. We can
> extend
> APIC side seamlessly.
>
> BTW, there is potential issue in IDT_Vectoring. The fix IMO is to retry
> vm_stop at user level
> to make sure no pending IDT_vectoring.
>
I agree. How do we tell userspace we need to retry, though? A field in
kvm_run? A field in the lapic state?
> Pls comments. Also I will temply off this week, Qing He may continue.
>
> Thx,eddie
>
>
> diff --git a/include/linux/kvm.h b/include/linux/kvm.h
> index 5307ba3..4eee80d 100644
> --- a/include/linux/kvm.h
> +++ b/include/linux/kvm.h
> @@ -51,6 +51,44 @@ struct kvm_irq_level {
> __u32 level;
> };
>
> +/* for KVM_GET_IRQCHIP / KVM_SET_IRQCHIP */
> +struct kvm_pic_state {
> + __u8 last_irr; /* edge detection */
> + __u8 irr; /* interrupt request register */
> + __u8 imr; /* interrupt mask register */
> + __u8 isr; /* interrupt service register */
> + __u8 priority_add; /* highest irq priority */
> + __u8 irq_base;
> + __u8 read_reg_select;
> + __u8 poll;
> + __u8 special_mask;
> + __u8 init_state;
> + __u8 auto_eoi;
> + __u8 rotate_on_auto_eoi;
> + __u8 special_fully_nested_mode;
> + __u8 init4; /* true if 4 byte init */
> + __u8 elcr; /* PIIX edge/trigger selection */
> + __u8 elcr_mask;
> + struct kvm_pic *pics_state;
> +};
>
You can't have this pointer in the userspace interface.
Also, please ensure that sizeof(struct kvm_pic_state) does not change in
32/64 bit environments, since it gets embedded in the ioctl number.
--
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-07-24 9:46 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-24 5:48 preview of in kernel irqchip live migration support Dong, Eddie
[not found] ` <10EA09EFD8728347A513008B6B0DA77A01D15BAB-wq7ZOvIWXbNpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-07-24 9:46 ` Avi Kivity [this message]
2007-07-25 7:12 ` Dor Laor
[not found] ` <64F9B87B6B770947A9F8391472E032160CD8CAD6-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>
2007-07-25 7:30 ` 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=46A5CA82.3040105@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