[Lguest] [PATCH 3/25] [PATCH] irq_flags / halt routines

Andi Kleen ak at suse.de
Wed Aug 8 19:14:19 EST 2007


> +#ifdef CONFIG_PARAVIRT
> +#include <asm/paravirt.h>
> +#  ifdef CONFIG_X86_VSMP
> +static inline int raw_irqs_disabled_flags(unsigned long flags)
> +{
> +	return !(flags & X86_EFLAGS_IF) || (flags & X86_EFLAGS_AC);
> +}
> +#  else
> +static inline int raw_irqs_disabled_flags(unsigned long flags)
> +{
> +	return !(flags & X86_EFLAGS_IF);
> +}
> +#  endif

You should really turn the vsmp special case into a paravirt client first 
instead of complicating all this even more. 

> +#ifndef CONFIG_PARAVIRT
> +#define raw_safe_halt	native_raw_safe_halt
> +#define halt		native_halt
> +#endif /* ! CONFIG_PARAVIRT */

This seems inconsistent

-Andi




More information about the Lguest mailing list