Hi Li,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net-next/master]
[also build test ERROR on next-20180713]
[cannot apply to v4.18-rc5]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system]
url:
https://github.co
From: Eric Dumazet
Date: Mon, 16 Jul 2018 16:40:52 -0700
> I guess we could either use BITS_PER_LONG or :
>
> diff --git a/net/core/dev.c b/net/core/dev.c
> index
> c883b17ee0fe2c8a7ca2f2867560ba74004790a7..4f8b92d81d107fc9acd2499297435cbd9e9b5c67
> 100644
> --- a/net/core/dev.c
> +++ b/net/co
On 07/12/2018 11:41 PM, Li RongQing wrote:
> gro_hash size is 192 bytes, and uses 3 cache lines, if there is few
*/
> @@ -9264,6 +9273,9 @@ static struct hlist_head * __net_init
> netdev_create_hash(void)
> /* Initialize per network namespace state */
> static int __net_init
From: Li RongQing
Date: Fri, 13 Jul 2018 14:41:36 +0800
> gro_hash size is 192 bytes, and uses 3 cache lines, if there is few
> flows, gro_hash may be not fully used, so it is unnecessary to iterate
> all gro_hash in napi_gro_flush(), to occupy unnecessary cacheline.
>
> convert gro_count to a b
gro_hash size is 192 bytes, and uses 3 cache lines, if there is few
flows, gro_hash may be not fully used, so it is unnecessary to iterate
all gro_hash in napi_gro_flush(), to occupy unnecessary cacheline.
convert gro_count to a bitmask, and rename it as gro_bitmask, each bit
represents a element