Re: [PATCH] add execute_in_process_context() API
From: Andrew Morton
Date: Wed Feb 08 2006 - 03:17:09 EST
Andi Kleen <ak@xxxxxxx> wrote:
>
> James Bottomley <James.Bottomley@xxxxxxxxxxxx> writes:
>
> In general this seems like a lot of code for a simple problem.
> It might be simpler to just put the work structure into the parent
> object and do the workqueue unconditionally
>
That apparently would have really bad performance problems. If we're
!in_interrupt() we want to do the work synchronously.
But yes, if we can embed the work_struct inside the structure which the
callback will operate on
> > + if (unlikely(!wqw)) {
> > + printk(KERN_ERR "Failed to allocate memory\n");
> > + WARN_ON(1);
>
> WARN_ON for GFP_ATOMIC failure is bad. It is not really a bug.
it will solve this problem. (And I think is is a problem: if the
allocation fails, we leak things?)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/