[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCHv5 01/11] virtio-serial-bus: use correct lengths in c
From: |
Michael Tokarev |
Subject: |
[Qemu-devel] [PATCHv5 01/11] virtio-serial-bus: use correct lengths in control_out() message |
Date: |
Sat, 17 Mar 2012 01:34:27 +0400 |
Original code has one thing to process (cur_len), requests to
convert from iovec to buf another thing (len which is actually max_len),
and processes something else (copied). Whole thing is very difficult
to understand, even if it does a right thing. The iov_to_buf()
conversion in this case will always return cur_len, because it is
the length of the iovec it was asked to process, and the size we
asked to convert is the same or larger, and iov_to_buf() will stop
at reaching either iov or buf.
Make the code saner by doing the only sane thing: dropping `copied'
which is always the same as `cur_len' but just introduces questions.
Signed-off-by: Michael Tokarev <address@hidden>
---
hw/virtio-serial-bus.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/hw/virtio-serial-bus.c b/hw/virtio-serial-bus.c
index e22940e..abe48ec 100644
--- a/hw/virtio-serial-bus.c
+++ b/hw/virtio-serial-bus.c
@@ -454,7 +454,7 @@ static void control_out(VirtIODevice *vdev, VirtQueue *vq)
len = 0;
buf = NULL;
while (virtqueue_pop(vq, &elem)) {
- size_t cur_len, copied;
+ size_t cur_len;
cur_len = iov_size(elem.out_sg, elem.out_num);
/*
@@ -467,9 +467,9 @@ static void control_out(VirtIODevice *vdev, VirtQueue *vq)
buf = g_malloc(cur_len);
len = cur_len;
}
- copied = iov_to_buf(elem.out_sg, elem.out_num, buf, 0, len);
+ iov_to_buf(elem.out_sg, elem.out_num, buf, 0, cur_len);
- handle_control_message(vser, buf, copied);
+ handle_control_message(vser, buf, cur_len);
virtqueue_push(vq, &elem, 0);
}
g_free(buf);
--
1.7.9.1
- [Qemu-devel] [PATCHv5 02/11] change iov_* function prototypes to be more appropriate, (continued)
- [Qemu-devel] [PATCHv5 02/11] change iov_* function prototypes to be more appropriate, Michael Tokarev, 2012/03/16
- [Qemu-devel] [PATCHv5 10/11] cleanup qemu_co_sendv(), qemu_co_recvv() and friends, Michael Tokarev, 2012/03/16
- [Qemu-devel] [PATCHv5 04/11] consolidate qemu_iovec_memset{, _skip}() into single function and use existing iov_memset(), Michael Tokarev, 2012/03/16
- [Qemu-devel] [PATCHv5 03/11] rewrite iov_* functions, Michael Tokarev, 2012/03/16
[Qemu-devel] [PATCHv5 07/11] change qemu_iovec_to_buf() to match other to, from_buf functions, Michael Tokarev, 2012/03/16
[Qemu-devel] [PATCHv5 06/11] consolidate qemu_iovec_copy() and qemu_iovec_concat() and make them consistent, Michael Tokarev, 2012/03/16
[Qemu-devel] [PATCHv5 01/11] virtio-serial-bus: use correct lengths in control_out() message,
Michael Tokarev <=
[Qemu-devel] [PATCHv5 08/11] rename qemu_sendv to iov_send, change proto and move declarations to iov.h, Michael Tokarev, 2012/03/16
[Qemu-devel] [PATCHv5 11/11] rewrite iov_send_recv() and move it to iov.c, Michael Tokarev, 2012/03/16
[Qemu-devel] [PATCHv5 00/11] cleanup/consolidate iovec functions, Michael Tokarev, 2012/03/19
- [Qemu-devel] [PATCHv5 10/11] cleanup qemu_co_sendv(), qemu_co_recvv() and friends, Michael Tokarev, 2012/03/19
- [Qemu-devel] [PATCHv5 05/11] allow qemu_iovec_from_buffer() to specify offset from which to start copying, Michael Tokarev, 2012/03/19
- [Qemu-devel] [PATCHv5 02/11] change iov_* function prototypes to be more appropriate, Michael Tokarev, 2012/03/19
- [Qemu-devel] [PATCHv5 08/11] rename qemu_sendv to iov_send, change proto and move declarations to iov.h, Michael Tokarev, 2012/03/19
- [Qemu-devel] [PATCHv5 04/11] consolidate qemu_iovec_memset{, _skip}() into single function and use existing iov_memset(), Michael Tokarev, 2012/03/19
- [Qemu-devel] [PATCHv5 11/11] rewrite iov_send_recv() and move it to iov.c, Michael Tokarev, 2012/03/19
- Re: [Qemu-devel] [PATCHv5 00/11] cleanup/consolidate iovec functions, Michael Tokarev, 2012/03/19