de-reference of rcu pointers (sparse warnings)

From: Ben Dooks
Date: Tue Nov 05 2019 - 03:13:16 EST


There are a few places in the kenrnel which directly de-reference
pointers marked as "noderef" such sa rcu or percpu. In the case
of rcu, one example is:

kernel/fork.c:2146:32: warning: incorrect type in assignment (different address spaces)
kernel/fork.c:2146:32: expected struct task_struct [noderef] <asn:4> *real_parent
kernel/fork.c:2146:32: got struct task_struct *task

this looks fairly non-trivial to fix given there's a mix of __rcu and non-__rcu
attributed variables.

Does anyone have an idea how to go about fixing these, if possible?

--
Ben