|
@@ -457,8 +457,10 @@ static int mem_check(struct sock *sk)
|
|
if (room > FL_MAX_SIZE - FL_MAX_PER_SOCK)
|
|
if (room > FL_MAX_SIZE - FL_MAX_PER_SOCK)
|
|
return 0;
|
|
return 0;
|
|
|
|
|
|
|
|
+ rcu_read_lock_bh();
|
|
for_each_sk_fl_rcu(np, sfl)
|
|
for_each_sk_fl_rcu(np, sfl)
|
|
count++;
|
|
count++;
|
|
|
|
+ rcu_read_unlock_bh();
|
|
|
|
|
|
if (room <= 0 ||
|
|
if (room <= 0 ||
|
|
((count >= FL_MAX_PER_SOCK ||
|
|
((count >= FL_MAX_PER_SOCK ||
|