qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH Update] sheepdog: don't update inode when create


From: Liu Yuan
Subject: Re: [Qemu-devel] [PATCH Update] sheepdog: don't update inode when create_and_write fails
Date: Mon, 17 Dec 2012 13:22:31 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/17.0 Thunderbird/17.0

On 12/17/2012 11:43 AM, MORITA Kazutaka wrote:
> send_pending_req() needs to be called even in error case.  Rather than
> moving the error check, I think it looks better to update
> s->inode.data_vdi_id only when rsp.result is SD_RES_SUCCESS.

Why can't we check the rsp.result in the first place? double check
rsp.result inside one function looks a little bit complicated to me.

How about
+    if (rsp.result != SD_RES_SUCCESS) {
+        acb->ret = -EIO;
+        error_report("%s", sd_strerror(rsp.result));
+        send_pending_req(s, aio_req->oid);
+        goto err;
+
+    }

By the way, seems that
  send_pending_req(s, vid_to_data_oid(s->inode.vdi_id, idx));
can be reduced to
  send_pending_req(s, aio_req->oid);

If yes, I can send another patch to fix.

Thanks,
Yuan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]