All of lore.kernel.org
 help / color / mirror / Atom feed
From: Juan Quintela <quintela@redhat.com>
To: "Daniel P. Berrange" <berrange@redhat.com>
Cc: qemu-devel@nongnu.org, lvivier@redhat.com, dgilbert@redhat.com,
	peterx@redhat.com
Subject: Re: [Qemu-devel] [PATCH v4 1/2] tests: Use real size for iov tests
Date: Fri, 01 Sep 2017 17:16:42 +0200	[thread overview]
Message-ID: <87wp5i78kl.fsf@secure.laptop> (raw)
In-Reply-To: <20170901122021.GN31680@redhat.com> (Daniel P. Berrange's message of "Fri, 1 Sep 2017 13:20:21 +0100")

"Daniel P. Berrange" <berrange@redhat.com> wrote:
> On Fri, Sep 01, 2017 at 01:54:59PM +0200, Juan Quintela wrote:
>> We were using -1 instead of the real size because the functions check
>> what is bigger, size in bytes or the size of the iov.  Recent gcc's
>> barf at this.
>> 
>> Signed-off-by: Juan Quintela <quintela@redhat.com>
>> Reviewed-by: Peter Xu <peterx@redhat.com>
>> Tested-by: Cleber Rosa <crosa@redhat.com>
>> --
>> 
>> Remove comments about this feature.
>> Fix missing -1.
>> ---
>>  include/qemu/iov.h |  6 ------
>>  tests/test-iov.c   | 10 +++++-----
>>  2 files changed, 5 insertions(+), 11 deletions(-)
>> 
>> diff --git a/include/qemu/iov.h b/include/qemu/iov.h
>> index bd9fd55b0a..72d4c559b4 100644
>> --- a/include/qemu/iov.h
>> +++ b/include/qemu/iov.h
>> @@ -31,11 +31,6 @@ size_t iov_size(const struct iovec *iov, const unsigned int iov_cnt);
>>   * Number of bytes actually copied will be returned, which is
>>   *  min(bytes, iov_size(iov)-offset)
>>   * `Offset' must point to the inside of iovec.
>> - * It is okay to use very large value for `bytes' since we're
>> - * limited by the size of the iovec anyway, provided that the
>> - * buffer pointed to by buf has enough space.  One possible
>> - * such "large" value is -1 (sinice size_t is unsigned),
>> - * so specifying `-1' as `bytes' means 'up to the end of iovec'.
>>   */
>>  size_t iov_from_buf_full(const struct iovec *iov, unsigned int iov_cnt,
>>                           size_t offset, const void *buf, size_t bytes);
>> @@ -76,7 +71,6 @@ iov_to_buf(const struct iovec *iov, const unsigned int iov_cnt,
>>   * up to the end of it, will be filled with the specified value.
>>   * Function return actual number of bytes processed, which is
>>   * min(size, iov_size(iov) - offset).
>> - * Again, it is okay to use large value for `bytes' to mean "up to the end".
>>   */
>>  size_t iov_memset(const struct iovec *iov, const unsigned int iov_cnt,
>>                    size_t offset, int fillc, size_t bytes);
>
> I'm not sure its right to be removing these comments, unless you've
> audited the code to ensure no caller outside the test suite is
> relying on this documented behaviour.

I did.  The caller call with the real size of the buffer.
iov_memset() still works with the -1 size.

iov_to/from_buf, the non full versions don't work, because the inline
gets confused with -1 with newer gcc's.
>
> For the test-iov.c changes though you can have
>
> Reviewed-by: Daniel P. Berrange <berrange@redhat.com>

Later, Juan.

  reply	other threads:[~2017-09-01 15:16 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-01 11:54 [Qemu-devel] [PATCH v4 0/2] Fix tests on recent gcc Juan Quintela
2017-09-01 11:54 ` [Qemu-devel] [PATCH v4 1/2] tests: Use real size for iov tests Juan Quintela
2017-09-01 12:20   ` Daniel P. Berrange
2017-09-01 15:16     ` Juan Quintela [this message]
2017-09-01 11:55 ` [Qemu-devel] [PATCH v4 2/2] tests: Make vmgenid test compile Juan Quintela
2017-09-01 12:18   ` Daniel P. Berrange

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wp5i78kl.fsf@secure.laptop \
    --to=quintela@redhat.com \
    --cc=berrange@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=peterx@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.