Message ID | 1321930618-607-1-git-send-email-wdongxu@linux.vnet.ibm.com |
---|---|
State | New |
Headers | show |
Am 22.11.2011 03:56, schrieb Dong Xu Wang: > From: Dong Xu Wang <wdongxu@linux.vnet.ibm.com> > > s->lock should be unlocked before leaving add_aio_request. > > Signed-off-by: Dong Xu Wang <wdongxu@linux.vnet.ibm.com> Thanks, applied to the block-stable branch (for 1.0). But please keep Kazutaka CCed for future Sheepdog patches. Kevin > --- > block/sheepdog.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/block/sheepdog.c b/block/sheepdog.c > index 9f80609..62f1f3a 100644 > --- a/block/sheepdog.c > +++ b/block/sheepdog.c > @@ -1116,6 +1116,7 @@ static int coroutine_fn add_aio_request(BDRVSheepdogState *s, AIOReq *aio_req, > /* send a header */ > ret = do_write(s->fd, &hdr, sizeof(hdr)); > if (ret) { > + qemu_co_mutex_unlock(&s->lock); > error_report("failed to send a req, %s", strerror(errno)); > return -EIO; > } > @@ -1123,6 +1124,7 @@ static int coroutine_fn add_aio_request(BDRVSheepdogState *s, AIOReq *aio_req, > if (wlen) { > ret = do_writev(s->fd, iov, wlen, aio_req->iov_offset); > if (ret) { > + qemu_co_mutex_unlock(&s->lock); > error_report("failed to send a data, %s", strerror(errno)); > return -EIO; > }
diff --git a/block/sheepdog.c b/block/sheepdog.c index 9f80609..62f1f3a 100644 --- a/block/sheepdog.c +++ b/block/sheepdog.c @@ -1116,6 +1116,7 @@ static int coroutine_fn add_aio_request(BDRVSheepdogState *s, AIOReq *aio_req, /* send a header */ ret = do_write(s->fd, &hdr, sizeof(hdr)); if (ret) { + qemu_co_mutex_unlock(&s->lock); error_report("failed to send a req, %s", strerror(errno)); return -EIO; } @@ -1123,6 +1124,7 @@ static int coroutine_fn add_aio_request(BDRVSheepdogState *s, AIOReq *aio_req, if (wlen) { ret = do_writev(s->fd, iov, wlen, aio_req->iov_offset); if (ret) { + qemu_co_mutex_unlock(&s->lock); error_report("failed to send a data, %s", strerror(errno)); return -EIO; }