All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
To: qemu-devel@nongnu.org
Cc: pbonzini@redhat.com, eblake@redhat.com, den@openvz.org,
	vsementsov@virtuozzo.com
Subject: [Qemu-devel] [PATCH 08/12] nbd/server: remove NBDClientNewData
Date: Wed, 31 May 2017 19:55:37 +0300	[thread overview]
Message-ID: <20170531165541.47338-9-vsementsov@virtuozzo.com> (raw)
In-Reply-To: <20170531165541.47338-1-vsementsov@virtuozzo.com>

"co" field of NBDClientNewData has never been used, all the way back to
its declaration in commit 1a6245a5. So let's just use client pointer
instead of extra structure.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
---
 nbd/server.c | 25 +++++++------------------
 1 file changed, 7 insertions(+), 18 deletions(-)

diff --git a/nbd/server.c b/nbd/server.c
index 8ac095d6bc..d376563527 100644
--- a/nbd/server.c
+++ b/nbd/server.c
@@ -535,14 +535,8 @@ static int nbd_negotiate_options(NBDClient *client)
     }
 }
 
-typedef struct {
-    NBDClient *client;
-    Coroutine *co;
-} NBDClientNewData;
-
-static coroutine_fn int nbd_negotiate(NBDClientNewData *data)
+static coroutine_fn int nbd_negotiate(NBDClient *client)
 {
-    NBDClient *client = data->client;
     char buf[8 + 8 + 8 + 128];
     int rc;
     const uint16_t myflags = (NBD_FLAG_HAS_FLAGS | NBD_FLAG_SEND_TRIM |
@@ -1268,16 +1262,15 @@ static void nbd_client_receive_next_request(NBDClient *client)
 
 static coroutine_fn void nbd_co_client_start(void *opaque)
 {
-    NBDClientNewData *data = opaque;
-    NBDClient *client = data->client;
+    NBDClient *client = opaque;
     NBDExport *exp = client->exp;
 
     if (exp) {
         nbd_export_get(exp);
     }
-    if (nbd_negotiate(data)) {
+    if (nbd_negotiate(client)) {
         client_close(client);
-        goto out;
+        return;
     }
     qemu_co_mutex_init(&client->send_lock);
 
@@ -1286,9 +1279,6 @@ static coroutine_fn void nbd_co_client_start(void *opaque)
     }
 
     nbd_client_receive_next_request(client);
-
-out:
-    g_free(data);
 }
 
 void nbd_client_new(NBDExport *exp,
@@ -1298,7 +1288,7 @@ void nbd_client_new(NBDExport *exp,
                     void (*close_fn)(NBDClient *))
 {
     NBDClient *client;
-    NBDClientNewData *data = g_new(NBDClientNewData, 1);
+    Coroutine *co;
 
     client = g_malloc0(sizeof(NBDClient));
     client->refcount = 1;
@@ -1314,7 +1304,6 @@ void nbd_client_new(NBDExport *exp,
     object_ref(OBJECT(client->ioc));
     client->close = close_fn;
 
-    data->client = client;
-    data->co = qemu_coroutine_create(nbd_co_client_start, data);
-    qemu_coroutine_enter(data->co);
+    co = qemu_coroutine_create(nbd_co_client_start, client);
+    qemu_coroutine_enter(co);
 }
-- 
2.11.1

  parent reply	other threads:[~2017-05-31 16:55 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-31 16:55 [Qemu-devel] [PATCH 00/12] nbd refactoring part 1 Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 01/12] nbd: rename read_sync and friends Vladimir Sementsov-Ogievskiy
2017-05-31 17:03   ` Vladimir Sementsov-Ogievskiy
2017-05-31 18:46   ` Eric Blake
2017-06-01  8:03     ` Sementsov-Ogievskiy Vladimir
2017-06-02 12:00       ` Vladimir Sementsov-Ogievskiy
2017-06-02 13:49         ` Eric Blake
2017-06-02 13:54           ` Vladimir Sementsov-Ogievskiy
2017-06-02 14:15             ` Eric Blake
2017-06-02 14:18               ` Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 02/12] nbd: make nbd_drop public Vladimir Sementsov-Ogievskiy
2017-05-31 18:47   ` Eric Blake
2017-05-31 16:55 ` [Qemu-devel] [PATCH 03/12] nbd/server: get rid of nbd_negotiate_read and friends Vladimir Sementsov-Ogievskiy
2017-05-31 18:50   ` Eric Blake
2017-05-31 16:55 ` [Qemu-devel] [PATCH 04/12] nbd/server: get rid of ssize_t Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 05/12] nbd/server: refactor nbd_co_send_reply Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 06/12] nbd/server: get rid of EAGAIN dead code Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 07/12] nbd/server: refactor nbd_co_receive_request Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` Vladimir Sementsov-Ogievskiy [this message]
2017-05-31 16:55 ` [Qemu-devel] [PATCH 09/12] nbd/server: nbd_negotiate: fix error path Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 10/12] nbd/server: get rid of fail: return rc Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 11/12] nbd/server: rename rc to ret Vladimir Sementsov-Ogievskiy
2017-05-31 16:55 ` [Qemu-devel] [PATCH 12/12] nbd/server: refactor nbd_trip Vladimir Sementsov-Ogievskiy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170531165541.47338-9-vsementsov@virtuozzo.com \
    --to=vsementsov@virtuozzo.com \
    --cc=den@openvz.org \
    --cc=eblake@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.