[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2] x86: move declaration of the exception_table to C
>>> On 28.01.18 at 15:09, <roger.pau@xxxxxxxxxx> wrote: > --- a/xen/arch/x86/traps.c > +++ b/xen/arch/x86/traps.c > @@ -119,6 +119,26 @@ boolean_param("ler", opt_ler); > #define stack_words_per_line 4 > #define ESP_BEFORE_EXCEPTION(regs) ((unsigned long *)regs->rsp) > > +void (* const exception_table[TRAP_nr])(struct cpu_user_regs *regs) = { > + [TRAP_divide_error] = do_trap, > + [TRAP_debug] = do_debug, > + [TRAP_nmi] = (void *)do_nmi, > + [TRAP_int3] = do_int3, > + [TRAP_overflow ... TRAP_bounds] = do_trap, Please can you avoid ... here and below, such that e.g. grep-ing for one of the TRAP_* values will turn up the respective line here? I also consider this a little awkward if the range consists of just two elements. > + [TRAP_invalid_op] = do_invalid_op, > + [TRAP_no_device] = do_device_not_available, > + [TRAP_double_fault ... TRAP_copro_seg] = do_reserved_trap, > + [TRAP_invalid_tss ... TRAP_stack_error] = do_trap, > + [TRAP_gp_fault] = do_general_protection, > + [TRAP_page_fault] = do_page_fault, > + [TRAP_spurious_int] = do_reserved_trap, > + [TRAP_copro_error ... TRAP_alignment_check] = do_trap, > + [TRAP_machine_check] = (void *)do_machine_check, > + [TRAP_simd_error] = do_trap, > + [TRAP_virtualisation ... > + (ARRAY_SIZE(exception_table) - 1)] = do_reserved_trap, This one, as an exception, is fine with me to use ... . Even better would be to have a [0 ... ARRAY_SIZE() - 1] initializer first, but iirc clang dislikes such. > --- a/xen/include/asm-x86/processor.h > +++ b/xen/include/asm-x86/processor.h > @@ -501,6 +501,7 @@ DECLARE_TRAP_HANDLER(entry_int82); > > void trap_nop(void); > void enable_nmis(void); > +void do_trap(struct cpu_user_regs *regs); No - afaict this function can be static to traps.c now. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |