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] Change spec of callback IRQ for PV-on-HVM onIA64

To: "Tian, Kevin" <kevin.tian@xxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] Change spec of callback IRQ for PV-on-HVM onIA64
From: Doi.Tsunehisa@xxxxxxxxxxxxxx
Date: Tue, 21 Nov 2006 16:40:12 +0900
Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, DOI Tsunehisa <Doi.Tsunehisa@xxxxxxxxxxxxxx>, Alex Williamson <alex.williamson@xxxxxx>
Delivery-date: Mon, 20 Nov 2006 23:40:43 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: Your message of Tue, 21 Nov 2006 14:37:26 +0800. <D470B4E54465E3469E2ABBC5AFAC390F0513F6@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
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>
References: <D470B4E54465E3469E2ABBC5AFAC390F0513F6@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hi Kevin,

You (kevin.tian) said:
>>  * pvdrv.patch2
>>    - Modify to change the spec of callback IRQ in PV-driver side.
>>    - This patch brakes compatibility with previous version on IA64.
>>
>>  I tested with our simple test of PV-on-HVM on RHEL4 U2 for IA64
>>with hypervisor side modification.
>>
>>Thanks,
>>- Tsunehisa Doi
> 
> Maybe I'm missing something and you can help me understand. :-) 
> Whatever the value is mangled in pdev->irq, you should always 
> keep following two instances same:
>       if ((ret = request_irq(pdev->irq, evtchn_interrupt, SA_SHIRQ,...
> and
>       if ((ret = set_callback_irq(pdev->irq)))

  In x86-linux, two instances are same. But in IA64-linux, previous one
is a external interrupt vector for xen-platform interruption. Although
latter one is a hardware IRQ id. Both values are not same in IA64-linux.

> Before your patch, say pdev->irq is 0x27 (ISA irq 9), platform-pci 
> driver binds handler to 0x27 and xen will inject by callback_irq 0x27. 
> However in your patch, request_irq is still using pdev->irq (0x27) 
> while set_callback_irq instead wants (0x9). In this case, how can you 
> still make things working when two sides don't match...

  With the modification of hypervisor side, the callback_irq(it's hardware
IRQ) becomes to be converted to external interrupt vector with a emulator
of IOSAPIC.

Thanks,
- Tsunehisa Doi

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