Re: [PATCH] Export current_is_keventd() for libphy

Linus Torvalds
2006-12-07T16:50:46Z

On Wed, 6 Dec 2006, Andrew Morton wrote:
>
> But this will return to the caller if the callback is presently running on
> a different CPU. The whole point here is to be able to reliably kill off
> the pending work so that the caller can free resources.

I mentioned that in one of the emails.

We do not _have_ the information to not do that. It simply doesn't exist.
We can either wait for _all_ pending entries on the to complete (by
waiting for the workqueue counters for added/removed to be the same), or
we can have the race.

> Also, I worry that this code can run the callback on the caller's CPU.

Right.

> Users of per-cpu workqueues can legitimately assume that each callback runs
> on the right CPU.

Not if they use this interface, they can't.

They asked for it, they get it. That's the unix philosophy.

Linus