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

RE: [Xen-devel] [PATCH] x86_64 trap table fixup



Chris Wright wrote:
> Recent header file cleanup (cset
> 2b6c1a8098078f7e53de7cf72227fddf01f0b2b6) 
> broke x86_64.  The cleanup removed a padding field in trap_info_t, so
> the 
> trap table set the address for each trap handler to zero.
> 
> Signed-off-by: Chris Wright <chrisw@xxxxxxxx>

Good to know that the breakage was this minor ;-). It worked for me.

Thanks,
Jun
---
Intel Open Source Technology Center

> ---
> 
> diff -r f8acd354e129
> linux-2.6.11-xen-sparse/arch/xen/x86_64/kernel/traps.c ---
> a/linux-2.6.11-xen-sparse/arch/xen/x86_64/kernel/traps.c      Sat Jul
2
> 08:41:48 2005 +++
> b/linux-2.6.11-xen-sparse/arch/xen/x86_64/kernel/traps.c      Sun Jul
3
> 23:18:10 2005 @@ -910,31 +910,31 @@  
> 
> 
>  static trap_info_t trap_table[] = {
> -        {  0, 0, (__KERNEL_CS|0x3), 0, (unsigned long)divide_error  
> }, 
> -        {  1, 0, (__KERNEL_CS|0x3), 0, (unsigned long)debug         
> }, 
> -        {  3, 3, (__KERNEL_CS|0x3), 0, (unsigned long)int3          
> }, 
> -        {  4, 3, (__KERNEL_CS|0x3), 0, (unsigned long)overflow      
> }, 
> -        {  5, 3, (__KERNEL_CS|0x3), 0, (unsigned long)bounds        
> }, 
> -        {  6, 0, (__KERNEL_CS|0x3), 0, (unsigned long)invalid_op    
> }, 
> -        {  7, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)device_not_available       }, 
> -        {  9, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)coprocessor_segment_overrun}, 
> -        { 10, 0, (__KERNEL_CS|0x3), 0, (unsigned long)invalid_TSS   
> }, 
> -        { 11, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)segment_not_present        }, 
> -        { 12, 0, (__KERNEL_CS|0x3), 0, (unsigned long)stack_segment 
> }, 
> -        { 13, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)general_protection         }, 
> -        { 14, 0, (__KERNEL_CS|0x3), 0, (unsigned long)page_fault    
> }, 
> -        { 15, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)spurious_interrupt_bug     }, 
> -        { 16, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)coprocessor_error          }, 
> -        { 17, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)alignment_check            }, +        {  0, 0,
> (__KERNEL_CS|0x3), (unsigned long)divide_error               }, +    
> {  1, 0, (__KERNEL_CS|0x3), (unsigned long)debug                     
> }, +        {  3, 3, (__KERNEL_CS|0x3), (unsigned long)int3          
> }, +        {  4, 3, (__KERNEL_CS|0x3), (unsigned long)overflow      
> }, +        {  5, 3, (__KERNEL_CS|0x3), (unsigned long)bounds        
> }, +        {  6, 0, (__KERNEL_CS|0x3), (unsigned long)invalid_op    
> }, +        {  7, 0, (__KERNEL_CS|0x3), (unsigned
> long)device_not_available       }, +        {  9, 0,
> (__KERNEL_CS|0x3), (unsigned long)coprocessor_segment_overrun}, +    
> { 10, 0, (__KERNEL_CS|0x3), (unsigned long)invalid_TSS               
> }, +        { 11, 0, (__KERNEL_CS|0x3), (unsigned
> long)segment_not_present        }, +        { 12, 0,
> (__KERNEL_CS|0x3), (unsigned long)stack_segment              }, +    
> { 13, 0, (__KERNEL_CS|0x3), (unsigned long)general_protection        
> }, +        { 14, 0, (__KERNEL_CS|0x3), (unsigned long)page_fault    
>  }, +        { 15, 0, (__KERNEL_CS|0x3), (unsigned
> long)spurious_interrupt_bug     }, +        { 16, 0,
> (__KERNEL_CS|0x3), (unsigned long)coprocessor_error          }, +    
> { 17, 0, (__KERNEL_CS|0x3), (unsigned long)alignment_check           
> }, #ifdef CONFIG_X86_MCE    
> -        { 18, 0, (__KERNEL_CS|0x3), 0, (unsigned long)machine_check 
> }, 
> -#endif
> -        { 19, 0, (__KERNEL_CS|0x3), 0, (unsigned
> long)simd_coprocessor_error     }, 
> -        { SYSCALL_VECTOR,  3, (__KERNEL_CS|0x3), 0, (unsigned
> long)system_call   }, +        { 18, 0, (__KERNEL_CS|0x3), (unsigned
> long)machine_check              }, +#endif
> +        { 19, 0, (__KERNEL_CS|0x3), (unsigned
> long)simd_coprocessor_error     }, +        { SYSCALL_VECTOR, 3,
>  (__KERNEL_CS|0x3), (unsigned long)system_call   }, #ifdef
> CONFIG_IA32_EMULATION 
> -     { IA32_SYSCALL_VECTOR, 3, (__KERNEL_CS|0x3), 0, (unsigned
> long)ia32_syscall}, 
> -#endif
> -        {  0, 0,           0, 0,  0                                 
> } +   { IA32_SYSCALL_VECTOR, 3, (__KERNEL_CS|0x3), (unsigned
> long)ia32_syscall}, +#endif
> +        {  0, 0,           0, 0                                     
>  } };
> 
>  void __init trap_init(void)
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel




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


 


Rackspace

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