[ovs-dev] [PATCH 2/3] datapath: Mega flow implementation
Rajahalme, Jarno (NSN - FI/Espoo)
jarno.rajahalme at nsn.com
Fri Jun 7 20:46:36 UTC 2013
Right, sorry for the mix up,
Jarno
On Jun 7, 2013, at 23:38 , ext Ben Pfaff wrote:
> Are we talking about the datapath or userspace? The datapath would
> use the Linux kernel roundup(), from linux/kernel.h. Userspace would
> use ROUND_UP(), from lib/util.h.
>
> On Fri, Jun 07, 2013 at 08:28:20PM +0000, Rajahalme, Jarno (NSN - FI/Espoo) wrote:
>> It is in lib/util.h:
>>
>> lib/util.h:#define DIV_ROUND_UP(X, Y) (((X) + ((Y) - 1)) / (Y))
>> lib/util.h:#define ROUND_UP(X, Y) (DIV_ROUND_UP(X, Y) * (Y))
>>
>> Jarno
>>
>> On Jun 7, 2013, at 17:39 , ext Andy Zhou wrote:
>>
>> Thanks for the suggestion.
>>
>> The kernel source I am looking at: 3.9.0-rc8, does not a accessible definition of ROUND_UP, but roundup(x,y) is, and fits the bill. I am thinking of using it instead, unless it breaks on some older kernel version that we care about.
>>
>> From kernel.h:
>>
>> /* The `const' in roundup() prevents gcc-3.3 from calling __divdi3 */
>> #define roundup(x, y) ( \
>> { \
>> const typeof(y) __y = y; \
>> (((x) + (__y - 1)) / __y) * __y; \
>> }
>>
>>
>> On Fri, Jun 7, 2013 at 7:19 AM, Rajahalme, Jarno (NSN - FI/Espoo) <jarno.rajahalme at nsn.com<mailto:jarno.rajahalme at nsn.com>> wrote:
>>
>> On Jun 7, 2013, at 13:35 , ext Andy Zhou wrote:
>>
>> Is this the same as DIV_ROUND_UP?
>> I did not use it because DIV_ROUND_UP gives the roundup of u32, I needed the roundup in bytes. However, I could rewrite this function using DIV_ROUND_UP.
>>
>> There is ROUND_UP doing that already.
>>
>>
>
>> _______________________________________________
>> dev mailing list
>> dev at openvswitch.org
>> http://openvswitch.org/mailman/listinfo/dev
>
More information about the dev
mailing list