Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Apr 2012 19:31:24 +0200
From:      Gary Jennejohn <gljennjohn@googlemail.com>
To:        Jerry Toung <jrytoung@gmail.com>
Cc:        freebsd-hackers <freebsd-hackers@freebsd.org>
Subject:   Re: CAM disk I/O starvation
Message-ID:  <20120403193124.46ad9de9@ernst.jennejohn.org>
In-Reply-To: <CADC0LV=-e%2B7PshRQdc69e2-Vktf6XFpVrqiMpx=QL4m_%2B9hSnw@mail.gmail.com>
References:  <CADC0LV=-e%2B7PshRQdc69e2-Vktf6XFpVrqiMpx=QL4m_%2B9hSnw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 2 Apr 2012 10:55:31 -0700
Jerry Toung <jrytoung@gmail.com> wrote:

> I am convinced that there is a bug in the CAM code that leads to I/O starvation.
> I have already discussed this privately with some. I am now bringing this up to
> the general audience to get more feedback.
> 

I've observed this with my onboard ATI IXP700 AHCI SATA controller and
2 or 3 SATA disks.  When one disk gets busy all others are pretty much
blocked until it finishes.

Seems to me that this behavior is (fairly) recent.

[snip]

> I have a patch and it fixes those problems. I can share it to the list
> if requested to.
> da0 and da1 now both automatically get 126 openings and based on that,
> extra logic implements fairness in cam/cam_xpt.c. No more 0 MB/s on
> da1. This is on 8.1-RELEASE FreeBSD.
> 

It would be interesting to see your patch.  I always run HEAD but maybe
I could use it as a base for my own mods/tests.

-- 
Gary Jennejohn



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