Re: [PATCH 13/13] libata-hp: add ata_hotplug_wq

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



zhao, forrest wrote:
> On Tue, 2006-04-11 at 23:06 +0900, Tejun Heo wrote:
>> 1438492c4408fc908d3fb5865fd56231360a2fcd
>> diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c
>> index 0206791..610f963 100644
>> --- a/drivers/scsi/libata-core.c
>> +++ b/drivers/scsi/libata-core.c
>> @@ -72,6 +72,8 @@ static void ata_dev_xfermask(struct ata_
>>  static unsigned int ata_unique_id = 1;
>>  static struct workqueue_struct *ata_wq;
>>  
>> +struct workqueue_struct *ata_hotplug_wq;
>> +
>>  int atapi_enabled = 1;
>>  module_param(atapi_enabled, int, 0444);
>>  MODULE_PARM_DESC(atapi_enabled, "Enable discovery of ATAPI devices (0=off, 1=on)");
>> @@ -5300,6 +5302,12 @@ static int __init ata_init(void)
>>  	if (!ata_wq)
>>  		return -ENOMEM;
>>  
>> +	ata_hotplug_wq = create_workqueue("ata_hotplug");
>> +	if (!ata_hotplug_wq) {
>> +		destroy_workqueue(ata_wq);
>> +		return -ENOMEM;
>> +	}
>> +
>>  	printk(KERN_DEBUG "libata version " DRV_VERSION " loaded.\n");
>>  	return 0;
>>  }
> 
> create_workqueue() creates one workqueue for each logic CPU in
> the system, so when loading libata.ko in a system with 8 CPU's
> 8 work queues for ata_hotplug will be created. Does it make sense
> to use create_singlethread_workqueue() to create only one workqueue
> for ata_hotplug since hotplug is not the operation happened with
> high frequency?
> 

Yeap, that makes a lot of sense.  Will change to single threaded variant.

Thanks.

-- 
tejun
-
: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux