WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

RE: [Xen-devel] [PATCH][VT] Clear the pending interrupt on shared page w

To: "Keir Fraser" <Keir.Fraser@xxxxxxxxxxxx>
Subject: RE: [Xen-devel] [PATCH][VT] Clear the pending interrupt on shared page when PIC initialized
From: "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx>
Date: Mon, 12 Sep 2005 19:11:15 +0800
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 12 Sep 2005 11:09:04 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcW3hKxSNiwTVDV6TgCNH19G1ta3IwABG+bA
Thread-topic: [Xen-devel] [PATCH][VT] Clear the pending interrupt on shared page when PIC initialized
Keir Fraser wrote:
> On 12 Sep 2005, at 11:10, Jiang, Yunhong wrote:
> 
>> When PIC is initialized and the irq base changed, the pending
>> interrupt on shared page should be cleared.
> 
> For the i8259 device-model change -- ought we to be hooking off the
> cpu_interrupt/cpu_reset_interrupt functions rather than adding new
> hooks?
> 
> Also, are the patches to the PIT code directly related to the PIC
> patch or should they be split out with a separate explanation?
> 
>   -- Keir

This patch works for following scenerio:
1) The BIOS set the irq base to 0x20, and then interrupt is injected
through shared page.
2) The OS disable interurpt , and reset the PIC with ICW1~ICW4. In this
process, it changes the irq base for PIC from 0x20 to 0x30 through ICW2.

On original code, when OS enable interrupt again after step 2, the
interrupts that was kept on shared page and has no chance to be injected
will be injected into guest. However, at this time, the guest has change
the irq base. So maybe 0x20 will be injected into guest, which cause
wrong vectoring on guest.

The patch on PIC and  PIT works together for this purpose, since the PIT
interrupt is injected on HV directly.


Thanks
Yunhong Jiang

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel