Re: Bug#221969: libc6.1 2.3.2.ds1-10 & 2.3.2-9 causes Segmentation fault in Java JDK1.3.1 programs on Alpha
Camm, thanks for your test patch, I exactly confirm this bug.
At Fri, 16 Apr 2004 10:35:41 -0400,
Camm Maguire wrote:
> Execution on alpha (escher unstable dchroot):
> rt_sigaction(SIGSEGV, {0x1200006a0, [], SA_RESTART|SA_SIGINFO}, NULL, 8, 0xffffffffffffffff) = 0
> mprotect(0x120012000, 8192, PROT_READ) = 0
> --- SIGSEGV (Segmentation fault) @ 0 (0) ---
> fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
> mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2000001a000
> write(1, "Caught signal\n", 14Caught signal
> ) = 14
> mprotect(0x120012000, 8192, PROT_READ|PROT_WRITE) = 0
> osf_syscall(0x12001cc20, 0x2000, 0x3, 0, 0xffffffffffffffff, 0) = -78
> munmap(0x2000001a000, 8192) = 0
> exit_group(2199025127240) = ?
> camm@escher:~$
>
> =============================================================================
>
> Problem appears to be in osf_syscall on return from the handler.
>
> PLEASE let me know when you think a fix might be at hand, as this is
> keeping several of my packages out of testing.
OK, now I can find the problem. It seems upstream already fixed this
problem.
The problem is appeared that osf_syscall (syscall num 0) is called
instead of rt_sigreturn. I modified sources, then sometimes it's
called mknod() and so on. But I use sigaction() without SA_SIGINFO,
it works fine. This means
sysdeps/unix/sysv/linux/alpha/rt_sigaction.S is broken for
rt_sigreturn. The upstream fixed this problem with the latest cvs.
I've put such modification for debian cvs:
debian/patches/alpha-rtsigaction-fix.dpatch.
Regards,
-- gotom
Reply to: