[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [XEN][POWERPC] Be a little smarter with unimplemented()
# HG changeset patch # User Jimi Xenidis <jimix@xxxxxxxxxxxxxx> # Node ID 2a10ce87327cd87b24fe7a17f5a89e4d14416981 # Parent 4da585fb62f93505043a96074014e580fc1d6370 [XEN][POWERPC] Be a little smarter with unimplemented() Signed-off-by: Jimi Xenidis <jimix@xxxxxxxxxxxxxx> Signed-off-by: Hollis Blanchard <hollisb@xxxxxxxxxx> --- xen/arch/powerpc/smp.c | 16 +++++++++++----- xen/arch/powerpc/time.c | 1 - xen/include/asm-powerpc/debugger.h | 8 +++++++- 3 files changed, 18 insertions(+), 7 deletions(-) diff -r 4da585fb62f9 -r 2a10ce87327c xen/arch/powerpc/smp.c --- a/xen/arch/powerpc/smp.c Thu Nov 30 15:26:55 2006 -0600 +++ b/xen/arch/powerpc/smp.c Fri Sep 22 11:51:56 2006 -0400 @@ -32,16 +32,21 @@ void __flush_tlb_mask(cpumask_t mask, un unimplemented(); } -void smp_send_event_check_mask(cpumask_t cpu_mask) +void smp_send_event_check_mask(cpumask_t mask) { - unimplemented(); + cpu_clear(smp_processor_id(), mask); + if (!cpus_empty(mask)) + unimplemented(); } -int smp_call_function(void (*func) (void *info), void *info, int unused, + +int smp_call_function(void (*func) (void *info), void *info, int retry, int wait) { - unimplemented(); - return 0; + cpumask_t allbutself = cpu_online_map; + cpu_clear(smp_processor_id(), allbutself); + + return on_selected_cpus(allbutself, func, info, retry, wait); } void smp_send_stop(void) @@ -56,5 +61,6 @@ int on_selected_cpus( int retry, int wait) { + unimplemented(); return 0; } diff -r 4da585fb62f9 -r 2a10ce87327c xen/arch/powerpc/time.c --- a/xen/arch/powerpc/time.c Thu Nov 30 15:26:55 2006 -0600 +++ b/xen/arch/powerpc/time.c Fri Sep 22 11:51:56 2006 -0400 @@ -93,5 +93,4 @@ void do_settime(unsigned long secs, unsi void update_vcpu_system_time(struct vcpu *v) { - unimplemented(); } diff -r 4da585fb62f9 -r 2a10ce87327c xen/include/asm-powerpc/debugger.h --- a/xen/include/asm-powerpc/debugger.h Thu Nov 30 15:26:55 2006 -0600 +++ b/xen/include/asm-powerpc/debugger.h Fri Sep 22 11:51:56 2006 -0400 @@ -41,6 +41,13 @@ static inline void debugger_trap_immedia __builtin_trap(); } +static inline void unimplemented(void) +{ +#ifdef VERBOSE + dump_execution_state(); +#endif +} + static inline void show_execution_state(struct cpu_user_regs *regs) { show_registers(regs); @@ -49,7 +56,6 @@ extern void __warn(char *file, int line) extern void __warn(char *file, int line); #define WARN() __warn(__FILE__, __LINE__) #define WARN_ON(_p) do { if (_p) WARN(); } while ( 0 ) -#define unimplemented() WARN() #define FORCE_CRASH() debugger_trap_immediate() _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |