[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 1/2] blockdev: Error out on negative throttli
From: |
Alberto Garcia |
Subject: |
Re: [Qemu-devel] [PATCH v2 1/2] blockdev: Error out on negative throttling option values |
Date: |
Wed, 13 Jan 2016 12:13:18 +0100 |
User-agent: |
Notmuch/0.13.2 (http://notmuchmail.org) Emacs/23.2.1 (i486-pc-linux-gnu) |
On Wed 13 Jan 2016 12:02:00 PM CET, Fam Zheng wrote:
>> > Check the number range so this case is catched and reported.
>>
>> I still don't know why qemu_opt_get_number() convert silently
>> negative numbers into positive ones, shouldn't it just fail with an
>> "invalid parameter" error?
>
> Because the parsing is done with strtoull(3) and unfortunately its man
> page says "negative values are considered valid input and are silently
> converted to the equivalent unsigned long int value."
I see... parse_uint() from cutils.c handles that by making an explicit
check for negative numbers. It probably makes sense to apply the same
solution (or even merge the code to the extent to which it's possible).
I also noticed that there's a couple of places where we're calling
qemu_opt_get_number() passing -1 as default value, so maybe that API
needs to be reviewed anyway.
Berto
[Qemu-devel] [PATCH v2 2/2] iotests: Test that negative throttle values are rejected, Fam Zheng, 2016/01/12