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

Re: [Xen-ia64-devel] [PATCH 0/12]MCA handler support for Xen/ia64 TAKE 2



Hi Kazuhiro.
ia64_sal_get_state_info() can be called in interrupt context
so that GFP_KERNEL shouldn't be used.
irq_safe argument of ia64_log_get() should be checked?


On Wed, Nov 08, 2006 at 07:24:16PM +0900, SUZUKI Kazuhiro wrote:

> --- a/linux-2.6-xen-sparse/include/asm-ia64/sal.h     2006-09-13 
> 03:02:10.000000000 +0900
> +++ b/linux-2.6-xen-sparse/include/asm-ia64/sal.h     2006-11-08 
> 16:02:49.000000000 +0900
> @@ -42,6 +42,9 @@
>  #include <asm/pal.h>
>  #include <asm/system.h>
>  #include <asm/fpu.h>
> +#ifdef CONFIG_XEN
> +#include <asm/xen/xencomm.h>
> +#endif
>  
>  extern spinlock_t sal_lock;
>  
> @@ -686,10 +689,28 @@
>  /* Get the processor and platform information logged by SAL with respect to 
> the machine
>   * state at the time of the MCAs, INITs, CMCs, or CPEs.
>   */
> +#ifdef CONFIG_XEN
> +static inline u64 ia64_sal_get_state_info_size (u64 sal_info_type);
> +#endif
> +
>  static inline u64
>  ia64_sal_get_state_info (u64 sal_info_type, u64 *sal_info)
>  {
>       struct ia64_sal_retval isrv;
> +#ifdef CONFIG_XEN
> +     if (is_running_on_xen()) {
> +             struct xencomm_handle *desc;
> +
> +             if (xencomm_create(sal_info,
> +                     ia64_sal_get_state_info_size(sal_info_type),
> +                     &desc, GFP_KERNEL))
> +                     return 0;
> +
> +             SAL_CALL_REENTRANT(isrv, SAL_GET_STATE_INFO, sal_info_type, 0,
> +                                desc, 0, 0, 0, 0);
> +             xencomm_free(desc);
> +     } else
> +#endif
>       SAL_CALL_REENTRANT(isrv, SAL_GET_STATE_INFO, sal_info_type, 0,
>                     sal_info, 0, 0, 0, 0);
>       if (isrv.status)

-- 
yamahata

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


 


Rackspace

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