From mboxrd@z Thu Jan 1 00:00:00 1970 From: Samuel Thibault Subject: [PATCH] [Mini-OS] Fix stack closures Date: Fri, 23 Nov 2007 15:47:16 +0000 Message-ID: <20071123154716.GA11563@implementation.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org So as to make backtracing tools happy, correctly close x86 stacks for new threads as well as on callback in the x86_32 case since there is no unwind marker. Signed-off-by: Samuel Thibault diff -r 2e05a6173be0 extras/mini-os/arch/x86/x86_32.S --- a/extras/mini-os/arch/x86/x86_32.S Fri Nov 23 11:58:11 2007 +0000 +++ b/extras/mini-os/arch/x86/x86_32.S Fri Nov 23 15:40:40 2007 +0000 @@ -125,6 +125,7 @@ cmpl $ecrit,%eax jb critical_region_fixup 11: push %esp + xorl %ebp,%ebp call do_hypervisor_callback add $4,%esp movl HYPERVISOR_shared_info,%esi @@ -280,6 +281,8 @@ ENTRY(thread_starter) popl %eax popl %ebx + pushl $0 + xorl %ebp,%ebp pushl %eax call *%ebx call exit_thread --- a/extras/mini-os/arch/x86/x86_64.S Fri Nov 23 11:58:11 2007 +0000 +++ b/extras/mini-os/arch/x86/x86_64.S Fri Nov 23 15:40:40 2007 +0000 @@ -379,6 +378,8 @@ ENTRY(thread_starter) popq %rdi popq %rbx + pushq $0 + xorq %rbp,%rbp call *%rbx call exit_thread