Re: [PATCH] powerpc/mm: bail out early when flushing TLB page
From: Scott Wood <hidden>
Date: 2015-01-30 21:53:19
Also in:
lkml
From: Scott Wood <hidden>
Date: 2015-01-30 21:53:19
Also in:
lkml
On Fri, 2015-01-30 at 19:08 +0700, Arseny Solokha wrote:
MMU_NO_CONTEXT is conditionally defined as 0 or (unsigned int)-1.
For nohash it is specifically -1.
However, in __flush_tlb_page() a corresponding variable is only tested for open coded 0, which can cause NULL pointer dereference if `mm' argument was legitimately passed as such. Bail out early in case the first argument is NULL, thus eliminate confusion between different values of MMU_NO_CONTEXT and avoid disabling and then re-enabling preemption unnecessarily.
How did you notice this? Did you see an oops, or was it code inspection? I'm wondering what codepath gets here with mm == NULL. -Scott