Messages in this thread | | | Date | Fri, 02 Jan 2004 10:32:14 +0100 | From | Manfred Spraul <> | Subject | Re: [rfc/patch] wake_up_info() draft ... |
| |
Davide Libenzi wrote:
>On Fri, 2 Jan 2004, Manfred Spraul wrote: > > > >>Hi Davide, >> >> > >Hi Manfred, > > > > >>I think the patch adds unnecessary bloat, and mandates one particular >>use of the wait queue info interface. >> >> > >why are you saying so? > > > sizeof(waitqueue_t) increases.
>@@ -1658,6 +1659,8 @@ > unsigned flags; > curr = list_entry(tmp, wait_queue_t, task_list); > flags = curr->flags; >+ if (info) >+ dup_wait_info(&curr->info, info); > if (curr->func(curr, mode, sync) && > (flags & WQ_FLAG_EXCLUSIVE) && > !--nr_exclusive) > IMHO these two lines belong into curr->func, perhaps with a reference implementation that uses
struct wait_queue_entry_info { wait_queue_t wait; struct wait_info info; };
We have already a callback pointer, so why add special case code into the common codepaths? Custom callbacks could handle the special case of an info wakeup.
-- Manfred
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |