|
@@ -3404,8 +3404,8 @@ static int mgsl_open(struct tty_struct *tty, struct file * filp)
|
|
|
|
|
|
/* If port is closing, signal caller to try again */
|
|
/* If port is closing, signal caller to try again */
|
|
if (tty_hung_up_p(filp) || info->port.flags & ASYNC_CLOSING){
|
|
if (tty_hung_up_p(filp) || info->port.flags & ASYNC_CLOSING){
|
|
- if (info->port.flags & ASYNC_CLOSING)
|
|
|
|
- interruptible_sleep_on(&info->port.close_wait);
|
|
|
|
|
|
+ wait_event_interruptible_tty(tty, info->port.close_wait,
|
|
|
|
+ !(info->port.flags & ASYNC_CLOSING));
|
|
retval = ((info->port.flags & ASYNC_HUP_NOTIFY) ?
|
|
retval = ((info->port.flags & ASYNC_HUP_NOTIFY) ?
|
|
-EAGAIN : -ERESTARTSYS);
|
|
-EAGAIN : -ERESTARTSYS);
|
|
goto cleanup;
|
|
goto cleanup;
|