qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 1/1] multifd: Remove some redundant code


From: Li Zhang
Subject: Re: [PATCH 1/1] multifd: Remove some redundant code
Date: Fri, 17 Dec 2021 10:53:57 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0

On 12/17/21 10:39 AM, Claudio Fontana wrote:
Hi Li,

the full function for context:

static void multifd_new_send_channel_async(QIOTask *task, gpointer opaque)
{
     MultiFDSendParams *p = opaque;
     QIOChannel *sioc = QIO_CHANNEL(qio_task_get_source(task));
     Error *local_err = NULL;

     trace_multifd_new_send_channel_async(p->id);
     if (qio_task_propagate_error(task, &local_err)) {
         goto cleanup;
     } else {
         p->c = QIO_CHANNEL(sioc);
         qio_channel_set_delay(p->c, false);
         p->running = true;
         if (!multifd_channel_connect(p, sioc, local_err)) {
             goto cleanup;
         }
         return;
     }

cleanup:
     multifd_new_send_channel_cleanup(p, sioc, local_err);
}



On 12/17/21 10:33 AM, Li Zhang wrote:
Clean up some unnecessary code

Signed-off-by: Li Zhang <lizhang@suse.de>
---
  migration/multifd.c | 9 ++-------
  1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/migration/multifd.c b/migration/multifd.c
index 3242f688e5..1405cf95b8 100644
--- a/migration/multifd.c
+++ b/migration/multifd.c
@@ -854,9 +854,7 @@ static void multifd_new_send_channel_async(QIOTask *task, 
gpointer opaque)
      Error *local_err = NULL;
trace_multifd_new_send_channel_async(p->id);
-    if (qio_task_propagate_error(task, &local_err)) {
-        goto cleanup;

I see you are removing this goto, but keeping there the other one.. is this a 
bit inconsistent?

Ah, you are right. The other one is not necessary anymore.


Should the second check be inverted too, to remove the other goto as well?
I would like to remove the goto and call the function directly.


Ciao,

Claudio

-    } else {
+    if (!qio_task_propagate_error(task, &local_err)) {
          p->c = QIO_CHANNEL(sioc);
          qio_channel_set_delay(p->c, false);
          p->running = true;
@@ -1078,10 +1076,7 @@ static void *multifd_recv_thread(void *opaque)
ret = qio_channel_read_all_eof(p->c, (void *)p->packet,
                                         p->packet_len, &local_err);
-        if (ret == 0) {   /* EOF */
-            break;
-        }
-        if (ret == -1) {   /* Error */
+        if (ret == 0 || ret == -1) {   /* 0: EOF  -1: Error */
              break;
          }





reply via email to

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