On Wed 18-03-15 15:34:50, Vlastimil Babka wrote:
On 03/16/2015 03:08 PM, Michal Hocko wrote:
@@ -1080,6 +1080,7 @@ int do_huge_pmd_wp_page(struct mm_struct *mm, struct vm_area_struct *vma,
unsigned long haddr;
unsigned long mmun_start; /* For mmu_notifiers */
unsigned long mmun_end; /* For mmu_notifiers */
+ gfp_t huge_gfp = GFP_TRANSHUGE; /* for allocation and charge */
This value is actually never used. Is it here because the compiler emits a
spurious non-initialized value warning otherwise? It should be easy for it
to prove that setting new_page to something non-null implies initializing
huge_gfp (in the hunk below), and NULL new_page means it doesn't reach the
mem_cgroup_try_charge() call?
No, I haven't tried to workaround the compiler. It just made the code
more obvious to me. I can remove the initialization if you prefer, of
course.