RE: [PATCH v3 2/2] mm, hwpoison: When copy-on-write hits poison, take page offline

From: Luck, Tony
Date: Fri Oct 28 2022 - 12:15:47 EST


>> Cannot call memory_failure() directly from the fault handler because
>> mmap_lock (and others) are held.
>
> Could you please explain which lock makes it unfeasible to call memory_failure() directly and
> why? I'm somewhat confused. But I agree using memory_failure_queue() should be a good idea.

I tried calling memory_failure() directly, and my system just hung. I made the assumption
that it had deadlocked based somewhat on the comments in mm/memory.c about mmap_lock
being held ... but I didn't dig into what had gone wrong.

-Tony