x86 PAT: remove PFNMAP type on track_pfn_vma_new() error
commita36706131182f5507d1e2cfbf391b0fa8d72203c
authorvenkatesh.pallipadi@intel.com <venkatesh.pallipadi@intel.com>
Sat, 10 Jan 2009 00:13:09 +0000 (9 16:13 -0800)
committerIngo Molnar <mingo@elte.hu>
Tue, 13 Jan 2009 18:12:59 +0000 (13 19:12 +0100)
tree46aede534e494045b7cbe4df42b780ca138e6d3e
parente0b325d310a6b11f1538413fd557d2eb98f2fae5
x86 PAT: remove PFNMAP type on track_pfn_vma_new() error

Impact: fix (harmless) double-free of memtype entries and avoid warning

On track_pfn_vma_new() failure, reset the vm_flags so that there will be
no second cleanup happening when upper level routines call unmap_vmas().

This patch fixes part of the bug reported here:

  http://marc.info/?l=linux-kernel&m=123108883716357&w=2

Specifically the error message:

  X:5010 freeing invalid memtype d0000000-d0101000

Is due to multiple frees on error path, will not happen with the patch below.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
mm/memory.c