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 E06F1C5B543 for ; Tue, 10 Jun 2025 13:11:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 75DF56B007B; Tue, 10 Jun 2025 09:11:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 735B36B0089; Tue, 10 Jun 2025 09:11:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 64B796B008A; Tue, 10 Jun 2025 09:11:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 44AB26B007B for ; Tue, 10 Jun 2025 09:11:30 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id C5961588FD for ; Tue, 10 Jun 2025 13:11:29 +0000 (UTC) X-FDA: 83539527498.11.C448DB6 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf03.hostedemail.com (Postfix) with ESMTP id 5D5E520009 for ; Tue, 10 Jun 2025 13:11:27 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=f1Sd258l; spf=pass (imf03.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749561087; 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=PhqS06saP1LVqx4PfgAfErKznxSNHLACuFCn7pP6egw=; b=wxKcoiVQSx7GhJaogYaKQXkjUt5Dz/0xS2/58us5eGqyFXdIi1Bo4Mltq/1s2eVAzEU/tm XHdsPzsfgjpvIV2lCVnQbjsToghqQ60knCqsKdrSxXBL7tyKXczy17MKh/DjCNihCNXDzL YF9v6vP3HT3DDxxdzDa1j6xbqCJJtSc= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=f1Sd258l; spf=pass (imf03.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749561087; a=rsa-sha256; cv=none; b=2yIOzx9qY+po4OzP1Nu2gtA01NRE3ndvFrdIL4woTHXoEqg8GZDlYFqzJIhqrWA7la4IQb FB1WY9Gz0tKTy6HV5kdljzDJxW9/f8jpGN2o04s4ZuVEw7pfS6TpCGOcDH7Wv3jrSNftVR uifeJ/P2vX1bgEmB9FGHsmp2zIIpa/s= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1749561086; 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=PhqS06saP1LVqx4PfgAfErKznxSNHLACuFCn7pP6egw=; b=f1Sd258lJeXOfbWxDjPVBb6xTBJmB9J7l41YlkWingRK05LeFvK/rP7DjlArp2djn0zTK+ x/8/AZ0u6X0UUffMXA0HbH0bzKcQ6ckxku3exn8n9f72E5XTcNJOQo6DLe3jdUMRtYyNaP tvvmfKSUVnorXEc6UnCS6QKeZdA5a/M= Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-130-2iEh6yNUObidO0Q0MSjx8g-1; Tue, 10 Jun 2025 09:11:24 -0400 X-MC-Unique: 2iEh6yNUObidO0Q0MSjx8g-1 X-Mimecast-MFC-AGG-ID: 2iEh6yNUObidO0Q0MSjx8g_1749561084 Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-7c5e28d0cc0so839774485a.3 for ; Tue, 10 Jun 2025 06:11:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749561084; x=1750165884; 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=PhqS06saP1LVqx4PfgAfErKznxSNHLACuFCn7pP6egw=; b=Ic4WLKY6PKI/2rDKEMLbPBnRsq3kZ2o6c106aCV8GQBiUPKblX8Y4vYZGkS/d1qF87 4kjpItOw8UmXKbS1TOh30jZzEZtCJsYeafgpS5oYcYnzNCEj8bZSZpNPRCqVlSiJwW6g dYIXrNJa/f1EQ9i2kfbzdLsdf9ALluxoM3ritPGdLoCg8wE9cxl8UYT5Pg23jxkStL83 0qDhiCyUpXQFB0y9nMShg2JSGt3/HJy1kHrq9I8PZ9zuDDnCwnvUhndjlyAsHskXxHVt /cCyssTMjv7Ez31dzty1adac31e888ea0ZzQexdF1rsz9DLwIDAoxn5lLGW6AVCUp/CH AmJA== X-Forwarded-Encrypted: i=1; AJvYcCXcoyEy2hhBbMxyD/L1Qo7oOyMlvC6KDw89M7UVIh0CrSOLCfftwIZdgWm8sONpiUx4hNuskRhthQ==@kvack.org X-Gm-Message-State: AOJu0YzZ9kPbKCVQJjHH9/4ruzRyd5Sni7xNRAm6ZKYVyIqYMakDWI5d IzsEMQs+zREclAuSn3IaxqP8YxZPk7WR48sUyMXPUGtYB4fi5Zd6PtiW/Hq5GKaDzxSQ1SukqQb N/GDU8oBJcorU8wYFcyedR8uTzS25YRisWtewuFunHCQAMj/2b4CA X-Gm-Gg: ASbGncuH5sTo4tYX3HGqwe2T9DFrFB36YpdJ0dfKj93Wj7c8LgAbPRhn1uFwTSeqzMd ldgLOrFoUuJcVdNqtlIux1Nz/eSk0RxiLeU/83z0Z5ISHK0yUu9NHgbHjh/QAp0FrPEuSFOp75E chWIEUSDF8UZmvgVzX7tJJjDYSwiKNAtg27WAXiFFyp6K+rSfnFiGEkUir2GR4EKa8CfKgM+kKR Q3GQxtflgG+0T5YWyDL4Pt5m9Zwp6jMCmKBtA+oVthq+PdGJ0teED7a4lYV8UggXSc2D9y28nHL zp2fODU24YR50Q== X-Received: by 2002:a05:620a:2894:b0:7cd:45ed:c4a5 with SMTP id af79cd13be357-7d22978d152mr2576821885a.0.1749561084049; Tue, 10 Jun 2025 06:11:24 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH5Kg4madu7LuU/8MhY9BTy7JYlDFWkE0RIx1LsqTkElbqQyUnF78engArSsUFzoomYY/zZkQ== X-Received: by 2002:a05:620a:2894:b0:7cd:45ed:c4a5 with SMTP id af79cd13be357-7d22978d152mr2576816985a.0.1749561083551; Tue, 10 Jun 2025 06:11:23 -0700 (PDT) Received: from x1.local ([85.131.185.92]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7d38e0b379dsm416030385a.117.2025.06.10.06.11.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Jun 2025 06:11:22 -0700 (PDT) Date: Tue, 10 Jun 2025 09:11:20 -0400 From: Peter Xu To: Tal Zussman Cc: Andrew Morton , "Jason A. Donenfeld" , David Hildenbrand , Alexander Viro , Christian Brauner , Jan Kara , Andrea Arcangeli , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: Re: [PATCH v2 2/4] userfaultfd: remove (VM_)BUG_ON()s Message-ID: References: <20250607-uffd-fixes-v2-0-339dafe9a2fe@columbia.edu> <20250607-uffd-fixes-v2-2-339dafe9a2fe@columbia.edu> MIME-Version: 1.0 In-Reply-To: <20250607-uffd-fixes-v2-2-339dafe9a2fe@columbia.edu> X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: tzEOACgumPkkbo_kDkzACsDdfAso9jpjChhSV3OOuwM_1749561084 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 5D5E520009 X-Stat-Signature: b74outjwbbzxph67bfxqskbs8opxse6k X-Rspam-User: X-HE-Tag: 1749561087-31901 X-HE-Meta: U2FsdGVkX1/hjRKA8M05GX13Lkf50eESJYMgjIhGsdVKP1Pzlf6Sat94JxPTLb0WukBb6u2jif2gt+UdBrdbf/s6Xx+im3UDqoZ9XqJlSbLwwjpDnfAQrGPxLQb3COC8MVSHX8dbz81/83/C1BY+mq86DyCqMiMyOIhPsFD0VE2BACDYGjImIxdPWTGDUSCZhRHSx8Awacyloa9HdAY379UxrCNUjItKWA5AggH0v01EMaDXT6M6/MEkLt3Hf93cLLWo8YLv00DHZ353wLr5097Fpq1ldxysrsgtiw5sr9D89Nz0tLNWo9ORzkjmBuPJlToefPq+pt9iF+q+1HVXLNC9TlNgMmZ2T8XXUL8qb7n1hY2o0BC970SGnEx84cBTWoyOK14OkefzG5cnrGMsLLHgbPgU7CfB4O1WXpdwxu3X7WWtu5D6AZaZrAFV/4SSS4RT9TxpZfKxY8LQ1ywH57vohafLrKb+k88z/EAozEuERweVCbKndYvNf4rsd+UqQOGXjtz9aNH9WqbZPKwgA4fyx+jlD+PANMrPxmwUuTRT1t3GLEyiooTxWqf35Mnnbh/ueq23V6Jr3BCH3ivZC7lY//ZD8yPQw/xYP1oYvh4aZwNnSzP5bKUZSnLgKA60+Lh2ePffgSgjcEULCeC1BFS//RXJezq3OGGxoxfKFr32dPxysMUA/ifRDz6VYPKMoIZdYaO4171dSKBzC+WXj0jKzVGGvRPVUMOYpzHdlxA+o9CHu7tHyfKeBUkI15Z7YF3MG0v7U1MF12tWh47fBVk2UXMYOxw9X5fDVUMq2JaYQrFaJe0Hz/1wAMgWcd5ao4GMH4MAe0logmIhDJx6CfcoyDYfM+rPxfZGUiC+jY01ERDgenAX8DzngYowKc/2z+FgeKtasK+5W54jIRWMWv83GqOx+g4Com0APMCpOh/PPYOTyjFsFyfO1OB3NSU2bSUvQU4ttddb4J5Oa9o uw/zKrH2 4MMzu5emSL7MxJLKMtBDRZNis0XgHgOspYgISeWBdCgQIU1teYCYu+GgW0rwzBZFO13mluSKzcs89wVJ/Ct1y2ZdOsMCYRxhuq4OICNaXe/SWU9vvCANzfXZPSW+lMtUY9bTlC5/NTsGqXaCh7Zp77NGtZOW2BD0CNeAjFfDlhBgcOYemFs+3IQ93ug3+r5U1sgKbTJm/8hzObVgH1MWBC0u8FpyV31wBT0phjpeV5SHocxpqkN8qrCzhQSBmWW6aF03k9saQ7zxWuIDLmzCzkfl8ny02XHVJONoh/O/lu7Fzg77213tG6LyDCbumh9/d59WtfGkxkpvh4ejrASmMZlP6EcO8v3Q6vnNsO7bXwu6c2S3tYM9/qdcjAslAoUvq6VGbmMxWD3tgKNkS0zJpWl5lY7eSAHgkE9xGvCkU8svZkCG9y+2k7RY6HHRv9HxvWwBa79zGJARVUz4= 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 Sat, Jun 07, 2025 at 02:40:01AM -0400, Tal Zussman wrote: > BUG_ON() is deprecated [1]. Convert all the BUG_ON()s and VM_BUG_ON()s > to use VM_WARN_ON_ONCE(). > > While at it, also convert the WARN_ON_ONCE()s in move_pages() to use > VM_WARN_ON_ONCE(), as the relevant conditions are already checked in > validate_range() in move_pages()'s caller. > > [1] https://www.kernel.org/doc/html/v6.15/process/coding-style.html#use-warn-rather-than-bug > > Signed-off-by: Tal Zussman > --- > fs/userfaultfd.c | 59 +++++++++++++++++++++++++------------------------- > mm/userfaultfd.c | 66 +++++++++++++++++++++++++++----------------------------- > 2 files changed, 61 insertions(+), 64 deletions(-) > > diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c > index 22f4bf956ba1..80c95c712266 100644 > --- a/fs/userfaultfd.c > +++ b/fs/userfaultfd.c > @@ -165,14 +165,14 @@ static void userfaultfd_ctx_get(struct userfaultfd_ctx *ctx) > static void userfaultfd_ctx_put(struct userfaultfd_ctx *ctx) > { > if (refcount_dec_and_test(&ctx->refcount)) { > - VM_BUG_ON(spin_is_locked(&ctx->fault_pending_wqh.lock)); > - VM_BUG_ON(waitqueue_active(&ctx->fault_pending_wqh)); > - VM_BUG_ON(spin_is_locked(&ctx->fault_wqh.lock)); > - VM_BUG_ON(waitqueue_active(&ctx->fault_wqh)); > - VM_BUG_ON(spin_is_locked(&ctx->event_wqh.lock)); > - VM_BUG_ON(waitqueue_active(&ctx->event_wqh)); > - VM_BUG_ON(spin_is_locked(&ctx->fd_wqh.lock)); > - VM_BUG_ON(waitqueue_active(&ctx->fd_wqh)); > + VM_WARN_ON_ONCE(spin_is_locked(&ctx->fault_pending_wqh.lock)); > + VM_WARN_ON_ONCE(waitqueue_active(&ctx->fault_pending_wqh)); > + VM_WARN_ON_ONCE(spin_is_locked(&ctx->fault_wqh.lock)); > + VM_WARN_ON_ONCE(waitqueue_active(&ctx->fault_wqh)); > + VM_WARN_ON_ONCE(spin_is_locked(&ctx->event_wqh.lock)); > + VM_WARN_ON_ONCE(waitqueue_active(&ctx->event_wqh)); > + VM_WARN_ON_ONCE(spin_is_locked(&ctx->fd_wqh.lock)); > + VM_WARN_ON_ONCE(waitqueue_active(&ctx->fd_wqh)); > mmdrop(ctx->mm); > kmem_cache_free(userfaultfd_ctx_cachep, ctx); I didn't follow closely on the latest discussions on BUG_ON, but here I just stumbled on top of this chunk, it does look like a slight overkill using tons of bools for each of them.. even if the doc suggested WARN_ON_ONCE(). David might have a better picture of what's our plan for mm to properly assert while reducing the overhead as much as possible. For this specific one, if we really want to convert we could also merge them into one, so one bool to cover all. -- Peter Xu