[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-trivial] [Qemu-devel] [PATCH 01/16] coccinelle: use macro DIV_
From: |
Laurent Vivier |
Subject: |
Re: [Qemu-trivial] [Qemu-devel] [PATCH 01/16] coccinelle: use macro DIV_ROUND_UP instead of (((n) + (d) - 1) /(d)) |
Date: |
Tue, 31 May 2016 19:24:49 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.0 |
On 31/05/2016 19:12, Eric Blake wrote:
> On 05/31/2016 10:35 AM, Laurent Vivier wrote:
>> sample from http://coccinellery.org/
>>
>> Signed-off-by: Laurent Vivier <address@hidden>
>> ---
>> scripts/coccinelle/round.cocci | 19 +++++++++++++++++++
>> 1 file changed, 19 insertions(+)
>> create mode 100644 scripts/coccinelle/round.cocci
>>
>> diff --git a/scripts/coccinelle/round.cocci b/scripts/coccinelle/round.cocci
>> new file mode 100644
>> index 0000000..ed06773
>> --- /dev/null
>> +++ b/scripts/coccinelle/round.cocci
>> @@ -0,0 +1,19 @@
>> +// Use macro DIV_ROUND_UP instead of (((n) + (d) - 1) /(d))
>> +@@
>> +expression e1;
>> +expression e2;
>> +@@
>> +(
>> +- ((e1) + e2 - 1) / (e2)
>> ++ DIV_ROUND_UP(e1,e2)
>
> Should this also cover things like:
>
> ((e1) & e2) / (e2 + 1)
It's true only if (e2 + 1) is a power of two... and I don't know if we
can check that with coccinelle... perhaps we can filter them manually then.
> or with bit-shifts in place of division? I don't know how much
> coccinelle can spot other issues (at least until I review the rest of
> your series), but at any rate your patch looks like a good first start.
> I also like the fact that we are committing the script into the repo, so
> that we can reuse it to catch future additions of the open-coded forms.
>
> Reviewed-by: Eric Blake <address@hidden>
>
Thanks,
Laurent
- [Qemu-trivial] [PATCH 00/16] use macro DIV_ROUND_UP instead of (((n) + (d) - 1) /(d)), Laurent Vivier, 2016/05/31
- [Qemu-trivial] [PATCH 01/16] coccinelle: use macro DIV_ROUND_UP instead of (((n) + (d) - 1) /(d)), Laurent Vivier, 2016/05/31
- [Qemu-trivial] [PATCH 02/16] parallels: Use DIV_ROUND_UP, Laurent Vivier, 2016/05/31
- [Qemu-trivial] [PATCH 03/16] qcow/qcow2: Use DIV_ROUND_UP, Laurent Vivier, 2016/05/31
- [Qemu-trivial] [PATCH 07/16] xen: Use DIV_ROUND_UP, Laurent Vivier, 2016/05/31
- [Qemu-trivial] [PATCH 06/16] crypto: Use DIV_ROUND_UP, Laurent Vivier, 2016/05/31
- [Qemu-trivial] [PATCH 05/16] block: Use DIV_ROUND_UP, Laurent Vivier, 2016/05/31
- [Qemu-trivial] [PATCH 04/16] qed: Use DIV_ROUND_UP, Laurent Vivier, 2016/05/31