Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 21 Aug 2004 06:50:39 +1000
From:      Peter Jeremy <PeterJeremy@optushome.com.au>
To:        freebsd-stable@freebsd.org
Subject:   Excessive fdisk(8) delays
Message-ID:  <20040820205038.GN423@cirb503493.alcatel.com.au>

next in thread | raw e-mail | index | archive | help
I haven't noticed this before and don't recall it being mentioned before...

I just did an 'fdisk ad1' whilst ad0 was being hammered and the fdisk
spat out all the expected information then hung (in "atalck") for
about 4½ minutes before exiting.  This was repeatable and very
disconcerting the first time.

Background: The system is an AMD Athlon-XP running -STABLE from the
beginning of August with two 100GB WD drives running at UDMA100
attached to channel 0 of a VIA VT8233A.  The "hammering" was a dd of
the raw disk, a "find /" and a "cvs update" (systat -v report 100%
utilisation of ad0).

A quick check of the code shows "atalck" is used within ATA_SLEEPLOCK_CH
to wait for the channel to be come idle and this macro is used fairly
extensively within the ata code.  Having I/O requests queued for over
4 minutes seems excessive - how difficult would it be for the ata code
to better round-robin requests?  (Possibly via a wakeup at the end of
ata_start()).

-- 
Peter Jeremy



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040820205038.GN423>