From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 95E5BC369C2 for ; Fri, 25 Apr 2025 15:45:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B31706B0005; Fri, 25 Apr 2025 11:45:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ADF3F6B0007; Fri, 25 Apr 2025 11:45:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 981206B0008; Fri, 25 Apr 2025 11:45:06 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 766DD6B0005 for ; Fri, 25 Apr 2025 11:45:06 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 660C98126A for ; Fri, 25 Apr 2025 15:45:07 +0000 (UTC) X-FDA: 83372989854.18.0A13151 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf09.hostedemail.com (Postfix) with ESMTP id EFAAE14000E for ; Fri, 25 Apr 2025 15:45:04 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=WdtKWpoj; dmarc=pass (policy=quarantine) header.from=redhat.com; spf=pass (imf09.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745595905; a=rsa-sha256; cv=none; b=rRmyeyQVcTOz5x1jahx8hz2r9qpVKl49lh6uwe8LGZzGBGA4c8lpoLHqnLDWCk8w6P7nFj yBh+lsLXkRdyKI++i7cHpt01X4mnY93HUHKj7/77XTALLQgx3KXaNXeYVmI/EoaRkrjqmX XJsVXHypMJuXVUTMab0FwDjnjhws0Tw= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=WdtKWpoj; dmarc=pass (policy=quarantine) header.from=redhat.com; spf=pass (imf09.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745595905; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Hiof3A3cTkiDcDIiwDJpp213Ent/m5U6m6lMi/Ixq+s=; b=48l/9I1NNg5atvU3u7e41n9eWI5oyyzClkdERqO4ebZP0bZhooQvwa9cGFbc2CvSc4qath /0SEcNelRKqTlaT0iqdvwSD7DPUelYoon5oqJ0szgmiAoESEL3zKM3WoO3JZ4eimXeya+D vWFjboXynGLSGMJtV0ouJx+dz66aN6s= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1745595904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Hiof3A3cTkiDcDIiwDJpp213Ent/m5U6m6lMi/Ixq+s=; b=WdtKWpojUj2J4smZL4BHwywT/IRayUKZqnO4YM0oytln9dSBufG6zyGeatOskEPmTgLtQJ HPKE/heRTCi/a8I7+gArXKrP8v9nJmTmR8m69KWnvPN0irsLkIc6o4S0xTcVDqMptoqVR/ VJpYIl579rWU4Xd0kRAy7oEzYSZ1/WU= Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-49-NZpMiz6qMj-SD1JiMenbOg-1; Fri, 25 Apr 2025 11:45:03 -0400 X-MC-Unique: NZpMiz6qMj-SD1JiMenbOg-1 X-Mimecast-MFC-AGG-ID: NZpMiz6qMj-SD1JiMenbOg_1745595902 Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-47685de2945so38869131cf.0 for ; Fri, 25 Apr 2025 08:45:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745595902; x=1746200702; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Hiof3A3cTkiDcDIiwDJpp213Ent/m5U6m6lMi/Ixq+s=; b=Maqsr/KP99b6gUfRvNTSmCyn9RppwvTLMNiGMaawRkul3lEkHLiecv1Xpj4+KwMsz0 HnjjDlEajAjeV18EgQaPbyCfj6X5K9qFQz5mpbl9F0EvuIylZ03SdHph51VMdLialtp/ itS71JuIToG8i+u19prAjSQHcP0j61LK2fqvHZn9rYKTgC1K+xKgGlE9uvq8LlRbog0K M/EVYyXVFTW1tm0yalKGmvN5RfRqP3RKezO95lm20zRwdwwkMi9QmNvvO+eBzHKsrG1/ k4LVR0yuaNsV11jQbR/7j/mClWwAiO+21xngt0zdHsRgJL6ONxndfNQnDVBozC7FpUBe 45ag== X-Forwarded-Encrypted: i=1; AJvYcCVvF4Hz5GbL2vkBHhAAJODlILi4Cg0T/Nlpxu5wbMxePfIb9GkjtLq7y1XHBopbfZp6BtqwnD7wDg==@kvack.org X-Gm-Message-State: AOJu0YzjVB8ycd0/DRm7nbF6R+SM2XSecdro2mBETXqOkFljDbdGAVuC a4pQrGMB/nViLhS1p9ZEJALGKkIypTWG5BRYBUKcj9Qg2sQOdXT0ecbGy+EazFQfqDD42kP1MT1 mY28R1CwV0puqnRXyr7qzOCVqErxZNZLbygy8P10DXHr+JGq1 X-Gm-Gg: ASbGncskgIBXidTXAAO6cdCLN4lSOmAk3KsUrTiLi9aWK7P7JXQ+WfroSBRTKV0m7XG PEHhEO+uuaHfB/8TtxomEqC/x1GmO0EcGjoVi7j9OTTD9q1Lkl6hniFJ0cmv1Pj5f2ub2a1U0Dl PQ1/G91LgVSKLMOXsPJAbMRKUAQ1NQfiH1vr4kbRL2VzpEx9YHPyw34cCkW5I9tcAB+rz86jBR4 OqDunkhwuBAtuifVfNn4fYghe90+kF07zvMt8/vJMiJqgDE66JvYk7upD8NA7cTyuZ9FrKaf5EV 92o= X-Received: by 2002:a05:622a:315:b0:477:41e5:cb8d with SMTP id d75a77b69052e-4801e9e3639mr37436591cf.44.1745595902627; Fri, 25 Apr 2025 08:45:02 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFMtGEXUdc1pttInszqwGo8CcuEvmRkp5U7mI9l29hGjtQVzppVl01ysYhGDpH/L9C07a++UQ== X-Received: by 2002:a05:622a:315:b0:477:41e5:cb8d with SMTP id d75a77b69052e-4801e9e3639mr37436391cf.44.1745595902345; Fri, 25 Apr 2025 08:45:02 -0700 (PDT) Received: from x1.local ([85.131.185.92]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-47e9efdaa41sm26715741cf.19.2025.04.25.08.45.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Apr 2025 08:45:01 -0700 (PDT) Date: Fri, 25 Apr 2025 11:44:58 -0400 From: Peter Xu To: Matthew Wilcox Cc: Johannes Weiner , Jens Axboe , Andrew Morton , "linux-fsdevel@vger.kernel.org" , Linux-MM Subject: Re: [PATCH] mm/userfaultfd: prevent busy looping for tasks with signals pending Message-ID: References: <27c3a7f5-aad8-4f2a-a66e-ff5ae98f31eb@kernel.dk> <20250424140344.GA840@cmpxchg.org> MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: eKHrabyKxMDVT06t6QwyfmisfxJ0CqHe28IVRuu76gI_1745595902 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: EFAAE14000E X-Stat-Signature: grfdy55nbkszee7swowdje9nkhatitsn X-Rspam-User: X-HE-Tag: 1745595904-245078 X-HE-Meta: U2FsdGVkX18IeBnFyej5fMrQ+VTDwUIaH8KzQ5C61EYLRZJ8K+iI/XI5fL1JLN/1vd4fv+g8jv0fBNnH89WaIb9Z5H8h8YRRK6akanF6oBqTjv0i9KtZlajC1AjVpeQ6TtKJraPmK5Vl3xWimgRtyGNl5/cbHmd4fJ+UwRR1OijSSSFutre0RKXfU+dUCLrjpWo29/XxISLzMhWQ39NsSNdQZ8zjYv3QWtnKXGLUAdMPCt5BmMUj4Vo1IOEFNd7TvT37NXYRj67DQmNStwGv15b70Pn45gP94xLLzXzft4C00+0/4dop59rI4S3gcqJn82mVNo3c/P+5HBDsy9VgkC+Oq1rOaFiiVQIerUeTwCg44zJDMKvdtPLrjXBnZtCuZMCIOcgFBYjvddo803PtLeZEgZVKR3itfQ14fvD5QceJgS4NS8eSxpBMzXg0tX9Qt7L3qUJOZojovK0BkGgDw+zUh8E2qoTyxpuovvH4yewVqM/DU+0HKX0BE9IVEd3fL7paWSuINfhAbMurUhOBCm4wTExsHF7loMV/BkDV0tmhBA1w001nn/5kiUrU8XwB/WirYfzkcentfWnPB/u+ljvhRXXB8H6kxxj2yI7Ywz8C5ShOTa6DQYXGKZ5LkjVr6lpH55ua2V3VcBuZnUwN+tKJ55jwC5Jg1f73CKzhebmwAMqhHlN2dA5nj9LvO+Gk0duDyzCH6tdSEgzEySX9mqM/TqZya5NDZYG2g4KfHz6wfIZXLVGcHU0zJ+qT5pAXrB46M3jZQc42z8/jV6gIZTCGC4zMssWqqlziXuFJ+b3hGMPs/TZSBRSVXaPpa2C5STlI6gU6SmDfAJIHEP7MxtijUonkTjiDOg9KL/WkzCRCCY1vT99YdrIKv0oofHBKkCkLAtQmvQnTxdawL3LtQn/lKXL6Su64GRGipXiNmpxbMAgMOJ0ThsLbscAHVohaStxuQlLwZ/JlPJ26LPo qHbZ2F9J ByZZkF5/hulvCH1OBWGbEu5wtdPL+nshySocrCXVLFVrlnHW2oaYWuE5JwRAUV6wN6uzVZ8HwO8GbmAEVYexzljcZEnlvGLQWEkyN0CwtMcPcSFzyAydsEvLLiNfko5K2jgX/pW+2x7rQmWwRL+84vWRjqvlHWj86QGtWJyysj+HgeQ+qRwr2gds0lr6iYPDWcgYf3bALD03zdycRUDCjxVmr3PBaIZzhbf9L20w0ENT3hMrsAit5DDhfxNtr1UVY3JwnMuINwg9lbW5oTjzM337iZraYMzn/6AIP/6+8Xm01QTN03f0d9x70LlTWuo1Hmh4QPo3LlnuQJflryNwV35V3kHWZRX4jx31nyGlWGsm5ix//CEXkKUy3bgJKOrWhr6sD X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Fri, Apr 25, 2025 at 05:52:20AM +0100, Matthew Wilcox wrote: > Because "interruptible" means it can be interrupted by inane stuff like > SIGWINCH and SIGALRM. And then we return from a page fault prematurely > and can't actually handle the situation, so we end up going back into the > page fault handler anyway having accomplished nothing other than burn CPU. > > At least it's better than interruptible system calls which just gets > you short reads, corrupted data and crashing programs. I see where it came from now, thanks. IIUC it'll be a major spinning issue only if the fault is generated from the sighandler itself which spins on its own. The hope is that sighandler should almost always be suggested to be as tiny as possible, to make it unlikely to happen. Said that, it's a valid point indeed. Maybe we should make FAULT_FLAG_INTERRUPTIBLE a hint rather than a request to handle_mm_fault(), so the internal of page resolution can decide whether to respect the hint. Thanks, -- Peter Xu