rcu/nocb: Make __call_rcu_nocb_wake() safe for many callbacks

It might be hard to imagine having more than two billion callbacks
queued on a single CPU's ->cblist, but someone will do it sometime.
This commit therefore makes __call_rcu_nocb_wake() handle this situation
by upgrading local variable "len" from "int" to "long".

Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
This commit is contained in:
Paul E. McKenney 2019-05-23 13:56:12 -07:00
parent 383e133283
commit ce0a825e40

View File

@ -1615,7 +1615,7 @@ static void __call_rcu_nocb_wake(struct rcu_data *rdp, bool was_alldone,
unsigned long flags)
__releases(rdp->nocb_lock)
{
int len;
long len;
struct task_struct *t;
// If we are being polled or there is no kthread, just leave.