diff options
Diffstat (limited to 'mm/memory-failure.c')
-rw-r--r-- | mm/memory-failure.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 117ef1598469..2d5f1223bf4d 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c | |||
@@ -49,10 +49,12 @@ int sysctl_memory_failure_recovery __read_mostly = 1; | |||
49 | 49 | ||
50 | atomic_long_t mce_bad_pages __read_mostly = ATOMIC_LONG_INIT(0); | 50 | atomic_long_t mce_bad_pages __read_mostly = ATOMIC_LONG_INIT(0); |
51 | 51 | ||
52 | u32 hwpoison_filter_enable = 0; | ||
52 | u32 hwpoison_filter_dev_major = ~0U; | 53 | u32 hwpoison_filter_dev_major = ~0U; |
53 | u32 hwpoison_filter_dev_minor = ~0U; | 54 | u32 hwpoison_filter_dev_minor = ~0U; |
54 | u64 hwpoison_filter_flags_mask; | 55 | u64 hwpoison_filter_flags_mask; |
55 | u64 hwpoison_filter_flags_value; | 56 | u64 hwpoison_filter_flags_value; |
57 | EXPORT_SYMBOL_GPL(hwpoison_filter_enable); | ||
56 | EXPORT_SYMBOL_GPL(hwpoison_filter_dev_major); | 58 | EXPORT_SYMBOL_GPL(hwpoison_filter_dev_major); |
57 | EXPORT_SYMBOL_GPL(hwpoison_filter_dev_minor); | 59 | EXPORT_SYMBOL_GPL(hwpoison_filter_dev_minor); |
58 | EXPORT_SYMBOL_GPL(hwpoison_filter_flags_mask); | 60 | EXPORT_SYMBOL_GPL(hwpoison_filter_flags_mask); |
@@ -145,6 +147,9 @@ static int hwpoison_filter_task(struct page *p) { return 0; } | |||
145 | 147 | ||
146 | int hwpoison_filter(struct page *p) | 148 | int hwpoison_filter(struct page *p) |
147 | { | 149 | { |
150 | if (!hwpoison_filter_enable) | ||
151 | return 0; | ||
152 | |||
148 | if (hwpoison_filter_dev(p)) | 153 | if (hwpoison_filter_dev(p)) |
149 | return -EINVAL; | 154 | return -EINVAL; |
150 | 155 | ||