|
@@ -718,7 +718,9 @@ static int unix_autobind(struct socket *sock)
|
|
|
int err;
|
|
|
unsigned int retries = 0;
|
|
|
|
|
|
- mutex_lock(&u->readlock);
|
|
|
+ err = mutex_lock_interruptible(&u->readlock);
|
|
|
+ if (err)
|
|
|
+ return err;
|
|
|
|
|
|
err = 0;
|
|
|
if (u->addr)
|
|
@@ -877,7 +879,9 @@ static int unix_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
|
|
|
goto out;
|
|
|
addr_len = err;
|
|
|
|
|
|
- mutex_lock(&u->readlock);
|
|
|
+ err = mutex_lock_interruptible(&u->readlock);
|
|
|
+ if (err)
|
|
|
+ goto out;
|
|
|
|
|
|
err = -EINVAL;
|
|
|
if (u->addr)
|