mm: remove __GFP_NOFAIL is deprecated comment
[linux-2.6-block.git] / mm / madvise.c
index f56825b6d2e103c920d2b21cfb56e316dcea9418..a01147359f3bb71c9c34b9c14f97ad0a730d33e5 100644 (file)
@@ -555,8 +555,9 @@ static int madvise_hwpoison(int bhv, unsigned long start, unsigned long end)
                }
                pr_info("Injecting memory failure for page %#lx at %#lx\n",
                       page_to_pfn(p), start);
-               /* Ignore return value for now */
-               memory_failure(page_to_pfn(p), 0, MF_COUNT_INCREASED);
+               ret = memory_failure(page_to_pfn(p), 0, MF_COUNT_INCREASED);
+               if (ret)
+                       return ret;
        }
        return 0;
 }
@@ -638,14 +639,28 @@ madvise_behavior_valid(int behavior)
  *             some pages ahead.
  *  MADV_DONTNEED - the application is finished with the given range,
  *             so the kernel can free resources associated with it.
+ *  MADV_FREE - the application marks pages in the given range as lazy free,
+ *             where actual purges are postponed until memory pressure happens.
  *  MADV_REMOVE - the application wants to free up the given range of
  *             pages and associated backing store.
  *  MADV_DONTFORK - omit this area from child's address space when forking:
  *             typically, to avoid COWing pages pinned by get_user_pages().
  *  MADV_DOFORK - cancel MADV_DONTFORK: no longer omit this area when forking.
+ *  MADV_HWPOISON - trigger memory error handler as if the given memory range
+ *             were corrupted by unrecoverable hardware memory failure.
+ *  MADV_SOFT_OFFLINE - try to soft-offline the given range of memory.
  *  MADV_MERGEABLE - the application recommends that KSM try to merge pages in
  *             this area with pages of identical content from other such areas.
  *  MADV_UNMERGEABLE- cancel MADV_MERGEABLE: no longer merge pages with others.
+ *  MADV_HUGEPAGE - the application wants to back the given range by transparent
+ *             huge pages in the future. Existing pages might be coalesced and
+ *             new pages might be allocated as THP.
+ *  MADV_NOHUGEPAGE - mark the given range as not worth being backed by
+ *             transparent huge pages so the existing pages will not be
+ *             coalesced into THP and new pages will not be allocated as THP.
+ *  MADV_DONTDUMP - the application wants to prevent pages in the given range
+ *             from being included in its core dump.
+ *  MADV_DODUMP - cancel MADV_DONTDUMP: no longer exclude from core dump.
  *
  * return values:
  *  zero    - success