Re: [PATCH] mm, compaction: avoid uninitialized variable use

From: Arnd Bergmann
Date: Thu May 12 2016 - 08:04:46 EST


On Thursday 12 May 2016 08:16:36 Michal Hocko wrote:
> I think this would be slightly better than your proposal. Andrew, could
> you fold it into the original
> mm-compaction-simplify-__alloc_pages_direct_compact-feedback-interface.patch
> patch?
> ---
> From 434bc8b6f3787724327499998c4fe651e8ce5d68 Mon Sep 17 00:00:00 2001
> From: Michal Hocko <mhocko@xxxxxxxx>
> Date: Thu, 12 May 2016 08:10:33 +0200
> Subject: [PATCH] mmotm:
> mm-compaction-simplify-__alloc_pages_direct_compact-feedback-interface-fix
>
> Arnd has reported the following compilation warning:
> mm/page_alloc.c: In function '__alloc_pages_nodemask':
> mm/page_alloc.c:3651:6: error: 'compact_result' may be used uninitialized in this function [-Werror=maybe-uninitialized]
>
> This should be a false positive TRANSPARENT_HUGEPAGE depends on COMPACTION
> so is_thp_gfp_mask shouldn't be true. GFP_TRANSHUGE is a bit tricky
> and somebody might be using this accidently. Make sure that compact_result
> is defined also for !CONFIG_COMPACT and set it to COMPACT_SKIPPED because
> the compaction was really withdrawn.
>
> Reported-by: Arnd Bergmann <arnd@xxxxxxxx>
> Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
>

Acked-by: Arnd Bergmann <arnd@xxxxxxxx>

Looks much nicer than my version.

Arnd