Re: [PATCH 4/7] libata: use lazy workqueues for the pio task

From: John Stoffel
Date: Mon Aug 24 2009 - 12:46:38 EST

>>>>> "Jeff" == Jeff Garzik <jeff@xxxxxxxxxx> writes:

Jeff> On 08/24/2009 03:56 AM, Jens Axboe wrote:
>> Signed-off-by: Jens Axboe<jens.axboe@xxxxxxxxxx>
>> ---
>> drivers/ata/libata-core.c | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>> diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
>> index 072ba5e..35f74c9 100644
>> --- a/drivers/ata/libata-core.c
>> +++ b/drivers/ata/libata-core.c
>> @@ -6580,7 +6580,7 @@ static int __init ata_init(void)
>> {
>> ata_parse_force_param();
>> - ata_wq = create_workqueue("ata");
>> + ata_wq = create_lazy_workqueue("ata");
>> if (!ata_wq)
>> goto free_force_tbl;

Jeff> No objections to the code, operationally...

Jeff> But it is disappointing that the "1 thread on UP" problem is not
Jeff> solved while changing this libata area. Is there no way to
Jeff> specify a minimum lazy-thread count?

Jeff> A key problem continues to be tying to the number of CPUs, which
Jeff> is quite inappropriate for libata.

So should the minimum number be the NumATADisks on the system? Actual
or potential? I've got a system with dual CPUs and two IDE disk, two
SATA disks and two SCSI disks, plus two SCSI Tape drives. All on
seperate controllers... how would that work?


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at