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

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

 



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?

Thanks,
Forrest
-
: 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