=========================================================== .___ __ __ _________________ __ __ __| _/|__|/ |_ / ___\_` __ \__ \ | | \/ __ | | \\_ __\ / /_/ > | \// __ \| | / /_/ | | || | \___ /|__| (____ /____/\____ | |__||__| /_____/ \/ \/ grep rough audit - static analysis tool v2.8 written by @Wireghoul =================================[justanotherhacker.com]=== dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-92-+++ 23.2/arch/ia64/kernel/traps.c Sat, 06 Dec 2003 17:21:59 +1100 kaos (kdb-2.4-arch-ia64/3_traps.c 1.9 644) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:93:@@ -33,6 +33,9 @@ register double f30 asm ("f30"); registe dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-94- #include <linux/init.h> ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-475-+ struct switch_stack *prev_sw = krp->arch.sw; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:476:+ extern char ia64_leave_kernel[]; /* Need asm address, not function descriptor */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-477-+ KDBA_MCA_TRACE(); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-522-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:523:+ asm volatile (";;flushrs;; mov %0=ar.bsp;;" : "=r"(new_bsp)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-524-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-755-+ . = ALIGN(16); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:756:+ .kdb_initcall.init : AT(ADDR(.kdb_initcall.init) - PAGE_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-757-+ { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-761-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:762: .initcall.init : AT(ADDR(.initcall.init) - PAGE_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-763- { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-15302-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:15303:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-15304-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-15407-+ dip->fprintf_func = dip->fprintf_dummy; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:15408:+ kdba_dis_printaddr(pc+byte, dip); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-15409-+ ret = print_insn_ia64((kdb_machreg_t)(pc+byte), dip); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16292-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16293:+ (i) ar.bsp < ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16294-+ ar.rnat contains the desired bits---preserve ar.rnat ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16296-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16297:+ (ii) ar.bsp >= ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16298-+ The desired ar.rnat is stored in dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16299:+ ia64_rse_rnat_addr(jmpbuf.ar_bsp). Load those dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16300-+ bits into ar.rnat after setting ar.bspstore. */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16352-+ ld8.fill.nta gp=[r3],16 // r1 (gp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16353:+ dep r11=-1,r23,3,6 // r11 <- ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16354-+ ;; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16370-+ ;; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16371:+(p8) ld8 r26=[r11] // r26 <- *ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16372-+ mov ar.bspstore=r23 // restore ar.bspstore ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16561-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16562:+ asm ("mov %0=cr.lid" : "=r"(lid)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16563:+ asm ("mov %0=cr.tpr" : "=r"(tpr)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16564:+ asm ("mov %0=cr.lrr0" : "=r"(lrr0)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16565:+ asm ("mov %0=cr.lrr1" : "=r"(lrr1)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16566-+ kdb_printf("lid=" kdb_machreg_fmt ", tpr=" kdb_machreg_fmt ", lrr0=" kdb_machreg_fmt ", llr1=" kdb_machreg_fmt "\n", lid, tpr, lrr0, lrr1); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16567-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16568:+ asm ("mov %0=cr.itv" : "=r"(itv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16569:+ asm ("mov %0=cr.pmv" : "=r"(pmv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16570:+ asm ("mov %0=cr.cmcv" : "=r"(cmcv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16571-+ kdb_printf("itv=" kdb_machreg_fmt ", pmv=" kdb_machreg_fmt ", cmcv=" kdb_machreg_fmt "\n", itv, pmv, cmcv); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16828-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16829:+ asm ("mov %0=ar.k0" : "=r"(kr[0])); asm ("mov %0=ar.k1" : "=r"(kr[1])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16830:+ asm ("mov %0=ar.k2" : "=r"(kr[2])); asm ("mov %0=ar.k3" : "=r"(kr[3])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16831:+ asm ("mov %0=ar.k4" : "=r"(kr[4])); asm ("mov %0=ar.k5" : "=r"(kr[5])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1:16832:+ asm ("mov %0=ar.k6" : "=r"(kr[6])); asm ("mov %0=ar.k7" : "=r"(kr[7])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-ia64-031205-1-16833-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-756- .menuconfig.log \ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:757: include/asm \ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-758-+ kdb/gen-kdb_cmds.c \ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-2101-+#define KDB_NOBP (-20) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:2102:+#define KDB_BADADDR (-21) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-2103-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-8517-+ * have to assume the worst and validate the frame. Some calls from dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:8518:+ * asm code to C code might not use frame pointers. Third party binary dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-8519-+ * only modules might be compiled without frame pointers, even when the ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-8690-+ * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:8691:+ * kdb equivalent of strdup, for disasm code. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-8692-+ * Inputs: ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-10887-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:10888:+ * i386 disasm layout patch from Jean-Marc Saffroy. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-10889-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-10893-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:10894:+ * Enter repeats the last command, IA64 disasm only prints one dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-10895-+ instruction. Don Dugger. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-14360-++static inline void * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:14361:++kludge_copy_addr(int cpu, void *addr, struct task_struct *p) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-14362-++{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-14410-++ */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:14411:++ p_copy = kludge_copy_addr(cpu, p, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-14412-++ sw_new = (struct switch_stack *)((u64)(regs + 1) + 16) - 1; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1:14413:++ sw_copy = kludge_copy_addr(cpu, sw_new, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-common-1-14414-++ // kdb_printf("p_copy 0x%p sw_new 0x%p sw_copy 0x%p\n", p_copy, sw_new, sw_copy); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5290-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3:5291:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5292-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5392-+{ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3:5393:+ kdba_dis_printaddr(pc, dip); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5394-+ return print_insn_sparc(pc, dip); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5752-+ if (strcmp(regname, "csp") == 0) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3:5753:+ asm volatile("stx %%sp,%0":"=m" (*contents)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5754-+ return 0; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5820-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3:5821:+ asm volatile("rdpr %%wstate, %0":"=r" (wstate)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-5822-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-6170-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3:6171:+int valid_kernel_addr(unsigned long addr) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-6172-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-6244-+ for (i = addr & PAGE_MASK; i <= end; i = i + PAGE_SIZE) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3:6245:+ if ((ret = valid_kernel_addr(i))) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-sparc64-3-6246-+ break; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-1676-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:1677:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-1678-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-3111-+/* Make sure that bytes from INFO->PRIVATE_DATA->BUFFER (inclusive) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:3112:+ to ADDR (exclusive) are valid. Returns 1 for success, longjmps dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-3113-+ on error. */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6917-+ unsigned char code[7]; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:6918:+#define retaddr(off) code[sizeof(code)+(off)] dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6919-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6941-+ continue; /* not a valid return address */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:6942:+ if (retaddr(-5) == 0xe8) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6943-+ /* call disp32 */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6955-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:6956:+ } else if (retaddr(-5) == 0xe9) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6957-+ /* jmp disp32. I have been told that gcc may ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6972-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:6973:+ } else if (retaddr(-2) == 0xeb) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-6974-+ /* jmp disp8 */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7001-+ continue; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:7002:+ } else if (retaddr(-7) == 0xff && retaddr(-6) == 0x14 && retaddr(-5) == 0x85) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7003-+ /* call *disp32(,%eax,4), used by syscall. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7020-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:7021:+ } else if (retaddr(-2) == 0xff && dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:7022:+ ((retaddr(-1) & 0xf8) == 0xd0 || (retaddr(-1) & 0xf8) == 0x10)) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7023-+ /* call *%reg. Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7029-+ break; /* hope it is a call to this function */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:7030:+ } else if (retaddr(-3) == 0xff && (retaddr(-2) & 0xf8) == 0x50) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7031-+ /* call *disp8(%reg). Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7037-+ break; /* hope it is a call to this function */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:7038:+ } else if (retaddr(-6) == 0xff && (retaddr(-5) & 0xf8) == 0x90) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7039-+ /* call *disp32(%reg). Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7595-+ if (strcmp(regname, "cesp") == 0) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:7596:+ asm volatile("movl %%esp,%0":"=m" (*contents)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7597-+ return 0; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7662-+ if (strcmp(kdbreglist[i].reg_name, "xss") == 0) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1:7663:+ asm volatile( dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-i386-1-7664-+ "pushl %%ss\n" ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-1675-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:1676:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-1677-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-3110-+/* Make sure that bytes from INFO->PRIVATE_DATA->BUFFER (inclusive) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:3111:+ to ADDR (exclusive) are valid. Returns 1 for success, longjmps dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-3112-+ on error. */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6916-+ unsigned char code[7]; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:6917:+#define retaddr(off) code[sizeof(code)+(off)] dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6918-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6940-+ continue; /* not a valid return address */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:6941:+ if (retaddr(-5) == 0xe8) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6942-+ /* call disp32 */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6954-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:6955:+ } else if (retaddr(-5) == 0xe9) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6956-+ /* jmp disp32. I have been told that gcc may ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6971-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:6972:+ } else if (retaddr(-2) == 0xeb) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-6973-+ /* jmp disp8 */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7000-+ continue; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:7001:+ } else if (retaddr(-7) == 0xff && retaddr(-6) == 0x14 && retaddr(-5) == 0x85) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7002-+ /* call *disp32(,%eax,4), used by syscall. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7019-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:7020:+ } else if (retaddr(-2) == 0xff && dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:7021:+ ((retaddr(-1) & 0xf8) == 0xd0 || (retaddr(-1) & 0xf8) == 0x10)) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7022-+ /* call *%reg. Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7028-+ break; /* hope it is a call to this function */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:7029:+ } else if (retaddr(-3) == 0xff && (retaddr(-2) & 0xf8) == 0x50) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7030-+ /* call *disp8(%reg). Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7036-+ break; /* hope it is a call to this function */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:7037:+ } else if (retaddr(-6) == 0xff && (retaddr(-5) & 0xf8) == 0x90) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7038-+ /* call *disp32(%reg). Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7594-+ if (strcmp(regname, "cesp") == 0) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:7595:+ asm volatile("movl %%esp,%0":"=m" (*contents)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7596-+ return 0; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7661-+ if (strcmp(kdbreglist[i].reg_name, "xss") == 0) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5:7662:+ asm volatile( dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-i386-5-7663-+ "pushl %%ss\n" ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-1676-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:1677:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-1678-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-3111-+/* Make sure that bytes from INFO->PRIVATE_DATA->BUFFER (inclusive) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:3112:+ to ADDR (exclusive) are valid. Returns 1 for success, longjmps dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-3113-+ on error. */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6917-+ unsigned char code[7]; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:6918:+#define retaddr(off) code[sizeof(code)+(off)] dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6919-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6941-+ continue; /* not a valid return address */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:6942:+ if (retaddr(-5) == 0xe8) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6943-+ /* call disp32 */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6955-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:6956:+ } else if (retaddr(-5) == 0xe9) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6957-+ /* jmp disp32. I have been told that gcc may ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6972-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:6973:+ } else if (retaddr(-2) == 0xeb) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-6974-+ /* jmp disp8 */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7001-+ continue; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:7002:+ } else if (retaddr(-7) == 0xff && retaddr(-6) == 0x14 && retaddr(-5) == 0x85) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7003-+ /* call *disp32(,%eax,4), used by syscall. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7020-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:7021:+ } else if (retaddr(-2) == 0xff && dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:7022:+ ((retaddr(-1) & 0xf8) == 0xd0 || (retaddr(-1) & 0xf8) == 0x10)) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7023-+ /* call *%reg. Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7029-+ break; /* hope it is a call to this function */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:7030:+ } else if (retaddr(-3) == 0xff && (retaddr(-2) & 0xf8) == 0x50) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7031-+ /* call *disp8(%reg). Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7037-+ break; /* hope it is a call to this function */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:7038:+ } else if (retaddr(-6) == 0xff && (retaddr(-5) & 0xf8) == 0x90) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7039-+ /* call *disp32(%reg). Cannot validate, have to assume ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7595-+ if (strcmp(regname, "cesp") == 0) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:7596:+ asm volatile("movl %%esp,%0":"=m" (*contents)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7597-+ return 0; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7662-+ if (strcmp(kdbreglist[i].reg_name, "xss") == 0) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1:7663:+ asm volatile( dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-i386-1-7664-+ "pushl %%ss\n" ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-761- .menuconfig.log \ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:762: include/asm \ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-763-+ kdb/gen-kdb_cmds.c \ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-2106-+#define KDB_NOBP (-20) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:2107:+#define KDB_BADADDR (-21) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-2108-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-8522-+ * have to assume the worst and validate the frame. Some calls from dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:8523:+ * asm code to C code might not use frame pointers. Third party binary dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-8524-+ * only modules might be compiled without frame pointers, even when the ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-8695-+ * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:8696:+ * kdb equivalent of strdup, for disasm code. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-8697-+ * Inputs: ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-10885-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:10886:+ * i386 disasm layout patch from Jean-Marc Saffroy. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-10887-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-10891-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:10892:+ * Enter repeats the last command, IA64 disasm only prints one dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-10893-+ instruction. Don Dugger. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-14358-++static inline void * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:14359:++kludge_copy_addr(int cpu, void *addr, struct task_struct *p) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-14360-++{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-14408-++ */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:14409:++ p_copy = kludge_copy_addr(cpu, p, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-14410-++ sw_new = (struct switch_stack *)((u64)(regs + 1) + 16) - 1; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8:14411:++ sw_copy = kludge_copy_addr(cpu, sw_new, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-common-8-14412-++ // kdb_printf("p_copy 0x%p sw_new 0x%p sw_copy 0x%p\n", p_copy, sw_new, sw_copy); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.5/ChangeLog-169- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.5/ChangeLog:170: * i386 disasm layout patch from Jean-Marc Saffroy. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.5/ChangeLog-171- ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.5/ChangeLog-175- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.5/ChangeLog:176: * Enter repeats the last command, IA64 disasm only prints one dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.5/ChangeLog-177- instruction. Don Dugger. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt-259-+static inline void * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt:260:+kludge_copy_addr(int cpu, void *addr, struct task_struct *p) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt-261-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt-309-+ */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt:310:+ p_copy = kludge_copy_addr(cpu, p, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt-311-+ sw_new = (struct switch_stack *)((u64)(regs + 1) + 16) - 1; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt:312:+ sw_copy = kludge_copy_addr(cpu, sw_new, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/doc/dump.txt-313-+ // kdb_printf("p_copy 0x%p sw_new 0x%p sw_copy 0x%p\n", p_copy, sw_new, sw_copy); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.4/ChangeLog-380- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.4/ChangeLog:381: * i386 disasm layout patch from Jean-Marc Saffroy. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.4/ChangeLog-382- ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.4/ChangeLog-386- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.4/ChangeLog:387: * Enter repeats the last command, IA64 disasm only prints one dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/ChangeLogs-2.4/ChangeLog-388- instruction. Don Dugger. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply29-173- mkdir -p debian/image.d dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply29:174: PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1` dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply29:175: PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status` dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply29-176- cat > 'debian/image.d/register-kdb' <<EOF ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-753- .menuconfig.log \ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:754: include/asm \ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-755-+ kdb/gen-kdb_cmds.c \ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-2213-+#define KDB_NOBP (-20) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:2214:+#define KDB_BADADDR (-21) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-2215-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-8629-+ * have to assume the worst and validate the frame. Some calls from dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:8630:+ * asm code to C code might not use frame pointers. Third party binary dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-8631-+ * only modules might be compiled without frame pointers, even when the ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-8802-+ * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:8803:+ * kdb equivalent of strdup, for disasm code. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-8804-+ * Inputs: ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-11049-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:11050:+ * i386 disasm layout patch from Jean-Marc Saffroy. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-11051-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-11055-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:11056:+ * Enter repeats the last command, IA64 disasm only prints one dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-11057-+ instruction. Don Dugger. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-14522-++static inline void * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:14523:++kludge_copy_addr(int cpu, void *addr, struct task_struct *p) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-14524-++{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-14572-++ */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:14573:++ p_copy = kludge_copy_addr(cpu, p, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-14574-++ sw_new = (struct switch_stack *)((u64)(regs + 1) + 16) - 1; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2:14575:++ sw_copy = kludge_copy_addr(cpu, sw_new, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.23-common-2-14576-++ // kdb_printf("p_copy 0x%p sw_new 0x%p sw_copy 0x%p\n", p_copy, sw_new, sw_copy); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply30-173- mkdir -p debian/image.d dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply30:174: PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1` dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply30:175: PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status` dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply30-176- cat > 'debian/image.d/register-kdb' <<EOF ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb-92- my $dep = basename ($applyscript); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb:93: system ("${TOPPATCHDIR}/$applyscript") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb-94- or die "Error running ${TOPPATCHDIR}/$applyscript"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb-134-system ("mkdir -p debian/image.d"); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb:135:my $PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb-136-chomp $PKGNAME; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb:137:my $PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/apply/kdb-138-chomp $PKGVERS; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb-31-our ($PATCHFILE,$STRIPLEVEL,@DEPENDS); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb:32:if ( `wc -l < $STAMP` != 1 ) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb-33- my $DEPENDS; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb-60- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb:61:system ("$DECOMPRESSOR $PATCHFILE | patch -R -p$STRIPLEVEL $PATCH_OPTIONS") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb-62- or die "unpatching failed"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb-72- unless -x "${TOPPATCHDIR}/$dep"; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb:73: system ("${TOPPATCHDIR}/$dep") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/sparc64/unpatch/kdb-74- or die "error unpatching $dep"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore-92- my $dep = basename ($applyscript); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore:93: system ("${TOPPATCHDIR}/$applyscript") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore-94- or die "Error running ${TOPPATCHDIR}/$applyscript"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore-134-system ("mkdir -p debian/image.d"); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore:135:my $PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore-136-chomp $PKGNAME; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore:137:my $PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/apply/kdbcore-138-chomp $PKGVERS; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore-31-our ($PATCHFILE,$STRIPLEVEL,@DEPENDS); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore:32:if ( `wc -l < $STAMP` != 1 ) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore-33- my $DEPENDS; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore-60- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore:61:system ("$DECOMPRESSOR $PATCHFILE | patch -R -p$STRIPLEVEL $PATCH_OPTIONS") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore-62- or die "unpatching failed"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore-72- unless -x "${TOPPATCHDIR}/$dep"; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore:73: system ("${TOPPATCHDIR}/$dep") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/all/unpatch/kdbcore-74- or die "error unpatching $dep"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb-92- my $dep = basename ($applyscript); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb:93: system ("${TOPPATCHDIR}/$applyscript") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb-94- or die "Error running ${TOPPATCHDIR}/$applyscript"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb-134-system ("mkdir -p debian/image.d"); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb:135:my $PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb-136-chomp $PKGNAME; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb:137:my $PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/apply/kdb-138-chomp $PKGVERS; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb-31-our ($PATCHFILE,$STRIPLEVEL,@DEPENDS,$DEPENDS); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb:32:if ( `wc -l < $STAMP` != 1 ) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb-33- while (<STAMP>) { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb-59- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb:60:system ("$DECOMPRESSOR $PATCHFILE | patch -R -p$STRIPLEVEL $PATCH_OPTIONS") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb-61- or die "unpatching failed"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb-71- unless -x "${TOPPATCHDIR}/$dep"; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb:72: system ("${TOPPATCHDIR}/$dep") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/i386/unpatch/kdb-73- or die "error unpatching $dep"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb-92- my $dep = basename ($applyscript); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb:93: system ("${TOPPATCHDIR}/$applyscript") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb-94- or die "Error running ${TOPPATCHDIR}/$applyscript"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb-134-system ("mkdir -p debian/image.d"); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb:135:my $PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb-136-chomp $PKGNAME; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb:137:my $PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status`; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/apply/kdb-138-chomp $PKGVERS; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb-31-our ($PATCHFILE,$STRIPLEVEL,@DEPENDS); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb:32:if ( `wc -l < $STAMP` != 1 ) { dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb-33- my $DEPENDS; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb-60- dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb:61:system ("$DECOMPRESSOR $PATCHFILE | patch -R -p$STRIPLEVEL $PATCH_OPTIONS") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb-62- or die "unpatching failed"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb-72- unless -x "${TOPPATCHDIR}/$dep"; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb:73: system ("${TOPPATCHDIR}/$dep") == 0 dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/debian/tmp/usr/src/kernel-patches/ia64/unpatch/kdb-74- or die "error unpatching $dep"; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-26- } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:27:+ .kdb_initcall.init : AT(ADDR(.kdb_initcall.init) - LOAD_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-28-+ { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-32-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:33: __param : AT(ADDR(__param) - LOAD_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-34- { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-461-+ struct switch_stack *prev_sw = krp->arch.sw; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:462:+ extern char ia64_leave_kernel[]; /* Need asm address, not function descriptor */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-463-+ KDBA_MCA_TRACE(); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-508-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:509:+ asm volatile (";;flushrs;; mov %0=ar.bsp;;" : "=r"(new_bsp)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-510-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-1620-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1621:+ asm ("mov %0=cr.lid" : "=r"(lid)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1622:+ asm ("mov %0=cr.tpr" : "=r"(tpr)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1623:+ asm ("mov %0=cr.lrr0" : "=r"(lrr0)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1624:+ asm ("mov %0=cr.lrr1" : "=r"(lrr1)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-1625-+ kdb_printf("lid=" kdb_machreg_fmt ", tpr=" kdb_machreg_fmt ", lrr0=" kdb_machreg_fmt ", llr1=" kdb_machreg_fmt "\n", lid, tpr, lrr0, lrr1); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-1626-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1627:+ asm ("mov %0=cr.itv" : "=r"(itv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1628:+ asm ("mov %0=cr.pmv" : "=r"(pmv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1629:+ asm ("mov %0=cr.cmcv" : "=r"(cmcv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-1630-+ kdb_printf("itv=" kdb_machreg_fmt ", pmv=" kdb_machreg_fmt ", cmcv=" kdb_machreg_fmt "\n", itv, pmv, cmcv); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-1887-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1888:+ asm ("mov %0=ar.k0" : "=r"(kr[0])); asm ("mov %0=ar.k1" : "=r"(kr[1])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1889:+ asm ("mov %0=ar.k2" : "=r"(kr[2])); asm ("mov %0=ar.k3" : "=r"(kr[3])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1890:+ asm ("mov %0=ar.k4" : "=r"(kr[4])); asm ("mov %0=ar.k5" : "=r"(kr[5])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:1891:+ asm ("mov %0=ar.k6" : "=r"(kr[6])); asm ("mov %0=ar.k7" : "=r"(kr[7])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-1892-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3177-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:3178:+ (i) ar.bsp < ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3179-+ ar.rnat contains the desired bits---preserve ar.rnat ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3181-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:3182:+ (ii) ar.bsp >= ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3183-+ The desired ar.rnat is stored in dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:3184:+ ia64_rse_rnat_addr(jmpbuf.ar_bsp). Load those dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3185-+ bits into ar.rnat after setting ar.bspstore. */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3237-+ ld8.fill.nta gp=[r3],16 // r1 (gp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:3238:+ dep r11=-1,r23,3,6 // r11 <- ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3239-+ ;; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3255-+ ;; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:3256:+(p8) ld8 r26=[r11] // r26 <- *ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-3257-+ mov ar.bspstore=r23 // restore ar.bspstore ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-4065-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:4066:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-4067-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-4170-+ dip->fprintf_func = dip->fprintf_dummy; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1:4171:+ kdba_dis_printaddr(pc+byte, dip); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-ia64-031126-1-4172-+ ret = print_insn_ia64((kdb_machreg_t)(pc+byte), dip); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-92-+++ 22.2/arch/ia64/kernel/traps.c Fri, 03 Oct 2003 15:25:13 +1000 kaos (kdb-2.4-arch-ia64/3_traps.c 1.8 644) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:93:@@ -33,6 +33,9 @@ register double f30 asm ("f30"); registe dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-94- #include <linux/init.h> ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-464-+ struct switch_stack *prev_sw = krp->arch.sw; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:465:+ extern char ia64_leave_kernel[]; /* Need asm address, not function descriptor */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-466-+ KDBA_MCA_TRACE(); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-511-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:512:+ asm volatile (";;flushrs;; mov %0=ar.bsp;;" : "=r"(new_bsp)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-513-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-780-+ . = ALIGN(16); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:781:+ .kdb_initcall.init : AT(ADDR(.kdb_initcall.init) - PAGE_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-782-+ { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-786-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:787: .initcall.init : AT(ADDR(.initcall.init) - PAGE_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-788- { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-15320-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:15321:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-15322-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-15425-+ dip->fprintf_func = dip->fprintf_dummy; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:15426:+ kdba_dis_printaddr(pc+byte, dip); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-15427-+ ret = print_insn_ia64((kdb_machreg_t)(pc+byte), dip); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16310-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16311:+ (i) ar.bsp < ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16312-+ ar.rnat contains the desired bits---preserve ar.rnat ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16314-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16315:+ (ii) ar.bsp >= ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16316-+ The desired ar.rnat is stored in dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16317:+ ia64_rse_rnat_addr(jmpbuf.ar_bsp). Load those dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16318-+ bits into ar.rnat after setting ar.bspstore. */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16370-+ ld8.fill.nta gp=[r3],16 // r1 (gp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16371:+ dep r11=-1,r23,3,6 // r11 <- ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16372-+ ;; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16388-+ ;; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16389:+(p8) ld8 r26=[r11] // r26 <- *ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16390-+ mov ar.bspstore=r23 // restore ar.bspstore ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16579-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16580:+ asm ("mov %0=cr.lid" : "=r"(lid)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16581:+ asm ("mov %0=cr.tpr" : "=r"(tpr)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16582:+ asm ("mov %0=cr.lrr0" : "=r"(lrr0)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16583:+ asm ("mov %0=cr.lrr1" : "=r"(lrr1)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16584-+ kdb_printf("lid=" kdb_machreg_fmt ", tpr=" kdb_machreg_fmt ", lrr0=" kdb_machreg_fmt ", llr1=" kdb_machreg_fmt "\n", lid, tpr, lrr0, lrr1); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16585-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16586:+ asm ("mov %0=cr.itv" : "=r"(itv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16587:+ asm ("mov %0=cr.pmv" : "=r"(pmv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16588:+ asm ("mov %0=cr.cmcv" : "=r"(cmcv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16589-+ kdb_printf("itv=" kdb_machreg_fmt ", pmv=" kdb_machreg_fmt ", cmcv=" kdb_machreg_fmt "\n", itv, pmv, cmcv); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16846-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16847:+ asm ("mov %0=ar.k0" : "=r"(kr[0])); asm ("mov %0=ar.k1" : "=r"(kr[1])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16848:+ asm ("mov %0=ar.k2" : "=r"(kr[2])); asm ("mov %0=ar.k3" : "=r"(kr[3])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16849:+ asm ("mov %0=ar.k4" : "=r"(kr[4])); asm ("mov %0=ar.k5" : "=r"(kr[5])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1:16850:+ asm ("mov %0=ar.k6" : "=r"(kr[6])); asm ("mov %0=ar.k7" : "=r"(kr[7])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.22-ia64-030909-1-16851-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply28-173- mkdir -p debian/image.d dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply28:174: PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1` dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply28:175: PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status` dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/apply28-176- cat > 'debian/image.d/register-kdb' <<EOF ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-1009-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:1010:+ * i386 disasm layout patch from Jean-Marc Saffroy. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-1011-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-1015-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:1016:+ * Enter repeats the last command, IA64 disasm only prints one dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-1017-+ instruction. Don Dugger. ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-1831-+ * have to assume the worst and validate the frame. Some calls from dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:1832:+ * asm code to C code might not use frame pointers. Third party binary dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-1833-+ * only modules might be compiled without frame pointers, even when the ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-2004-+ * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:2005:+ * kdb equivalent of strdup, for disasm code. dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-2006-+ * Inputs: ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-9716-+#define KDB_NOBP (-20) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:9717:+#define KDB_BADADDR (-21) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-9718-+ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-10579-++static inline void * dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:10580:++kludge_copy_addr(int cpu, void *addr, struct task_struct *p) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-10581-++{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-10629-++ */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:10630:++ p_copy = kludge_copy_addr(cpu, p, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-10631-++ sw_new = (struct switch_stack *)((u64)(regs + 1) + 16) - 1; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1:10632:++ sw_copy = kludge_copy_addr(cpu, sw_new, p); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.6.0-test11-common-1-10633-++ // kdb_printf("p_copy 0x%p sw_new 0x%p sw_copy 0x%p\n", p_copy, sw_new, sw_copy); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-92-+++ 21.3/arch/ia64/kernel/traps.c Fri, 11 Jul 2003 11:55:40 +1000 kaos (kdb-2.4-arch-ia64/3_traps.c 1.7 644) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:93:@@ -33,6 +33,9 @@ register double f30 asm ("f30"); registe dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-94- #include <linux/init.h> ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-461-+ struct switch_stack *prev_sw = krp->arch.sw; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:462:+ extern char ia64_leave_kernel[]; /* Need asm address, not function descriptor */ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-463-+ KDBA_MCA_TRACE(); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-705-+ . = ALIGN(16); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:706:+ .kdb_initcall.init : AT(ADDR(.kdb_initcall.init) - PAGE_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-707-+ { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-711-+ } dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:712: .initcall.init : AT(ADDR(.initcall.init) - PAGE_OFFSET) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-713- { ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-15256-+static void dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:15257:+kdba_dis_printaddr(bfd_vma addr, disassemble_info *dip) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-15258-+{ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-15361-+ dip->fprintf_func = dip->fprintf_dummy; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:15362:+ kdba_dis_printaddr(pc+byte, dip); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-15363-+ ret = print_insn_ia64((kdb_machreg_t)(pc+byte), dip); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16246-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16247:+ (i) ar.bsp < ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16248-+ ar.rnat contains the desired bits---preserve ar.rnat ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16250-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16251:+ (ii) ar.bsp >= ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16252-+ The desired ar.rnat is stored in dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16253:+ ia64_rse_rnat_addr(jmpbuf.ar_bsp). Load those dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16254-+ bits into ar.rnat after setting ar.bspstore. */ ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16306-+ ld8.fill.nta gp=[r3],16 // r1 (gp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16307:+ dep r11=-1,r23,3,6 // r11 <- ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16308-+ ;; ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16324-+ ;; dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16325:+(p8) ld8 r26=[r11] // r26 <- *ia64_rse_rnat_addr(jmpbuf.ar_bsp) dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16326-+ mov ar.bspstore=r23 // restore ar.bspstore ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16515-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16516:+ asm ("mov %0=cr.lid" : "=r"(lid)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16517:+ asm ("mov %0=cr.tpr" : "=r"(tpr)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16518:+ asm ("mov %0=cr.lrr0" : "=r"(lrr0)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16519:+ asm ("mov %0=cr.lrr1" : "=r"(lrr1)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16520-+ kdb_printf("lid=" kdb_machreg_fmt ", tpr=" kdb_machreg_fmt ", lrr0=" kdb_machreg_fmt ", llr1=" kdb_machreg_fmt "\n", lid, tpr, lrr0, lrr1); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16521-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16522:+ asm ("mov %0=cr.itv" : "=r"(itv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16523:+ asm ("mov %0=cr.pmv" : "=r"(pmv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16524:+ asm ("mov %0=cr.cmcv" : "=r"(cmcv)); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16525-+ kdb_printf("itv=" kdb_machreg_fmt ", pmv=" kdb_machreg_fmt ", cmcv=" kdb_machreg_fmt "\n", itv, pmv, cmcv); ############################################## dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16780-+ dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16781:+ asm ("mov %0=ar.k0" : "=r"(kr[0])); asm ("mov %0=ar.k1" : "=r"(kr[1])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16782:+ asm ("mov %0=ar.k2" : "=r"(kr[2])); asm ("mov %0=ar.k3" : "=r"(kr[3])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16783:+ asm ("mov %0=ar.k4" : "=r"(kr[4])); asm ("mov %0=ar.k5" : "=r"(kr[5])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2:16784:+ asm ("mov %0=ar.k6" : "=r"(kr[6])); asm ("mov %0=ar.k7" : "=r"(kr[7])); dh-kpatches-0.100.1+nmu1/tmp/kernel-patch-kdb/kdb-v4.3-2.4.21-ia64-030702-2-16785-+ ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.html-375-mkdir -p debian/image.d dh-kpatches-0.100.1+nmu1/dh-kpatches.html:376:PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1` dh-kpatches-0.100.1+nmu1/dh-kpatches.html:377:PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status` dh-kpatches-0.100.1+nmu1/dh-kpatches.html-378-cat > 'debian/image.d/register-<I><FONT COLOR="#B22222">#PATCHID#' <<EOF ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.html-620- <B><FONT COLOR="#A020F0">die</FONT></B> <B><FONT COLOR="#BC8F8F">"Diff file changes EXTRAVERSION: "</FONT></B> . $operation->{<B><FONT COLOR="#BC8F8F">'diff-file'</FONT></B>} dh-kpatches-0.100.1+nmu1/dh-kpatches.html:621: <B><FONT COLOR="#A020F0">if</FONT></B> 0 == system (<B><FONT COLOR="#BC8F8F">'grep -q "^-EXTRAVERSION\>" '</FONT></B> . $operation->{<B><FONT COLOR="#BC8F8F">'diff-file'</FONT></B>}); dh-kpatches-0.100.1+nmu1/dh-kpatches.html-622- } ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-277- my $dep = basename ($applyscript); dh-kpatches-0.100.1+nmu1/dh-kpatches.nw:278: system ("${TOPPATCHDIR}/$applyscript") == 0 dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-279- or die "Error running ${TOPPATCHDIR}/$applyscript"; ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-335-system ("mkdir -p debian/image.d"); dh-kpatches-0.100.1+nmu1/dh-kpatches.nw:336:my $PKGNAME=`dpkg -S $PATCHFILE | cut -d: -f1`; dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-337-chomp $PKGNAME; dh-kpatches-0.100.1+nmu1/dh-kpatches.nw:338:my $PKGVERS=`grep-dctrl -n -P $PKGNAME -s Version -X /var/lib/dpkg/status`; dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-339-chomp $PKGVERS; ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-430-our ($PATCHFILE,$STRIPLEVEL,@DEPENDS,$DEPENDS); dh-kpatches-0.100.1+nmu1/dh-kpatches.nw:431:if ( `wc -l < $STAMP` != 1 ) { dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-432- while (<STAMP>) { ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-457- unless -x "${TOPPATCHDIR}/$dep"; dh-kpatches-0.100.1+nmu1/dh-kpatches.nw:458: system ("${TOPPATCHDIR}/$dep") == 0 dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-459- or die "error unpatching $dep"; ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-474- dh-kpatches-0.100.1+nmu1/dh-kpatches.nw:475:system ("$DECOMPRESSOR $PATCHFILE | patch -R -p$STRIPLEVEL $PATCH_OPTIONS") == 0 dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-476- or die "unpatching failed"; ############################################## dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-577- die "Diff file changes EXTRAVERSION: " . $operation->{'diff-file'} dh-kpatches-0.100.1+nmu1/dh-kpatches.nw:578: if 0 == system ('grep -q "^-EXTRAVERSION\>" ' . $operation->{'diff-file'}); dh-kpatches-0.100.1+nmu1/dh-kpatches.nw-579- }