Messages in this thread | | | From | Mateusz Guzik <> | Date | Thu, 26 Oct 2023 16:06:24 +0200 | Subject | Re: [PATCH v2] Fixing directly deferencing a __rcu pointer warning |
| |
On 10/26/23, Michael S. Tsirkin <mst@redhat.com> wrote: > On Thu, Oct 26, 2023 at 05:46:21PM +0530, Abhinav Singh wrote: >> This patch fixes the warning about directly dereferencing a pointer >> tagged with __rcu annotation. >> >> Dereferencing the pointers tagged with __rcu directly should >> always be avoided according to the docs. There is a rcu helper >> functions rcu_dereference(...) to use when dereferencing a __rcu >> pointer. This functions returns the non __rcu tagged pointer which >> can be dereferenced just like a normal pointers. >> >> Signed-off-by: Abhinav Singh <singhabhinav9051571833@gmail.com> > > Well yes but these need to be called under rcu_read_lock. > Who does it here? > If no one then maybe you found an actual bug and we need to > fix it not paper over it. >
There is no bug here.
p is the newly created thread, ->real_cred was initialized just prior to this code and there is nobody to whack the creds from under it.
Second bit in the patch changes one real_parent deref, but leaves 2 others just above it. Once more no bug since the entire thing happens under tasklist_lock, but the patch should either sort all these cases or none.
I think it would help if the submitter had shown warnings they see.
-- Mateusz Guzik <mjguzik gmail.com>
| |