2.4.18 IDE channels block each other under load?
Hi,
I'm by no means an expert in this, just a guess:
Quoted 13 lines · T.Raykoff
This lockup only happens under write load. Heavy reads don't cause the prob. Hmmmm.
Not sure that it really is memory thrashing. The box is unloaded and really has about 1GB free, to use for buffer as it sees fit. No I/O to the swap file going on, cause there is no mounted swap.
Check this out:
dd if=/dev/zero of=/dev/hda bs=1024
then:
Quoted 8 lines
fdisk
/dev/hdc"q"
fdisk blocks in the
close()call.... for well over 15 minutes!As soon as dd ends cause
/dev/hdais at EOF,fisk::close()returns in a moment.
When you quit from fdisk it does a sync() right after the close(). I suspect that fdisk gets stuck in that sync() rather than close(). (You said strace reported close() as the last syscall - it's the last one completed.) The write on one of the channels doesn't let sync() return.
To make sure I'd try to check (e.g. with /proc/<pid>/fd) if fdisk still has /dev/hdc open during the dd.
Cheers,
Roman.