Re: Announce: kdb v4.4 is available for kernel 2.6.16

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 1 Apr 2006, Dan Aloni wrote:
> 
> Thanks for this new version, however I'm looking forward to see
> kdb maintained also for the x86_64 architecture. Currently I have 
> got as far as forward-porting it to a level where it "works" except 
> for one annoying issue where setjmp/longjmp looks to be broken:
> 
> Kernel configured with CONFIG_FRAME_POINTER=y,

I've not tried latest kdb, but you should find the patch below still
works (removing that unnecessary KDB_STATE_SET(LONGJMP) is probably
irrelevant, just something I did on the way, and which does no harm).

Hugh

--- 2.6.13-kdb/arch/x86_64/kdb/kdbasupport.c	2005-09-09 12:34:43.000000000 +0100
+++ fixed/arch/x86_64/kdb/kdbasupport.c	2005-08-30 15:10:20.000000000 +0100
@@ -1035,14 +1004,15 @@ kdba_setjmp(kdb_jmp_buf *jb)
 {
 #if defined(CONFIG_FRAME_POINTER)
 	__asm__("movq %rbx, (0*8)(%rdi);"
-		"movq %rbp, (1*8)(%rdi);"
+		"movq (%rsp), %rax;"
+		"movq %rax, (1*8)(%rdi);"
 		"movq %r12, (2*8)(%rdi);"
 		"movq %r13, (3*8)(%rdi);"
 		"movq %r14, (4*8)(%rdi);"
 		"movq %r15, (5*8)(%rdi);"
 		"leaq 16(%rsp), %rdx;"
 		"movq %rdx, (6*8)(%rdi);"
-		"movq (%rsp), %rax;"
+		"movq 8(%rsp), %rax;"
 		"movq %rax, (7*8)(%rdi)");
 #else	 /* CONFIG_FRAME_POINTER */
 	__asm__("movq %rbx, (0*8)(%rdi);"
@@ -1056,7 +1026,6 @@ kdba_setjmp(kdb_jmp_buf *jb)
 		"movq (%rsp), %rax;"
 		"movq %rax, (7*8)(%rdi)");
 #endif   /* CONFIG_FRAME_POINTER */
-	KDB_STATE_SET(LONGJMP);
 	return 0;
 }
 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux