On Wed 2021-05-19 20:32 +0100, Matthew Wilcox wrote:
On Wed, May 19, 2021 at 08:23:21PM +0100, Aaron Tomlin wrote:
quoted
+++ b/mm/page_alloc.c
@@ -4252,6 +4252,9 @@ should_compact_retry(struct alloc_context *ac, int order, int alloc_flags,
if (!order)
return false;
+ if (fatal_signal_pending(current))
+ goto out;
I think 'goto out' will be confusing. It'll output a tracepoint, which
isn't going to record that a fatal signal is pending, so it'll cause
some head scratching for someone looking through the traces. I
think we should just return false here and skip the tracepoint.
I agree. Having said this, I do plan to send a patch to illustrate why
compaction should not retry to avoid possible confusion. Nevertheless, I am
happy to modify as per your request.
Kind regards,
--
Aaron Tomlin