Re: [PATCH] ATA over Ethernet: Convert emsgs_sema in a completion

From: Andrew Morton
Date: Mon May 19 2008 - 19:52:09 EST


On Fri, 16 May 2008 21:11:33 +0200
Matthias Kaehlcke <matthias@xxxxxxxxxxxx> wrote:

> @@ -216,7 +217,7 @@ aoechr_read(struct file *filp, char __user *buf, size_t cnt, loff_t *off)
>
> spin_unlock_irqrestore(&emsgs_lock, flags);
>
> - n = down_interruptible(&emsgs_sema);
> + n = wait_for_completion_interruptible(&emsgs_comp);

Patch looks OK, but I worry about this code. Suppose a signal is sent
and we return to userspace with the complete() still outstanding. Then
someone removes the module.

Perhaps there is synchronisation code which prevents that crash?
--
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/