Linux 1.3.38 still crashes in readv

Snow Cat (snowcat@gd.cs.CSUFresno.EDU)
Wed, 8 Nov 1995 00:58:01 -0800 (PST)


Hi,

Can anyone check if it's reality or it happens only to me:

Setup:
linux 1.3.38
ppp and dummy network configured into kernel
libc 5.2.11
XFree86 3.1.2
emacs 19.29

Then run emacs from X windows. If everything goes right your system should
freeze and respond only to reset button. The same happens if I do:

Xvfb :0 &
emacs -display :0

Since Xvfb is not a setuid program, it's bugs shouldn't crash the system,
right?

I wrote a small library to trace all calls to readv and the system freezes
in the middle of the following call:

readv(4,iovec,2)
iovec[0]: base = 81A2EC1 len = 54
iovec[1]: base = BFFFEC20 len = 2

4 is a connected UNIX domain socket for /tmp/.X11-unix/X0; just before
reading emacs writes to it a bunch of data.

Pressing Ctrl-ScrolLock on hung system shows emacs process and permanently
current.

I wrote a small program readv'ing from a UNIX domain socket and it worked fine.
So do other programs on the system, including XEmacs 19.13.

Here is my full kernel configuration if anyone finds it useful :)

#
# Automatically generated make config: don't edit
#

#
# General setup
#
# CONFIG_MATH_EMULATION is not set
CONFIG_NET=y
# CONFIG_MAX_16M is not set
# CONFIG_PCI is not set
CONFIG_SYSVIPC=y
CONFIG_BINFMT_ELF=y
CONFIG_KERNEL_ELF=y
CONFIG_M486=y

#
# Loadable module support
#
# CONFIG_MODVERSIONS is not set

#
# block devices
#
CONFIG_BLK_DEV_FD=y
CONFIG_ST506=y

#
# Please see drivers/block/README.ide for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_XD is not set

#
# Networking options
#
# CONFIG_FIREWALL is not set
CONFIG_INET=y
# CONFIG_IP_FORWARD is not set
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ACCT is not set
# CONFIG_NET_IPIP is not set

#
# (it is safe to leave these untouched)
#
# CONFIG_INET_PCTCP is not set
# CONFIG_INET_RARP is not set
# CONFIG_INET_SNARL is not set
CONFIG_TCP_NAGLE_OFF=y
CONFIG_IP_NOSR=y
CONFIG_SKB_LARGE=y
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_AX25 is not set
# CONFIG_NETLINK is not set

#
# SCSI support
#
# CONFIG_SCSI is not set

#
# Network device support
#
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
# CONFIG_SLIP is not set
CONFIG_PPP=y

#
# CCP compressors for PPP are only built as modules.
#
# CONFIG_SCC is not set
# CONFIG_PLIP is not set
# CONFIG_EQUALIZER is not set
# CONFIG_NET_ALPHA is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_NET_ISA is not set
# CONFIG_NET_EISA is not set
# CONFIG_NET_POCKET is not set
# CONFIG_TR is not set
# CONFIG_ARCNET is not set

#
# CD-ROM drivers (not for SCSI or IDE/ATAPI drives)
#
# CONFIG_CD_NO_IDESCSI is not set

#
# Filesystems
#
# CONFIG_MINIX_FS is not set
# CONFIG_EXT_FS is not set
CONFIG_EXT2_FS=y
# CONFIG_XIA_FS is not set
CONFIG_MSDOS_FS=y
# CONFIG_UMSDOS_FS is not set
CONFIG_PROC_FS=y
CONFIG_NFS_FS=y
CONFIG_ISO9660_FS=y
# CONFIG_HPFS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_SMB_FS is not set

#
# character devices
#
# CONFIG_CYCLADES is not set
# CONFIG_STALDRV is not set
CONFIG_PRINTER=y
# CONFIG_BUSMOUSE is not set
# CONFIG_PSMOUSE is not set
# CONFIG_MS_BUSMOUSE is not set
# CONFIG_ATIXL_BUSMOUSE is not set
# CONFIG_QIC02_TAPE is not set

#
# Sound
#
CONFIG_SOUND=y

#
# Kernel hacking
#
# CONFIG_PROFILE is not set



-- 
     Snow ^oo^ Cat <snowcat@gd.cs.CSUFresno.EDU>
      _  ->  <-    aka Oleg Kibirev <oleg@gd.cs.CSUFresno.EDU>
  ___(_)  _ _)_    
 /            _)   finger oleg@gd.cs.CSUFresno.EDU for PGP public key
 \_.-._
       |___/	Purr!