On Fri, Feb 25, 2011 at 05:09:03PM +0100, Tejun Heo wrote:
Hello,
On Fri, Feb 25, 2011 at 11:03:53AM -0500, Vivek Goyal wrote:
> +int kthrotld_schedule_delayed_work(struct throtl_data *td,
> + struct delayed_work *dwork, unsigned long delay)
> +{
> + return queue_delayed_work(kthrotld_workqueue, dwork, delay);
> +}
> +
I don't think wrapping is necessary. Defining and using a workqueue
directly should be enough.
> @@ -1113,6 +1120,11 @@ void blk_throtl_exit(struct request_queu
>
> static int __init throtl_init(void)
> {
> + kthrotld_workqueue = alloc_workqueue("kthrotld",
> + WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
And I don't think kthrotld needs to be HIGHPRI.
Ok, regenerating the patch with above change. Anyway I had to as I
generated this patch on top of some of my local commits which are
not in Linus tree yet.
Thanks
Vivek