Messages in this thread | | | Date | Mon, 28 Jun 2010 18:32:40 -0400 | From | Jeff Garzik <> | Subject | Re: [PATCH 33/35] libata: take advantage of cmwq and remove concurrency limitations |
| |
On 06/28/2010 05:04 PM, Tejun Heo wrote: > libata has two concurrency related limitations. > > a. ata_wq which is used for polling PIO has single thread per CPU. If > there are multiple devices doing polling PIO on the same CPU, they > can't be executed simultaneously. > > b. ata_aux_wq which is used for SCSI probing has single thread. In > cases where SCSI probing is stalled for extended period of time > which is possible for ATAPI devices, this will stall all probing. > > #a is solved by increasing maximum concurrency of ata_wq. Please note > that polling PIO might be used under allocation path and thus needs to > be served by a separate wq with a rescuer. > > #b is solved by using the default wq instead and achieving exclusion > via per-port mutex. > > Signed-off-by: Tejun Heo<tj@kernel.org> > Cc: Jeff Garzik<jgarzik@pobox.com>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
| |