2.2.0-pre4 kills random processes at heavy disk(raid5) io

Markus Linnala (maage@cs.tut.fi)
05 Jan 1999 21:24:28 +0200


2.2.0-pre4 kills random processes at heavy disk(raid5) io. It is
generally repeatable.

I'm very interested about any tips how to tune MM not to make
this happen.

How to make it happen:
- change bonnie to start at write intelligently stage
- cd to your raid5 device
- ./maage_bon -s 500 & ./maage_bon -s 500
and after couple of seconds:

Out of memory for maage_bon.

Out of memory for maage_bon.

or any other process including init. :(

$ cat /proc/meminfo
total: used: free: shared: buffers: cached:
Mem: 64897024 63221760 1675264 2801664 41943040 6111232
Swap: 133885952 3084288 130801664
MemTotal: 63376 kB
MemFree: 1636 kB
MemShared: 2736 kB
Buffers: 40960 kB
Cached: 5968 kB
SwapTotal: 130748 kB
SwapFree: 127736 kB

$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 5
model : 8
model name : AMD-K6(tm) 3D processor
stepping : unknown
cpu MHz : 300.688655
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 sep mmx 3dnow
bogomips : 599.65

$ dmesg
Linux version 2.2.0-pre4 (root@localhost) (gcc version 2.7.2.3) #2
Mon Jan 4 17:28:02 EET 1999
Detected 300688655 Hz processor.
ide_setup: ide1=autotune
ide_setup: ide2=autotune
ide_setup: ide3=autotune
Console: colour VGA+ 80x25
Calibrating delay loop... 599.65 BogoMIPS
Memory: 63340k/65536k available (776k kernel code, 412k reserved, 972k data, 36k
init)
CPU: AMD AMD-K6(tm) 3D processor
Checking 386/387 coupling... OK, FPU using exception 16 error reporting.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
PCI: PCI BIOS revision 2.10 entry at 0xfb210
PCI: Using configuration type 1
PCI: Probing PCI hardware
PCI: 00:38 [1106/0586]: Work around ISA DMA hangs (00)
Activating ISA DMA hang workarounds.
Swansea University Computer Society NET3.039 for Linux 2.1
NET3: Unix domain sockets 0.16 for Linux NET3.038.
Swansea University Computer Society TCP/IP for NET3.037
IP Protocols: ICMP, UDP, TCP, IGMP
Initializing RT netlink socket
Starting kswapd v 1.5
Serial driver version 4.27 with no serial options enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
pty: 256 Unix98 ptys configured
Real Time Clock Driver v1.09
VP_IDE: IDE controller on PCI bus 00 dev 39
VP_IDE: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0xc000-0xc007, BIOS settings: hda:DMA, hdb:DMA
ide0: VIA Bus-Master (U)DMA Timing Config Success
ide1: BM-DMA at 0xc008-0xc00f, BIOS settings: hdc:DMA, hdd:DMA
ide1: VIA Bus-Master (U)DMA Timing Config Success
AEC6210: IDE controller on PCI bus 00 dev 48
AEC6210: not 100% native mode: will probe irqs later
AEC6210: ROM enabled at 0xe9000000
ide2: BM-DMA at 0xd800-0xd807, BIOS settings: hde:pio, hdf:pio
ide3: BM-DMA at 0xd808-0xd80f, BIOS settings: hdg:pio, hdh:pio
hda: FUJITSU MPC3032AT, ATA DISK drive
hdb: IBM-DTTA-351350, ATA DISK drive
hdc: IBM-DTTA-351350, ATA DISK drive
hdd: IBM-DTTA-351350, ATA DISK drive
hde: IBM-DTTA-351350, ATA DISK drive
hdg: IBM-DTTA-351350, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
ide2 at 0xc800-0xc807,0xcc02 on irq 10
ide3 at 0xd000-0xd007,0xd402 on irq 10 (shared with ide2)
hda: FUJITSU MPC3032AT, 3093MB w/0kB Cache, CHS=785/128/63, UDMA
hdb: IBM-DTTA-351350, 12897MB w/464kB Cache, CHS=26205/16/63, UDMA
hdc: IBM-DTTA-351350, 12897MB w/464kB Cache, CHS=26205/16/63, UDMA
hdd: IBM-DTTA-351350, 12897MB w/464kB Cache, CHS=26205/16/63, UDMA
hde: IBM-DTTA-351350, 12897MB w/464kB Cache, CHS=26205/16/63, UDMA
hdg: IBM-DTTA-351350, 12897MB w/464kB Cache, CHS=26205/16/63, UDMA
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
md driver 0.36.6 MAX_MD_DEV=4, MAX_REAL=8
raid5 personality registered
Partition check:
hda: hda1 hda2 < hda5 hda6 hda7 hda8 >
hdb: hdb1 < hdb5 >
hdc: hdc1 < hdc5 >
hdd: hdd1 < hdd5 >
hde: hde1 < hde5 >
hdg: hdg1 < hdg5 >
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 36k freed
Adding Swap: 130748k swap-space (priority -1)
ne.c:v1.10 9/23/94 Donald Becker (becker@cesdis.gsfc.nasa.gov)
NE*000 ethercard probe at 0x220: 00 20 18 61 55 bf
eth0: NE2000 found at 0x220, using IRQ 5.
tty_io.c: process 319 (gpm) used obsolete /dev/cua0 - update software to use /de
v/ttyS0
REGISTER_DEV hdb5 to md0 done
REGISTER_DEV hdc5 to md0 done
REGISTER_DEV hdd5 to md0 done
REGISTER_DEV hde5 to md0 done
REGISTER_DEV hdg5 to md0 done
raid5: device 03:45 operational as raid disk 0
raid5: device 16:05 operational as raid disk 1
raid5: device 16:45 operational as raid disk 2
raid5: device 21:05 operational as raid disk 3
raid5: device 22:05 operational as raid disk 4
raid5: allocated 5306kB for 09:00
raid5: raid level 5 set 09:00 active with 5 out of 5 devices, algorithm 0
md: updating raid superblock on device 03:45, sb_offset == 13207168
md: updating raid superblock on device 16:05, sb_offset == 13207168
md: updating raid superblock on device 16:45, sb_offset == 13207168
md: updating raid superblock on device 21:05, sb_offset == 13207168
md: updating raid superblock on device 22:05, sb_offset == 13207168

$ config
CONFIG_EXPERIMENTAL=y
CONFIG_M586TSC=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_TSC=y
CONFIG_MODULES=y
CONFIG_MODVERSIONS=y
CONFIG_KMOD=y
CONFIG_NET=y
CONFIG_PCI=y
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_QUIRKS=y
CONFIG_SYSVIPC=y
CONFIG_SYSCTL=y
CONFIG_BINFMT_AOUT=m
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_BLK_DEV_IDECD=m
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_AUTO=y
CONFIG_BLK_DEV_VIA82C586=y
CONFIG_IDE_CHIPSETS=y
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
CONFIG_MD_STRIPED=m
CONFIG_MD_MIRRORING=m
CONFIG_MD_RAID5=y
CONFIG_PARIDE_PARPORT=y
CONFIG_PACKET=y
CONFIG_NETLINK=y
CONFIG_RTNETLINK=y
CONFIG_NETLINK_DEV=y
CONFIG_FIREWALL=y
CONFIG_NET_ALIAS=y
CONFIG_FILTER=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_FIREWALL=y
CONFIG_IP_FIREWALL_NETLINK=y
CONFIG_NETLINK_DEV=y
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_IP_ALIAS=y
CONFIG_SYN_COOKIES=y
CONFIG_INET_RARP=m
CONFIG_IP_NOSR=y
CONFIG_SKB_LARGE=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_EL3=m
CONFIG_VORTEX=m
CONFIG_NET_ISA=y
CONFIG_DEPCA=m
CONFIG_NE2000=m
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
CONFIG_NVRAM=m
CONFIG_RTC=y
CONFIG_AUTOFS_FS=m
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_PROC_FS=y
CONFIG_DEVPTS_FS=y
CONFIG_ROMFS_FS=m
CONFIG_EXT2_FS=y
CONFIG_CODA_FS=m
CONFIG_NFS_FS=y
CONFIG_SUNRPC=y
CONFIG_LOCKD=y
CONFIG_SMB_FS=m
CONFIG_NLS=y
CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_737=m
CONFIG_NLS_CODEPAGE_775=m
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_CODEPAGE_852=m
CONFIG_NLS_CODEPAGE_855=m
CONFIG_NLS_CODEPAGE_857=m
CONFIG_NLS_CODEPAGE_860=m
CONFIG_NLS_CODEPAGE_861=m
CONFIG_NLS_CODEPAGE_862=m
CONFIG_NLS_CODEPAGE_863=m
CONFIG_NLS_CODEPAGE_864=m
CONFIG_NLS_CODEPAGE_865=m
CONFIG_NLS_CODEPAGE_866=m
CONFIG_NLS_CODEPAGE_869=m
CONFIG_NLS_CODEPAGE_874=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
CONFIG_NLS_ISO8859_4=m
CONFIG_NLS_ISO8859_5=m
CONFIG_NLS_ISO8859_6=m
CONFIG_NLS_ISO8859_7=m
CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_ISO8859_9=m
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_KOI8_R=m
CONFIG_VGA_CONSOLE=y
CONFIG_VIDEO_SELECT=y
CONFIG_MAGIC_SYSRQ=y

-- 
//Markus

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/