Loading arch/parisc/kernel/unwind.c +3 −6 Original line number Original line Diff line number Diff line Loading @@ -168,7 +168,7 @@ void unwind_table_remove(struct unwind_table *table) } } /* Called from setup_arch to import the kernel unwind info */ /* Called from setup_arch to import the kernel unwind info */ int unwind_init(void) int __init unwind_init(void) { { long start, stop; long start, stop; register unsigned long gp __asm__ ("r27"); register unsigned long gp __asm__ ("r27"); Loading Loading @@ -233,7 +233,6 @@ static void unwind_frame_regs(struct unwind_frame_info *info) e = find_unwind_entry(info->ip); e = find_unwind_entry(info->ip); if (e == NULL) { if (e == NULL) { unsigned long sp; unsigned long sp; extern char _stext[], _etext[]; dbg("Cannot find unwind entry for 0x%lx; forced unwinding\n", info->ip); dbg("Cannot find unwind entry for 0x%lx; forced unwinding\n", info->ip); Loading Loading @@ -281,8 +280,7 @@ static void unwind_frame_regs(struct unwind_frame_info *info) break; break; info->prev_ip = tmp; info->prev_ip = tmp; sp = info->prev_sp; sp = info->prev_sp; } while (info->prev_ip < (unsigned long)_stext || } while (!kernel_text_address(info->prev_ip)); info->prev_ip > (unsigned long)_etext); info->rp = 0; info->rp = 0; Loading Loading @@ -435,9 +433,8 @@ unsigned long return_address(unsigned int level) do { do { if (unwind_once(&info) < 0 || info.ip == 0) if (unwind_once(&info) < 0 || info.ip == 0) return 0; return 0; if (!__kernel_text_address(info.ip)) { if (!kernel_text_address(info.ip)) return 0; return 0; } } while (info.ip && level--); } while (info.ip && level--); return info.ip; return info.ip; Loading Loading
arch/parisc/kernel/unwind.c +3 −6 Original line number Original line Diff line number Diff line Loading @@ -168,7 +168,7 @@ void unwind_table_remove(struct unwind_table *table) } } /* Called from setup_arch to import the kernel unwind info */ /* Called from setup_arch to import the kernel unwind info */ int unwind_init(void) int __init unwind_init(void) { { long start, stop; long start, stop; register unsigned long gp __asm__ ("r27"); register unsigned long gp __asm__ ("r27"); Loading Loading @@ -233,7 +233,6 @@ static void unwind_frame_regs(struct unwind_frame_info *info) e = find_unwind_entry(info->ip); e = find_unwind_entry(info->ip); if (e == NULL) { if (e == NULL) { unsigned long sp; unsigned long sp; extern char _stext[], _etext[]; dbg("Cannot find unwind entry for 0x%lx; forced unwinding\n", info->ip); dbg("Cannot find unwind entry for 0x%lx; forced unwinding\n", info->ip); Loading Loading @@ -281,8 +280,7 @@ static void unwind_frame_regs(struct unwind_frame_info *info) break; break; info->prev_ip = tmp; info->prev_ip = tmp; sp = info->prev_sp; sp = info->prev_sp; } while (info->prev_ip < (unsigned long)_stext || } while (!kernel_text_address(info->prev_ip)); info->prev_ip > (unsigned long)_etext); info->rp = 0; info->rp = 0; Loading Loading @@ -435,9 +433,8 @@ unsigned long return_address(unsigned int level) do { do { if (unwind_once(&info) < 0 || info.ip == 0) if (unwind_once(&info) < 0 || info.ip == 0) return 0; return 0; if (!__kernel_text_address(info.ip)) { if (!kernel_text_address(info.ip)) return 0; return 0; } } while (info.ip && level--); } while (info.ip && level--); return info.ip; return info.ip; Loading