Re: 2.9test9-mm1 and DAO ATAPI cd-burning corrupt

Martin Josefsson
2003-11-06T18:49:36Z

[-- Attachment #1.1: Type: text/plain, Size: 760 bytes --]

On Thu, 2003-11-06 at 15:38, Prakash K. Cheemplavam wrote:
> Ok, I found the bugger: It *IS* the sheduler. I tried elevator=deadline
> and all stuttering went away. Before I was using as. mm1 used default
> sheduler (as I think) and ther eno probs. So the (updated?) as sheduler
> in mm2 has a problem...

Can you run the attached script when you repeat the test?
With both elevator=deadline and without.

./diskstat.sh hdc

Your problem sounds a little like the one I'm seeing, only I'm seeing it
with both deadline and as. I can't really see if I'm loosing
timer-interrupts or not since the only way I've found to reproduce it is
to recieve a file via network and write it to disk, and that generates
lots of interrupts...

--
/Martin

[-- Attachment #1.2: diskstat.sh --]
[-- Type: text/x-sh, Size: 881 bytes --]

#/bin/bash

num=0
for loop in a b c d e f g h i j k
do
old[$num]=0
num=$(($num + 1))
done

row=0

while true; do grep "$1 " /proc/diskstats | awk '{print $4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14}'; sleep 1; done | while read a b c d e f g h i j k
do
if [ $(($row % 30)) == 0 ]; then
#echo -e "row\treads\trmerge\trsect\trms\t\twrites\twmerge\twsect\twms\t\tio\tms\tms2"
echo -e "row\treads\trmerge\trsect\trms\twrites\twmerge\twsect\twms\tio\tms\tms2"
fi
row=$(($row + 1))

num=0
for loop in a b c d e f g h i j k
do
if [ ${old[$num]} == 0 ]; then
old[$num]=${!loop}
diff[$num]=0
else
diff[$num]=$((${!loop} - ${old[$num]}))
old[$num]=${!loop}
fi
num=$(($num + 1))
done

echo -e "$row\t${diff[0]}\t${diff[1]}\t${diff[2]}\t${diff[3]}\t${diff[4]}\t${diff[5]}\t${diff[6]}\t${diff[7]}\t$i\t${diff[9]}\t${diff[10]}"
done

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]