nbd/server: remove NBDClientNewData
"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>
Message-Id: <20170602150150.258222-9-vsementsov@virtuozzo.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
ee898b870f
commit
c84087f2f5
25
nbd/server.c
25
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,8 +1262,7 @@ 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) {
|
||||
@ -1278,15 +1271,12 @@ static coroutine_fn void nbd_co_client_start(void *opaque)
|
||||
}
|
||||
qemu_co_mutex_init(&client->send_lock);
|
||||
|
||||
if (nbd_negotiate(data)) {
|
||||
if (nbd_negotiate(client)) {
|
||||
client_close(client, false);
|
||||
goto out;
|
||||
return;
|
||||
}
|
||||
|
||||
nbd_client_receive_next_request(client);
|
||||
|
||||
out:
|
||||
g_free(data);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1302,7 +1292,7 @@ void nbd_client_new(NBDExport *exp,
|
||||
void (*close_fn)(NBDClient *, bool))
|
||||
{
|
||||
NBDClient *client;
|
||||
NBDClientNewData *data = g_new(NBDClientNewData, 1);
|
||||
Coroutine *co;
|
||||
|
||||
client = g_malloc0(sizeof(NBDClient));
|
||||
client->refcount = 1;
|
||||
@ -1318,7 +1308,6 @@ void nbd_client_new(NBDExport *exp,
|
||||
object_ref(OBJECT(client->ioc));
|
||||
client->close_fn = 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);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user