Andrew, one more cleanup to aio_setup_sigevent() to make it more readable.
Sébastien. From: Sébastien Dugué <[EMAIL PROTECTED]> AIO completion signal notification small cleanup This patch cleans up aio_setup_sigevent() to make it more readable. aio.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) Signed-off-by: Sébastien Dugué <[EMAIL PROTECTED]> Index: linux-2.6.20-rc6-mm3/fs/aio.c =================================================================== --- linux-2.6.20-rc6-mm3.orig/fs/aio.c 2007-02-06 09:33:55.000000000 +0100 +++ linux-2.6.20-rc6-mm3/fs/aio.c 2007-02-06 12:43:52.000000000 +0100 @@ -962,21 +962,11 @@ static long aio_setup_sigevent(struct ai event.sigev_notify != SIGEV_THREAD_ID) return -EINVAL; - notify->notify = event.sigev_notify; - notify->signo = event.sigev_signo; - notify->value = event.sigev_value; - rcu_read_lock(); target = sigevent_find_task(&event); - if (unlikely(!target)) { - /* - * Revert notify to SIGEV_NONE so that really_put_req() - * knows that no ref has been taken on a task. - */ - notify->notify = SIGEV_NONE; + if (unlikely(!target)) goto out_unlock; - } /* * At this point, we know that notify is either SIGEV_SIGNAL or @@ -988,6 +978,9 @@ static long aio_setup_sigevent(struct ai notify->target = target; rcu_read_unlock(); + notify->notify = event.sigev_notify; + notify->signo = event.sigev_signo; + notify->value = event.sigev_value; notify->sigq = __sigqueue_alloc(current, GFP_KERNEL, 0); /* - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/