sqlplus segfaults when receiving INT signal
Chagin Dmitry
dchagin at freebsd.org
Sun Sep 14 08:20:34 UTC 2008
On Sat, Sep 13, 2008 at 10:55:17PM +0200, Jose Garcia Juanino wrote:
> El s?bado 13 de septiembre a las 10:51:08 CEST, Chagin Dmitry escribi?:
> > On Sat, Sep 13, 2008 at 10:44:13AM +0200, Jose Garcia Juanino wrote:
> > >
> > > Thank you for your response.
> > >
> > > The output is:
> > >
> > > # uname -vp
> > > FreeBSD 7.0-RELEASE-p4 #3: Thu Sep 4 08:54:56 CEST 2008 root@<snipped>:/usr/obj/src/sys/MK2008Jun06 i386
> > >
> > > [ .... ]
> > >
> >
> > thnx, I believe you problem already fixed at 07.09.08,
> > please cvsup and try yet...
>
> I have done that now, but sadly, there is no difference with 7.0:
>
> $ uname -r
> 7.1-PRERELEASE
>
> $ /compat/linux/usr/lib/oracle/10.2.0.3/client/bin/sqlplus /nolog
>
> SQL*Plus: Release 10.2.0.3.0 - Production on Sat Sep 13 20:47:47 2008
>
> Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
>
> SQL> [hit CTRL+C]
> Segmentation fault
>
thnx! on amd64 I can't repeat this:
dchagin# chroot /compat/linux /bin/bash
bash-3.2#
bash-3.2# uname -a
Linux dchagin.dialup.corbina.ru 2.6.16 FreeBSD 8.0-CURRENT #2: Fri Sep 12 10:36:
07 MSD 2008 i686 i686 i386 GNU/Linux
bash-3.2#
bash-3.2# sqlplus /nolog
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Sep 14 08:10:40 2008
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
SQL> ^C
SQL>
but I see strange behaviour of read() call:
1428 sqlplus 6.276496 CALL write(0x1,0x28066000,0x5)
1428 sqlplus 6.276514 GIO fd 1 wrote 5 bytes
"SQL> "
1428 sqlplus 6.276526 RET write 5
1428 sqlplus 6.276545 CALL read(0,0x28067000,0x1000)
1428 sqlplus 21.321774 RET read -1 errno 1 (EPERM) Operation not permitted
1428 sqlplus 21.321832 PSIG SIGINT caught handler=0x28c06c2c code=0x0
1428 sqlplus 21.321856 CALL linux_rt_sigprocmask(SIG_BLOCK,0xffff8de8,0,0x8)
1428 sqlplus 21.321867 RET linux_rt_sigprocmask 0
1428 sqlplus 21.321877 CALL linux_rt_sigprocmask(SIG_UNBLOCK,0xffff8de8,0,0x8)
1428 sqlplus 21.321886 RET linux_rt_sigprocmask 0
1428 sqlplus 21.321896 CALL linux_rt_sigreturn(0xffff8f4c)
1428 sqlplus 21.321905 RET linux_rt_sigreturn -1 errno 2 (ENOENT) No such fil
1428 sqlplus 21.321913 CALL read(0,0x28067000,0x1000)
1428 sqlplus 23.893183 GIO fd 0 read 1 byte
at least, EPERM is not EINTR :)
I will check up it on i386 later. thnx Jose :)
--
Have fun!
chd
More information about the freebsd-emulation
mailing list