> -----邮件原件-----
> 发件人: David Miller [mailto:[email protected]]
> 发送时间: 2018年7月12日 10:49
> 收件人: Li,Rongqing <[email protected]>
> 抄送: [email protected]
> 主题: Re: [PATCH] net: convert gro_count to bitmask
>
> From: Li RongQing <[email protected]>
> Date: Wed, 11 Jul 2018 17:15:53 +0800
>
> > + clear_bit(index, &napi->gro_bitmask);
>
> Please don't use atomics here, at least use __clear_bit().
>
Thanks, this is same as Eric's suggestion.
> This is why I did the operations by hand in my version of the patch.
> Also, if you are going to preempt my patch, at least retain the comment I
> added around the GRO_HASH_BUCKETS definitions which warns the reader
> about the limit.
>
I add BUILD_BUG_ON in netdev_init, so I think we need not to add comment
@@ -9151,6 +9159,9 @@ static struct hlist_head * __net_init
netdev_create_hash(void)
/* Initialize per network namespace state */ static int __net_init
netdev_init(struct net *net) {
+ BUILD_BUG_ON(GRO_HASH_BUCKETS >
+ FIELD_SIZEOF(struct napi_struct, gro_bitmask));
+
-RongQing
> Thanks.