[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-ia64-devel] [PATCH] fix stack corruption bug on ia64
Hi Keir, This is an outstanding fix for the xen-ia64-unstable tree. Dan suggested I send it to you directly for xen-unstable to make sure it gets in for 3.0.1. The memset in init_switch_stack is overwriting the processor stack. We need to avoid manipulating the switch stack area of the currently running cpu. Original patch by Kevin Tian. Thanks, Alex Signed-off-by: Alex Williamson <alex.williamson@xxxxxx> --- --- a/xen/arch/ia64/xen/domain.c Tue Jan 31 17:39:35 2006 +++ b/xen/arch/ia64/xen/domain.c Tue Jan 31 10:37:25 2006 @@ -157,14 +157,14 @@ if ((v = alloc_xenheap_pages(KERNEL_STACK_SIZE_ORDER)) == NULL) return NULL; memset(v, 0, sizeof(*v)); - } - - ti = alloc_thread_info(v); - /* Clear thread_info to clear some important fields, like - * preempt_count - */ - memset(ti, 0, sizeof(struct thread_info)); - init_switch_stack(v); + + ti = alloc_thread_info(v); + /* Clear thread_info to clear some important fields, like + * preempt_count + */ + memset(ti, 0, sizeof(struct thread_info)); + init_switch_stack(v); + } if (!is_idle_domain(d)) { v->arch.privregs = _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |