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

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: