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, Apr 01, 2006 at 08:04:30PM +0300, Dan Aloni wrote:
> > Current versions are :-
> > 
> >   kdb-v4.4-2.6.16-common-1.bz2
> >   kdb-v4.4-2.6.16-i386-1.bz2
> >   kdb-v4.4-2.6.16-ia64-1.bz2
> 
> 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:

Problem is due to the mixed C/asm implementation of setjmp/longjmp.
Replace that with one written entirely in assemply and it will work.
Here's mine:

/* setjmp / longjmp for the kernel.
 * Inspired by the glibc version.
 */
	.text
	.globl	__kernel_setjmp
	.p2align 4
__kernel_setjmp:
	movq	%rbx,0x0(%rdi)
	movq	%rbp,0x8(%rdi)
	movq	%r12,0x10(%rdi)
	movq	%r13,0x18(%rdi)
	movq	%r14,0x20(%rdi)
	movq	%r15,0x28(%rdi)
	leaq	0x8(%rsp),%rdx
	movq	%rdx,0x30(%rdi)
	movq	(%rsp),%rax
	movq	%rax,0x38(%rdi)
	xorq	%rax,%rax
	ret

	.globl	__kernel_longjmp
__kernel_longjmp:
	movq	0x0(%rdi),%rbx
	movq	0x8(%rdi),%rbp
	movq	0x10(%rdi),%r12
	movq	0x18(%rdi),%r13
	movq	0x20(%rdi),%r14
	movq	0x28(%rdi),%r15
	test	%esi,%esi
	mov	$1,%eax
	cmove	%eax,%esi
	mov	%esi,%eax
	movq	0x38(%rdi),%rdx
	movq	0x30(%rdi),%rsp
	jmpq	*%rdx
-
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