[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 09/12] iov: add iov_get_ptr() to reference ve
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH v3 09/12] iov: add iov_get_ptr() to reference vector data |
Date: |
Thu, 22 Nov 2012 12:38:45 +0200 |
On Thu, Nov 22, 2012 at 10:52:27AM +0100, Paolo Bonzini wrote:
> Il 22/11/2012 10:45, Michael S. Tsirkin ha scritto:
> > All this looks suspiciously like premature optimization to me.
> > Do we have data to show avoiding header copy is a win?
>
> The code is a little simpler, because we know the footer is 1 byte only.
>
> Paolo
Yes but the APIs don't make sense in the generic case
of >1 byte: users will have to code up two paths for when
the buffer they want to access gets scattered across.
So this looks like a future source of errors:
it's better to avoid poking at guest memory directly.
If the point is to avoid scanning iov vector when data is towards the
end of the iov, then this does sound reasonable. In that case IMHO we
should just have accessors that work back from end of the iov. E.g.
size_t iov_from_buf_end(const struct iovec *iov, unsigned int iov_cnt,
size_t offset, const void *buf, size_t bytes)
- [Qemu-devel] [PATCH v3 01/12] raw-posix: add raw_get_aio_fd() for virtio-blk-data-plane, (continued)
- [Qemu-devel] [PATCH v3 01/12] raw-posix: add raw_get_aio_fd() for virtio-blk-data-plane, Stefan Hajnoczi, 2012/11/21
- [Qemu-devel] [PATCH v3 05/12] dataplane: add event loop, Stefan Hajnoczi, 2012/11/21
- [Qemu-devel] [PATCH v3 06/12] dataplane: add Linux AIO request queue, Stefan Hajnoczi, 2012/11/21
- [Qemu-devel] [PATCH v3 07/12] iov: add iov_discard() to remove data, Stefan Hajnoczi, 2012/11/21
- [Qemu-devel] [PATCH v3 02/12] configure: add CONFIG_VIRTIO_BLK_DATA_PLANE, Stefan Hajnoczi, 2012/11/21
- [Qemu-devel] [PATCH v3 10/12] test-iov: add iov_get_ptr() test case, Stefan Hajnoczi, 2012/11/21
- [Qemu-devel] [PATCH v3 09/12] iov: add iov_get_ptr() to reference vector data, Stefan Hajnoczi, 2012/11/21
- Re: [Qemu-devel] [PATCH v3 09/12] iov: add iov_get_ptr() to reference vector data, Stefan Hajnoczi, 2012/11/22
- Re: [Qemu-devel] [PATCH v3 09/12] iov: add iov_get_ptr() to reference vector data, Paolo Bonzini, 2012/11/22
- Re: [Qemu-devel] [PATCH v3 09/12] iov: add iov_get_ptr() to reference vector data, Michael S. Tsirkin, 2012/11/22
- Re: [Qemu-devel] [PATCH v3 09/12] iov: add iov_get_ptr() to reference vector data, Stefan Hajnoczi, 2012/11/22
[Qemu-devel] [PATCH v3 12/12] virtio-blk: add x-data-plane=on|off performance feature, Stefan Hajnoczi, 2012/11/21
[Qemu-devel] [PATCH v3 11/12] dataplane: add virtio-blk data plane code, Stefan Hajnoczi, 2012/11/21
[Qemu-devel] [PATCH v3 08/12] test-iov: add iov_discard() testcase, Stefan Hajnoczi, 2012/11/21
[Qemu-devel] [PATCH v3 03/12] dataplane: add host memory mapping code, Stefan Hajnoczi, 2012/11/21