]> xenbits.xensource.com Git - xen.git/commitdiff
[IA64] vti domain save/restore: add unwind directive to break fault handler
authorAlex Williamson <alex.williamson@hp.com>
Fri, 12 Oct 2007 20:30:30 +0000 (14:30 -0600)
committerAlex Williamson <alex.williamson@hp.com>
Fri, 12 Oct 2007 20:30:30 +0000 (14:30 -0600)
add unwind directive to fast_hypercall path.
While fast_hypercall path calls function (hypercall, do_softirq()) and
might be blocked, it doesn't have unwind infomation.
So stack unwinding fails. Add necessary unwind directive.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
xen/arch/ia64/xen/ivt.S

index a02125001717a874f34dba3c4da0a4ce008d7f10..f0f8c5f62c0cadc7c1495ed5eaea2969d72a1dc4 100644 (file)
@@ -458,6 +458,7 @@ END(daccess_bit)
 //////////////////////////////////////////////////////////////////////////
 // 0x2c00 Entry 11 (size 64 bundles) Break instruction (33)
 ENTRY(break_fault)
+       .body
        /*
         * The streamlined system call entry/exit paths only save/restore 
         * the initial part of pt_regs.  This implies that the callers of
@@ -657,6 +658,7 @@ fast_hypercall:
        bsw.1                                   // B (6 cyc) regs are saved, switch to bank 1
        ;;
 
+       PT_REGS_UNWIND_INFO(0)
        ssm psr.ic | PSR_DEFAULT_BITS           // M2   now it's safe to re-enable intr.-collection
 //     movl r3=ia64_ret_from_syscall           // X
        ;;