Summary: with bleedin edge kernel first process accessing raid
is struck at R state and after that processes are struc at D
state. Not always repeatable. Try with bonnie -s 2047.

Kernel is v2.2.2pre2 with 2.2.1.uniform-ide-6.19.patch,
raid0145-19990128-2.2.0, and Stephen C. Tweedie's
<[EMAIL PROTECTED]> to enable running
bonnie at raid. Guess this is not so good.

I noticed problem when I made a script to make new raid with
differend parameters and run bonnie with different sizes on it.

And to complify the issue, processes are not struck at R state,
they get some processor power, but seems all processes accessing
raid are struck. And every process accessing raid is struc at D
state. ls is struck at getdents. 

This has happened 2 times now, first was block size 1k chunk
size 4k (bonnie -s 1000). And now with block 1k and chunk 64k.

Couple of hours before
  623  a1 R N 17:36 bonnie -s 2047

Now
  623  a1 R N 17:40 bonnie -s 2047 
  759  a1 D    0:00 ls -ltr /mnt/raid/ 

Now I need some help to debug this. Enyone else seeing this?

dmesg
------------------------------------------------------------------------
Linux version 2.2.2 (root@localhost) (gcc version 2.7.2.3) #1 Sun Feb 7 01:19:38 EET 
1999
Detected 300683455 Hz processor.
Console: colour VGA+ 80x25
Allocating 320KB for IO-trace ringbuffer
Calibrating delay loop... 599.65 BogoMIPS
Memory: 127712k/131072k available (848k kernel code, 408k reserved, 2068k data, 36k 
init)
VFS: Diskquotas version dquot_6.4.0 initialized
CPU: AMD AMD-K6(tm) 3D processor stepping 00
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.
Linux NET4.0 for Linux 2.2
Based upon Swansea University Computer Society NET3.039
NET4: Unix domain sockets 1.0 for Linux NET4.0.
NET4: Linux TCP/IP 1.0 for NET4.0
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
Real Time Clock Driver v1.09
Uniform Multi-Platform E-IDE driver Revision: 6.19
VP_IDE: IDE controller on PCI bus 00 dev 39
VP_IDE: not 100% native mode: will probe irqs later
Split FIFO Configuration:  8 Primary buffers, threshold = 1/2
                           8 Second. buffers, threshold = 1/2
    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
PDC20246: IDE controller on PCI bus 00 dev 48
PDC20246: not 100% native mode: will probe irqs later
PDC20246: ROM enabled at 0xe9000000
PDC20246: (U)DMA Burst Bit ENABLED Primary PCI Mode Secondary PCI Mode.
    ide2: BM-DMA at 0xd800-0xd807, BIOS settings: hde:DMA, hdf:DMA
    ide3: BM-DMA at 0xd808-0xd80f, BIOS settings: hdg:DMA, hdh:DMA
keyboard: Too many NACKs -- noisy kbd cable?
keyboard: Too many NACKs -- noisy kbd cable?
hda: FUJITSU MPC3032AT, ATA DISK drive
hdc: IBM-DTTA-351350, ATA DISK drive
hde: IBM-DTTA-351350, ATA DISK drive
hdf: IBM-DTTA-351350, ATA DISK drive
hdg: IBM-DTTA-351350, ATA DISK drive
hdh: 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,0xcc06 on irq 10
ide3 at 0xd000-0xd007,0xd406 on irq 10
hda: FUJITSU MPC3032AT, 3093MB w/0kB Cache, CHS=785/128/63, UDMA
hdc: IBM-DTTA-351350, 8063MB w/464kB Cache, CHS=16383/16/63, UDMA
hde: IBM-DTTA-351350, 8063MB w/464kB Cache, CHS=16383/16/63, UDMA
hdf: IBM-DTTA-351350, 8063MB w/464kB Cache, CHS=16383/16/63, UDMA
hdg: IBM-DTTA-351350, 8063MB w/464kB Cache, CHS=16383/16/63, UDMA
hdh: IBM-DTTA-351350, 8063MB w/464kB Cache, CHS=16383/16/63, UDMA
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
md driver 0.90.0 MAX_MD_DEVS=256, MAX_REAL=12
raid5 personality registered
raid5: measuring checksumming speed
raid5: using high-speed MMX checksum routine
   pII_mmx   :   650.748 MB/sec
   p5_mmx    :   574.548 MB/sec
   8regs     :   456.438 MB/sec
   32regs    :   309.372 MB/sec
using fastest function: pII_mmx (650.748 MB/sec)
Partition check:
 hda: hda1 hda2 < hda5 hda6 hda7 hda8 >
 hdc: hdc1
 hde: hde1
 hdf: hdf1
 hdg: hdg1
 hdh: hdh1
autodetecting RAID arrays
(read) hdc1's sb offset: 13207168 [events: 00000002]
(read) hde1's sb offset: 13207168 [events: 00000002]
(read) hdf1's sb offset: 13207168 [events: 00000002]
(read) hdg1's sb offset: 13207168 [events: 00000002]
(read) hdh1's sb offset: 13207168 [events: 00000002]
autorun ...
considering hdh1 ...
  adding hdh1 ...
  adding hdg1 ...
  adding hdf1 ...
  adding hde1 ...
  adding hdc1 ...
created md0
bind<hdc1,1>
bind<hde1,2>
bind<hdf1,3>
bind<hdg1,4>
bind<hdh1,5>
running: <hdh1><hdg1><hdf1><hde1><hdc1>
now!
hdh1's event counter: 00000002
hdg1's event counter: 00000002
hdf1's event counter: 00000002
hde1's event counter: 00000002
hdc1's event counter: 00000002
md0: max total readahead window set to 512k
md0: 4 data-disks, max readahead per data-disk: 128k
raid5: device hdh1 operational as raid disk 4
raid5: device hdg1 operational as raid disk 3
raid5: device hdf1 operational as raid disk 2
raid5: device hde1 operational as raid disk 1
raid5: device hdc1 operational as raid disk 0
raid5: allocated 5299kB for md0
raid5: raid level 5 set md0 active with 5 out of 5 devices, algorithm 2
RAID5 conf printout:
 --- rd:5 wd:5 fd:0
 disk 0, s:0, o:1, n:0 rd:0 us:1 dev:hdc1
 disk 1, s:0, o:1, n:1 rd:1 us:1 dev:hde1
 disk 2, s:0, o:1, n:2 rd:2 us:1 dev:hdf1
 disk 3, s:0, o:1, n:3 rd:3 us:1 dev:hdg1
 disk 4, s:0, o:1, n:4 rd:4 us:1 dev:hdh1
 disk 5, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 6, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 7, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 8, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 9, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 10, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 11, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
RAID5 conf printout:
 --- rd:5 wd:5 fd:0
 disk 0, s:0, o:1, n:0 rd:0 us:1 dev:hdc1
 disk 1, s:0, o:1, n:1 rd:1 us:1 dev:hde1
 disk 2, s:0, o:1, n:2 rd:2 us:1 dev:hdf1
 disk 3, s:0, o:1, n:3 rd:3 us:1 dev:hdg1
 disk 4, s:0, o:1, n:4 rd:4 us:1 dev:hdh1
 disk 5, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 6, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 7, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 8, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 9, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 10, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
 disk 11, s:0, o:0, n:0 rd:0 us:0 dev:[dev 00:00]
md: updating md0 RAID superblock on device
hdh1 [events: 00000003](write) hdh1's sb offset: 13207168
hdg1 [events: 00000003](write) hdg1's sb offset: 13207168
hdf1 [events: 00000003](write) hdf1's sb offset: 13207168
hde1 [events: 00000003](write) hde1's sb offset: 13207168
hdc1 [events: 00000003](write) hdc1's sb offset: 13207168
.
... autorun DONE.
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 36k freed
Adding Swap: 130748k swap-space (priority -1)
------------------------------------------------------------------------

tst_raid
------------------------------------------------------------------------
#!/bin/sh
# Test raid, Markus Linnala <[EMAIL PROTECTED]> February 8 1999

#set -x
PATH=$PATH:/sbin:/usr/sbin

DEV=/dev/md0
MNT=/mnt/raid
LOGPREFIX=/tmp/BT1_ide_6_19_raid_0_90

export inode block chunk stride DEV MNT LOGPREFIX MKFS_PARAMS

function do_bonnie () {
#1 2 4 8 16 32 64 100 128 200 256 300 400 500 512 600 700 800 900 1000 1024 1500 2000 
2047
(
cd $MNT
for a in 8 16 32 64 100 200 300 400 500 700 1000 1500 2047
do
        sync
        bonnie -s $a
done) | tee $LOGPREFIX.$inode.$block.$chunk
}

function do_start () {
        echo "Start"
        mkraid --really-force $DEV
        raidstart $DEV
        mke2fs $MKFS_PARAMS $DEV
        mount $DEV $MNT
}

function do_stop () {
        echo "Stop"
        umount $DEV
        raidstop -a $DEV
}

function do_raidtab () {
        echo "Raidtab"
        perl -pe 's/\@CS\@/$ENV{chunk}/' < /etc/raidtab.in > /etc/raidtab
}

function do_main () {
cd /

for inode in 4096 16384; do
for block in 1024 2048 4096; do
for chunk in 16 64 256;do

stride=`expr $chunk \* 1024 \/ $block`
MKFS_PARAMS="-i $inode -b $block -R stride=$stride"

do_raidtab
do_start
do_bonnie
do_stop

done
done
done
}

do_main
------------------------------------------------------------------------

-- 
//Markus

Reply via email to