Re: [rfc/patch] wake_up_info() draft ...

From: Manfred Spraul
Date: Thu Jan 01 2004 - 21:56:04 EST


Hi Davide,

I think the patch adds unnecessary bloat, and mandates one particular use of the wait queue info interface.
For example, why does remove_wait_queue_info copy the wakeup info around? That's now how I would use it for fasync: I would send the necessary signals directly from the wakeup handler, and remove_wait_queue_info is called during sys_close handling, info discarded.

I'm thinking about a simpler approach: add a wake_up_info() function, and forward the info parameter to the wait_queue_func_t. This means changing the prototype of this function - there shouldn't be that many instances. NULL is passed if the normal wake_up functions are used. No additional fields in the wait queue entry are required. Then I would convert kill_fasync to that interface, with the band value from kill_fasync as the info parameter. A custom wait queue func does the signal sending. fasync_helper would be kmalloc+add_wait_queue.

--
Manfred

-
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/