All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/2] QIOChannelSocket: Reduce ifdefs to improve readability
@ 2022-06-08 21:04 Leonardo Bras
  2022-06-08 21:04 ` [PATCH v2 2/2] QIOChannelSocket: Fix zero-copy send so socket flush works Leonardo Bras
  2022-06-09  8:09 ` [PATCH v2 1/2] QIOChannelSocket: Reduce ifdefs to improve readability Daniel P. Berrangé
  0 siblings, 2 replies; 8+ messages in thread
From: Leonardo Bras @ 2022-06-08 21:04 UTC (permalink / raw)
  To: Daniel P. Berrangé, Peter Xu, 徐闯,
	David Gilbert, Juan Quintela
  Cc: Leonardo Bras, qemu-devel

During implementation of MSG_ZEROCOPY feature, a lot of #ifdefs were
introduced, particularly at qio_channel_socket_writev().

Rewrite some of those changes so it's easier to read.
									...
Signed-off-by: Leonardo Bras <leobras@redhat.com>
---
 io/channel-socket.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/io/channel-socket.c b/io/channel-socket.c
index dc9c165de1..ef7c7cfbac 100644
--- a/io/channel-socket.c
+++ b/io/channel-socket.c
@@ -554,6 +554,7 @@ static ssize_t qio_channel_socket_writev(QIOChannel *ioc,
     size_t fdsize = sizeof(int) * nfds;
     struct cmsghdr *cmsg;
     int sflags = 0;
+    bool zero_copy_enabled = false;
 
     memset(control, 0, CMSG_SPACE(sizeof(int) * SOCKET_MAX_FDS));
 
@@ -581,6 +582,7 @@ static ssize_t qio_channel_socket_writev(QIOChannel *ioc,
 #ifdef QEMU_MSG_ZEROCOPY
     if (flags & QIO_CHANNEL_WRITE_FLAG_ZERO_COPY) {
         sflags = MSG_ZEROCOPY;
+        zero_copy_enabled = true;
     }
 #endif
 
@@ -592,15 +594,13 @@ static ssize_t qio_channel_socket_writev(QIOChannel *ioc,
             return QIO_CHANNEL_ERR_BLOCK;
         case EINTR:
             goto retry;
-#ifdef QEMU_MSG_ZEROCOPY
         case ENOBUFS:
-            if (sflags & MSG_ZEROCOPY) {
+            if (zero_copy_enabled) {
                 error_setg_errno(errp, errno,
                                  "Process can't lock enough memory for using MSG_ZEROCOPY");
                 return -1;
             }
             break;
-#endif
         }
 
         error_setg_errno(errp, errno,
-- 
2.36.1



^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-06-14 16:34 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-08 21:04 [PATCH v2 1/2] QIOChannelSocket: Reduce ifdefs to improve readability Leonardo Bras
2022-06-08 21:04 ` [PATCH v2 2/2] QIOChannelSocket: Fix zero-copy send so socket flush works Leonardo Bras
2022-06-09  8:09 ` [PATCH v2 1/2] QIOChannelSocket: Reduce ifdefs to improve readability Daniel P. Berrangé
2022-06-10  1:30   ` Leonardo Bras Soares Passos
2022-06-10  8:25     ` Daniel P. Berrangé
2022-06-13 21:21       ` Leonardo Bras Soares Passos
2022-06-14  8:36         ` Daniel P. Berrangé
2022-06-14 16:22           ` Leonardo Bras Soares Passos

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.