Date: Thu, 5 Apr 2012 08:55:37 -0700 From: Jerry Toung <jrytoung@gmail.com> To: Alexander Leidinger <Alexander@leidinger.net> Cc: freebsd-hackers <freebsd-hackers@freebsd.org> Subject: Re: CAM disk I/O starvation Message-ID: <CADC0LV=5BbAhSYj%2BTyf%2BQQ_yFR9YRiA94WnUMNyLZXbetsdgRg@mail.gmail.com> In-Reply-To: <20120405052246.00002c53@unknown> References: <CADC0LV=-e%2B7PshRQdc69e2-Vktf6XFpVrqiMpx=QL4m_%2B9hSnw@mail.gmail.com> <20120403193124.46ad9de9@ernst.jennejohn.org> <CADC0LVm1HY2Dz%2BVk_GK35szRS6ySviLhMiL1TSRBOnPwQnBwRg@mail.gmail.com> <20120405052246.00002c53@unknown>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Apr 4, 2012 at 8:22 PM, Alexander Leidinger <Alexander@leidinger.net > wrote: > > This looks fair if all your disks are working at the same time (e.g. > RAID only setup), but if you have a setup where you have multiple > disks and only one is doing something, you limit the amount of tags > which can be used. No idea what kind of performance impact this would > have. > > I haven't seen any performance impact. da1, the one the used to stall consistenly get over 600MB/s. > What about the case where you have more disks than tags? > This part of the patch takes care of that scenario: @@ -998,6 +1003,24 @@ xpt_add_periph(struct cam_periph *periph mtx_lock(&xsoftc.xpt_topo_lock); xsoftc.xpt_generation++; + + if (device != NULL && device->sim->dev_count > 1 && + (device->sim->max_dev_openings > device->sim->dev_count)) { otherwise, we don't split the tags and the original behavior remains. > > I also noticed that you do a strncmp for "da". What about > "ada" (available in 9 and 10), I would assume it suffers from the same > problem. > I am running FreeBSD 8.1, no "ada". Me presenting a patch is just a way to draw attention on a problem and it improves things on my setup. There is certainly a way to make it more general/inclusive. Jerry
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADC0LV=5BbAhSYj%2BTyf%2BQQ_yFR9YRiA94WnUMNyLZXbetsdgRg>