linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] x86/mm: support memory-failure on 32-bits with SPARSEMEM
@ 2025-11-04  7:23 Xie Yuanbin
  2025-11-04  7:23 ` [PATCH v2 1/2] " Xie Yuanbin
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Xie Yuanbin @ 2025-11-04  7:23 UTC (permalink / raw)
  To: david, dave.hansen, bp, tglx, mingo, dave.hansen, hpa, akpm,
	lorenzo.stoakes, Liam.Howlett, vbabka, rppt, surenb, mhocko,
	linmiaohe, nao.horiguchi, luto, peterz, tony.luck
  Cc: x86, linux-kernel, linux-mm, linux-edac, will, liaohua4,
	lilinjie8, Xie Yuanbin

Memory bit flips are among the most common hardware errors in the server
and embedded fields, many hardware components have memory verification
mechanisms, for example ECC. When an error is detected, some hardware or
architectures report the information to software (OS/BIOS), for example,
the MCE (Machine Check Exception) on x86.

Common errors include CE (Correctable Errors) and UE (Uncorrectable
Errors). When the kernel receives memory error information, if it has the
memory-failure feature, it can better handle memory errors without reboot.
For example, kernel can attempt to offline the affected memory by
migrating it or killing the process. Therefore, this feature is widely
used in servers and embedded fields.

For historical versions, memory-failure cannot be enabled with x86_32 &&
SPARSEMEM because the number of page-flags are insufficient. However, this
issue has been resolved in the current version, and this patch will allow
SPARSEMEM and memory-failure to be enabled together on x86_32.

By the way, due to increased demand, DRAM prices have recently
skyrocketed, making memory-failure potentially even more valuable in the
coming years.

v1-v2: https://lore.kernel.org/20251103033536.52234-1-xieyuanbin1@huawei.com
  - Describe the purpose of these patches in the cover letter.

  - Correct the description of historical changes to page flags.

  - Move the memory-failure traceing code from ras_event.h to
    memory-failure.h

Xie Yuanbin (2):
  x86/mm: support memory-failure on 32-bits with SPARSEMEM
  mm/memory-failure: remove the selection of RAS

 arch/x86/Kconfig                      |  3 -
 include/ras/ras_event.h               | 86 ------------------------
 include/trace/events/memory-failure.h | 97 +++++++++++++++++++++++++++
 mm/Kconfig                            |  1 -
 mm/memory-failure.c                   |  5 +-
 5 files changed, 101 insertions(+), 91 deletions(-)
 create mode 100644 include/trace/events/memory-failure.h

-- 
2.51.0



^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2025-11-18  8:09 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-04  7:23 [PATCH v2 0/2] x86/mm: support memory-failure on 32-bits with SPARSEMEM Xie Yuanbin
2025-11-04  7:23 ` [PATCH v2 1/2] " Xie Yuanbin
2025-11-04  7:23 ` [PATCH v2 2/2] mm/memory-failure: remove the selection of RAS Xie Yuanbin
2025-11-04  9:38   ` David Hildenbrand (Red Hat)
2025-11-04  9:50     ` Xie Yuanbin
2025-11-04  9:33 ` [PATCH v2 0/2] x86/mm: support memory-failure on 32-bits with SPARSEMEM David Hildenbrand (Red Hat)
2025-11-04 13:29   ` Xie Yuanbin
2025-11-04 13:32   ` Xie Yuanbin
2025-11-04 14:26 ` Dave Hansen
2025-11-05  2:45   ` Xie Yuanbin
2025-11-05  8:12     ` David Hildenbrand (Red Hat)
2025-11-05  9:05       ` Xie Yuanbin
2025-11-17  2:09         ` Xie Yuanbin
2025-11-17 13:03           ` David Hildenbrand (Red Hat)
2025-11-18  8:09             ` Xie Yuanbin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox