[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] RE: [Xen-ia64-devel] [PATCH] [IA64] Fix serial console freeze issue



Kuwamura, 
   I think it is necessary to apply the delta patch, what's your opinion ? 
Xiantoa 

-----Original Message-----
From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx] 
Sent: Monday, August 31, 2009 6:01 PM
To: Zhang, Xiantao; KUWAMURA Shin'ya; xen-ia64-devel@xxxxxxxxxxxxxxxxxxx; 
xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-devel] RE: [Xen-ia64-devel] [PATCH] [IA64] Fix serial console 
freeze issue

I already applied Kuwamura's original patch as xen-unstable:20139. Let me
know if you both agree that a delta is needed on top of that.

 Thanks,
 Keir

On 31/08/2009 09:53, "Zhang, Xiantao" <xiantao.zhang@xxxxxxxxx> wrote:

> Kuwamura, 
>    Maybe the fix is not enough and it may break VT-d side after you changing
> it back. In addition, mach_apic.h is also needed to create. I attached the
> whole patch, please check! :-)
> Xiantao
> 
> # HG changeset patch
> # User root@xxxxxxxxxxxxxxxxxxxxx
> # Date 1251737187 14400
> # Node ID dd71c509f3ff13326ddbb8fa39f638022aa814ff
> # Parent  e8004f6c254a5778b50babd527e74208981640b9
> [IA64] Fix serial console freeze issue
> 
> 20110:6e83b0ec2d70 is incomplete. irq_to_vector() is still required,
> otherwise the serial console freezes without sync_console.
> 
> Signed-off-by: KUWAMURA Shin'ya <kuwa@xxxxxxxxxxxxxx>
> Signed-off-by: Xiantao Zhang <xiantao.zhang@xxxxxxxxx>
> 
> diff -r e8004f6c254a -r dd71c509f3ff xen/drivers/passthrough/vtd/iommu.c
> --- a/xen/drivers/passthrough/vtd/iommu.c Thu Aug 27 11:25:34 2009 +0100
> +++ b/xen/drivers/passthrough/vtd/iommu.c Mon Aug 31 12:46:27 2009 -0400
> @@ -892,7 +892,11 @@ static int iommu_set_interrupt(struct io
>  
>      irq_desc[irq].handler = &dma_msi_type;
>      irq_to_iommu[irq] = iommu;
> +#ifdef CONFIG_X86
>      ret = request_irq(irq, iommu_page_fault, 0, "dmar", iommu);
> +#else
> +    ret = request_irq_vector(irq, iommu_page_fault, 0, "dmar", iommu);
> +#endif
>      if ( ret )
>      {
>          irq_desc[irq].handler = &no_irq_type;
> diff -r e8004f6c254a -r dd71c509f3ff xen/include/asm-ia64/mach_apic.h
> --- /dev/null Thu Jan 01 00:00:00 1970 +0000
> +++ b/xen/include/asm-ia64/mach_apic.h Mon Aug 31 12:46:27 2009 -0400
> @@ -0,0 +1,1 @@
> +/* Leave it as blank for compilation. */
> diff -r e8004f6c254a -r dd71c509f3ff xen/include/xen/irq.h
> --- a/xen/include/xen/irq.h Thu Aug 27 11:25:34 2009 +0100
> +++ b/xen/include/xen/irq.h Mon Aug 31 12:46:27 2009 -0400
> @@ -82,14 +82,17 @@ extern irq_desc_t irq_desc[NR_VECTORS];
>  extern irq_desc_t irq_desc[NR_VECTORS];
>  
>  #define setup_irq(irq, action) \
> -    setup_irq_vector(irq, action)
> +    setup_irq_vector(irq_to_vector(irq), action)
>  
>  #define release_irq(irq) \
> -    release_irq_vector(irq)
> +    release_irq_vector(irq_to_vector(irq))
>  
>  #define request_irq(irq, handler, irqflags, devname, devid) \
> -    request_irq_vector(irq, handler, irqflags, devname, devid)
> +    request_irq_vector(irq_to_vector(irq), handler, irqflags, devname, devid)
>  
> +static inline unsigned int irq_to_vector(int);
> +extern int setup_irq_vector(unsigned int, struct irqaction *);
> +extern void release_irq_vector(unsigned int);
>  extern int request_irq_vector(unsigned int vector,
>                 void (*handler)(int, void *, struct cpu_user_regs *),
>                 unsigned long irqflags, const char * devname, void *dev_id);
> 
> 
> KUWAMURA Shin'ya wrote:
>> Hi,
>> 
>> 20110:6e83b0ec2d70 is incomplete. irq_to_vector() is still required,
>> otherwise the serial console freezes without sync_console.
>> 
>> I confirmed that dom0 booted up without sync_console.
>> 
>> Signed-off-by: KUWAMURA Shin'ya <kuwa@xxxxxxxxxxxxxx>
> 



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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.