[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3] sheepdog: implement SD_OP_FLUSH_VDI operatio
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v3] sheepdog: implement SD_OP_FLUSH_VDI operation |
Date: |
Tue, 03 Apr 2012 11:12:51 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20120209 Thunderbird/10.0.1 |
Am 03.04.2012 10:35, schrieb Liu Yuan:
> From: Liu Yuan <address@hidden>
>
> Flush operation is supposed to flush the write-back cache of
> sheepdog cluster.
>
> By issuing flush operation, we can assure the Guest of data
> reaching the sheepdog cluster storage.
>
> Cc: Kevin Wolf <address@hidden>
> Cc: Michael Tokarev <address@hidden>
> Cc: MORITA Kazutaka <address@hidden>
> Cc: Stefan Hajnoczi <address@hidden>
> Signed-off-by: Liu Yuan <address@hidden>
> ---
> v2 -> v3:
> address Stefan Hajnoczi comments. Thanks !
> - use qemu_co_send/recv to send/revc msg
>
> v1 -> v2:
> address Michael Tokarev comments. Thanks !
> - use per-device flag
> - use bs->fd instead of 'connect_to_sdog()'
This version looks okay to me now. Waiting for Kazutaka's Acked-by.
> +static int send_co_req(int sockfd, SheepdogReq *hdr, void *data,
> + unsigned int *wlen)
> +{
> + int ret;
> +
> + ret = qemu_co_send(sockfd, hdr, sizeof(*hdr));
> + if (ret < sizeof(*hdr)) {
> + error_report("failed to send a req, %s", strerror(errno));
> + }
> +
> + ret = qemu_co_send(sockfd, data, *wlen);
> + if (ret < *wlen) {
> + error_report("failed to send a req, %s", strerror(errno));
> + }
> +
> + return ret;
> +}
If sending the header fails, why do we still send the data? In fact, if
sending the data succeeds then (which is unlikely, but who knows), we'll
even return success.
This only copies the logic of the existing send_req(), so if it needs to
be fixed, another patch on top that fixes both instances would be okay.
Kevin
- [Qemu-devel] [PATCH] sheepdog: implement SD_OP_FLUSH_VDI operation, Liu Yuan, 2012/04/02
- Re: [Qemu-devel] [PATCH] sheepdog: implement SD_OP_FLUSH_VDI operation, Michael Tokarev, 2012/04/02
- Re: [Qemu-devel] [PATCH] sheepdog: implement SD_OP_FLUSH_VDI operation, Liu Yuan, 2012/04/03
- [Qemu-devel] [PATCH v2] sheepdog: implement SD_OP_FLUSH_VDI operation, Liu Yuan, 2012/04/03
- Re: [Qemu-devel] [PATCH v2] sheepdog: implement SD_OP_FLUSH_VDI operation, Stefan Hajnoczi, 2012/04/03
- [Qemu-devel] [PATCH v3] sheepdog: implement SD_OP_FLUSH_VDI operation, Liu Yuan, 2012/04/03
- Re: [Qemu-devel] [PATCH v3] sheepdog: implement SD_OP_FLUSH_VDI operation,
Kevin Wolf <=
- [Qemu-devel] RE. [PATCH] sheepdog: fix send req helpers, Liu Yuan, 2012/04/03
- Re: [Qemu-devel] RE. [PATCH] sheepdog: fix send req helpers, MORITA Kazutaka, 2012/04/03
- Re: [Qemu-devel] RE. [PATCH] sheepdog: fix send req helpers, Kevin Wolf, 2012/04/03
- Re: [Qemu-devel] [PATCH v3] sheepdog: implement SD_OP_FLUSH_VDI operation, MORITA Kazutaka, 2012/04/03
- [Qemu-devel] [PATCH v4] sheepdog: implement SD_OP_FLUSH_VDI operation, Liu Yuan, 2012/04/03
- [Qemu-devel] [PATCH v4 UPDATE] sheepdog: implement SD_OP_FLUSH_VDI operation, Liu Yuan, 2012/04/03
- Re: [Qemu-devel] [PATCH v4 UPDATE] sheepdog: implement SD_OP_FLUSH_VDI operation, MORITA Kazutaka, 2012/04/03
- Re: [Qemu-devel] [PATCH v4 UPDATE] sheepdog: implement SD_OP_FLUSH_VDI operation, Kevin Wolf, 2012/04/03
- [Qemu-devel] [PATCH v5] sheepdog: implement SD_OP_FLUSH_VDI operation, Liu Yuan, 2012/04/03
- Re: [Qemu-devel] [PATCH v5] sheepdog: implement SD_OP_FLUSH_VDI operation, Kevin Wolf, 2012/04/04