* [PATCH v1 0/2] kasan: fix memory notifier handling
@ 2018-05-22 9:55 David Hildenbrand
2018-05-22 9:55 ` [PATCH v1 1/2] kasan: free allocated shadow memory on MEM_CANCEL_OFFLINE David Hildenbrand
2018-05-22 9:55 ` [PATCH v1 2/2] kasan: fix memory hotplug during boot David Hildenbrand
0 siblings, 2 replies; 4+ messages in thread
From: David Hildenbrand @ 2018-05-22 9:55 UTC (permalink / raw)
To: linux-mm; +Cc: linux-kernel, David Hildenbrand
If onlining of pages fails, we don't properly free up memory.
Also, the memory hotplug notifier is not registered early enough, still
failing on certain setups where memory is detected, added and onlined
early.
David Hildenbrand (2):
kasan: free allocated shadow memory on MEM_CANCEL_OFFLINE
kasan: fix memory hotplug during boot
mm/kasan/kasan.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--
2.17.0
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v1 1/2] kasan: free allocated shadow memory on MEM_CANCEL_OFFLINE
2018-05-22 9:55 [PATCH v1 0/2] kasan: fix memory notifier handling David Hildenbrand
@ 2018-05-22 9:55 ` David Hildenbrand
2018-05-22 9:58 ` David Hildenbrand
2018-05-22 9:55 ` [PATCH v1 2/2] kasan: fix memory hotplug during boot David Hildenbrand
1 sibling, 1 reply; 4+ messages in thread
From: David Hildenbrand @ 2018-05-22 9:55 UTC (permalink / raw)
To: linux-mm
Cc: linux-kernel, David Hildenbrand, Andrey Ryabinin,
Alexander Potapenko, Dmitry Vyukov, open list:KASAN
We have to free memory again when we cancel onlining, otherwise a later
onlining attempt will fail.
Signed-off-by: David Hildenbrand <david@redhat.com>
---
mm/kasan/kasan.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/mm/kasan/kasan.c b/mm/kasan/kasan.c
index 135ce2838c89..8baefe1a674b 100644
--- a/mm/kasan/kasan.c
+++ b/mm/kasan/kasan.c
@@ -867,6 +867,7 @@ static int __meminit kasan_mem_notifier(struct notifier_block *nb,
kmemleak_ignore(ret);
return NOTIFY_OK;
}
+ case MEM_CANCEL_OFFLINE:
case MEM_OFFLINE: {
struct vm_struct *vm;
--
2.17.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v1 2/2] kasan: fix memory hotplug during boot
2018-05-22 9:55 [PATCH v1 0/2] kasan: fix memory notifier handling David Hildenbrand
2018-05-22 9:55 ` [PATCH v1 1/2] kasan: free allocated shadow memory on MEM_CANCEL_OFFLINE David Hildenbrand
@ 2018-05-22 9:55 ` David Hildenbrand
1 sibling, 0 replies; 4+ messages in thread
From: David Hildenbrand @ 2018-05-22 9:55 UTC (permalink / raw)
To: linux-mm
Cc: linux-kernel, David Hildenbrand, Andrey Ryabinin,
Alexander Potapenko, Dmitry Vyukov, open list:KASAN
Using module_init() is wrong. E.g. ACPI adds and onlines memory before
our memory notifier gets registered.
This makes sure that ACPI memory detected during boot up will not
result in a kernel crash.
Easily reproducable with QEMU, just specify a DIMM when starting up.
Signed-off-by: David Hildenbrand <david@redhat.com>
---
mm/kasan/kasan.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/kasan/kasan.c b/mm/kasan/kasan.c
index 8baefe1a674b..04b60d2b607c 100644
--- a/mm/kasan/kasan.c
+++ b/mm/kasan/kasan.c
@@ -892,5 +892,5 @@ static int __init kasan_memhotplug_init(void)
return 0;
}
-module_init(kasan_memhotplug_init);
+core_initcall(kasan_memhotplug_init);
#endif
--
2.17.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v1 1/2] kasan: free allocated shadow memory on MEM_CANCEL_OFFLINE
2018-05-22 9:55 ` [PATCH v1 1/2] kasan: free allocated shadow memory on MEM_CANCEL_OFFLINE David Hildenbrand
@ 2018-05-22 9:58 ` David Hildenbrand
0 siblings, 0 replies; 4+ messages in thread
From: David Hildenbrand @ 2018-05-22 9:58 UTC (permalink / raw)
To: linux-mm
Cc: linux-kernel, Andrey Ryabinin, Alexander Potapenko, Dmitry Vyukov,
open list:KASAN
On 22.05.2018 11:55, David Hildenbrand wrote:
> We have to free memory again when we cancel onlining, otherwise a later
> onlining attempt will fail.
>
> Signed-off-by: David Hildenbrand <david@redhat.com>
> ---
> mm/kasan/kasan.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/mm/kasan/kasan.c b/mm/kasan/kasan.c
> index 135ce2838c89..8baefe1a674b 100644
> --- a/mm/kasan/kasan.c
> +++ b/mm/kasan/kasan.c
> @@ -867,6 +867,7 @@ static int __meminit kasan_mem_notifier(struct notifier_block *nb,
> kmemleak_ignore(ret);
> return NOTIFY_OK;
> }
> + case MEM_CANCEL_OFFLINE:
Typo, MEM_CANCEL_ONLINE
> case MEM_OFFLINE: {
> struct vm_struct *vm;
>
>
--
Thanks,
David / dhildenb
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-05-22 9:58 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-22 9:55 [PATCH v1 0/2] kasan: fix memory notifier handling David Hildenbrand
2018-05-22 9:55 ` [PATCH v1 1/2] kasan: free allocated shadow memory on MEM_CANCEL_OFFLINE David Hildenbrand
2018-05-22 9:58 ` David Hildenbrand
2018-05-22 9:55 ` [PATCH v1 2/2] kasan: fix memory hotplug during boot David Hildenbrand
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).