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
|