mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: torvalds@linux-foundation.org, fengguang.wu@intel.com,
	linux-kernel@vger.kernel.org
Subject: [GIT PULL] Please pull hwpoison updates for 2.6.33
Date: Mon, 14 Dec 2009 13:12:47 +0100	[thread overview]
Message-ID: <20091214121247.GA10160@basil.fritz.box> (raw)


Hi Linus

Please pull the hwpoison updates for 2.6.33 from

  git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6.git hwpoison

This touches some code outside hwpoison,  like the page flags
reporting code and some fixes for memcg to implement the memcg hwpoison
filter.  All these changes are straight-forward, and have been reviewed.

Major new features:
- "soft offline" Offline a page without killing a process.
This allows to implement predictive failure analysis for memory, by
watching error trends per page and offlining a page that has too many
corrected errors.  The policy is all in user space; the kernel just 
offlines the page and reports the errors.
The current git mcelog has support for using this interface.
- Be more aggressive at flushing caches to get access to a page
- Various fixes for the core memory_failure path
- Handle free memory better by detecting higher-order buddy pages
reliably too.
- Provide a new sysfs interface for both hard and soft offlining.
The existing debugfs interface is still there.
- unpoison support
Unpoison a page. This is mainly for testing to let the stress tester
run longer.
- hwpoison filter
Various filters to the hwpoison PFN error injection, including 
memcg, page type, block device and others.
This is used by the mce-test stress suite to protect the test suite itself

Testing:
There are test cases for soft offlining in mce-test.

Andi Kleen (12):
      HWPOISON: Add Andi Kleen as hwpoison maintainer to MAINTAINERS
      HWPOISON: Be more aggressive at freeing non LRU caches
      HWPOISON: Turn ref argument into flags argument
      HWPOISON: add memory cgroup filter
      HWPOISON: Use get_user_page_fast in hwpoison madvise
      HWPOISON: mention HWPoison in Kconfig entry
      HWPOISON: Use correct name for MADV_HWPOISON in documentation
      HWPOISON: Use new shake_page in memory_failure
      HWPOISON: Undefine short-hand macros after use to avoid namespace conflict
      HWPOISON: Add soft page offline support
      HWPOISON: Add a madvise() injector for soft page offlining
      HWPOISON: Don't do early filtering if filter is disabled

Haicheng Li (1):
      HWPOISON: add an interface to switch off/on all the page filters

Wu Fengguang (19):
      page-types: add standard GPL license header
      HWPOISON: remove the anonymous entry
      HWPOISON: return ENXIO on invalid page number
      HWPOISON: avoid grabbing the page count multiple times during madvise injection
      HWPOISON: abort on failed unmap
      HWPOISON: comment the possible set_page_dirty() race
      HWPOISON: comment dirty swapcache pages
      HWPOISON: introduce delete_from_lru_cache()
      HWPOISON: remove the free buddy page handler
      HWPOISON: detect free buddy pages explicitly
      HWPOISON: Add unpoisoning support
      HWPOISON: make semantics of IGNORED/DELAYED clear
      HWPOISON: return 0 to indicate success reliably
      HWPOISON: add fs/device filters
      HWPOISON: limit hwpoison injector to known page types
      mm: export stable page flags
      HWPOISON: add page flags filter
      memcg: rename and export try_get_mem_cgroup_from_page()
      memcg: add accessor to mem_cgroup.css

 .../ABI/testing/sysfs-memory-page-offline          |   44 ++
 Documentation/vm/hwpoison.txt                      |   52 ++-
 Documentation/vm/page-types.c                      |   15 +-
 MAINTAINERS                                        |    9 +
 drivers/base/memory.c                              |   61 +++
 fs/proc/page.c                                     |   45 +--
 include/asm-generic/mman-common.h                  |    1 +
 include/linux/kernel-page-flags.h                  |   46 ++
 include/linux/memcontrol.h                         |   13 +
 include/linux/mm.h                                 |    8 +-
 include/linux/page-flags.h                         |    4 +-
 mm/Kconfig                                         |    3 +-
 mm/hwpoison-inject.c                               |  113 ++++-
 mm/internal.h                                      |   12 +
 mm/madvise.c                                       |   21 +-
 mm/memcontrol.c                                    |   16 +-
 mm/memory-failure.c                                |  558 ++++++++++++++++++--
 mm/memory.c                                        |    4 +
 mm/page_alloc.c                                    |   21 +
 19 files changed, 921 insertions(+), 125 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-memory-page-offline
 create mode 100644 include/linux/kernel-page-flags.h
-- 
ak@linux.intel.com -- Speaking for myself only.

                 reply	other threads:[~2009-12-14 12:13 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091214121247.GA10160@basil.fritz.box \
    --to=andi@firstfloor.org \
    --cc=fengguang.wu@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®