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 F1D4EC433EF for ; Wed, 6 Jul 2022 02:47:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7942F8E0003; Tue, 5 Jul 2022 22:47:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 743F08E0001; Tue, 5 Jul 2022 22:47:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 60C158E0003; Tue, 5 Jul 2022 22:47:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 52BD88E0001 for ; Tue, 5 Jul 2022 22:47:38 -0400 (EDT) Received: from smtpin31.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 2C8F433B67 for ; Wed, 6 Jul 2022 02:47:38 +0000 (UTC) X-FDA: 79655139396.31.F96FF11 Received: from mail-pf1-f182.google.com (mail-pf1-f182.google.com [209.85.210.182]) by imf31.hostedemail.com (Postfix) with ESMTP id F421C2001F for ; Wed, 6 Jul 2022 02:47:36 +0000 (UTC) Received: by mail-pf1-f182.google.com with SMTP id b7so2666920pfb.9 for ; Tue, 05 Jul 2022 19:47:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20210112.gappssmtp.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=IW/MEisRImp3/lPYkYpqCnuHv6idrwG0D60CzTjNlbg=; b=quxpqfHGltM89OLv0TIHtu7OKPWuWQXFLM4J5R8qY/nAAEfFdhcnS14yGAp7e1n5di 0cPJ3TwSSrAVYbIoskwpc480ETBLPHs54TGThC3k8J6KBnpMusgr90miFBdiJXUsgyx6 xbcBdflNaQMiKApuZJoTRU7zlZz1DXl+8lm3R3P+HoO978TYfORR5vSSDjUYmLmMp+q2 8+aRcqXKO5YpZtPafnyRV4D8vzdXVFr3Rjt474WTm4VlDURJ0P/FMc8TZKJU2Zh/WdmC J5Q75J6DZ33YaXiwTDBD8ENDZbyIyeSUYrwFljyI0x6EjCVPN6pn2bzzWd7Pt1oEpfHk cdSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=IW/MEisRImp3/lPYkYpqCnuHv6idrwG0D60CzTjNlbg=; b=Je3qZPcaHQuJn73/HwxmJUHAeKuAtUJtTm8eRVmwPvC9NwTZ4PMOhccc12ob0VmXaL oV69tbFIlCZtA7lf7a+VLot4CSfXqDLIuVTzHj2DgxC+LuuYc6ondc6TL6i6Bpu/hLut Z33EUtqeGBmHm+K7AA++pvOKcFqghFSd7gvjd+pP6Nqx5iQqgrOnBgaesIpB/YAgpf3f ZE8Wx/e16B1jnBUzarAEyW59MYCdYk6DPabFj0BaeYx0HU0iGgb+Gx46kMGMen4Ip3Jf OVZXzSbx1W7wAUIMHHgC1TMFm2SZcW9z1mGXtRekaClIu8uZUO3Cl2zqFDjPU9sx/uwN +cMQ== X-Gm-Message-State: AJIora9eQcu2QQj/KjMuWeWrzqK+GY6XmxHR2Fw+Ouayt9rDIbQ86c9h b/U7exYhEMftRJnuCYxVSKC1hQ== X-Google-Smtp-Source: AGRyM1uTdJ3o4LNsP4D1e5S082o3mxjqvUnFNizEKLHJoOTPoitYvcw6+5ewIYS0dZ1OpE+R98mpjQ== X-Received: by 2002:aa7:910b:0:b0:524:f8d9:a4c4 with SMTP id 11-20020aa7910b000000b00524f8d9a4c4mr45971995pfh.5.1657075655655; Tue, 05 Jul 2022 19:47:35 -0700 (PDT) Received: from localhost ([139.177.225.229]) by smtp.gmail.com with ESMTPSA id q13-20020a17090311cd00b0016bdeb58611sm6180279plh.112.2022.07.05.19.47.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 05 Jul 2022 19:47:35 -0700 (PDT) Date: Wed, 6 Jul 2022 10:47:32 +0800 From: Muchun Song To: Andrew Morton Cc: Matthew Wilcox , jgg@ziepe.ca, jhubbard@nvidia.com, william.kucharski@oracle.com, dan.j.williams@intel.com, jack@suse.cz, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, nvdimm@lists.linux.dev, stable@vger.kernel.org Subject: Re: [PATCH v2] mm: fix missing wake-up event for FSDAX pages Message-ID: References: <20220705123532.283-1-songmuchun@bytedance.com> <20220705141819.804eb972d43be3434dc70192@linux-foundation.org> <20220705164710.9541b5cf0e5819193213ea5c@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220705164710.9541b5cf0e5819193213ea5c@linux-foundation.org> ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1657075657; a=rsa-sha256; cv=none; b=0BA+sQiWr9614gCS4Z34wwjjytbZrBvPGy3XR6g/fJgTNGyzh2qgzl20aJl7ZVi6x5/gMY HzAtU330l9gm3KPK1MhtnxAdwVBXCtMoR9irvKkLWOp2PDNsNeiSE0zd5GXuFg0RIvJ4k/ tP4cllU6PWHf9FNut3WMZv1//i4lHhU= ARC-Authentication-Results: i=1; imf31.hostedemail.com; dkim=pass header.d=bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=quxpqfHG; dmarc=pass (policy=none) header.from=bytedance.com; spf=pass (imf31.hostedemail.com: domain of songmuchun@bytedance.com designates 209.85.210.182 as permitted sender) smtp.mailfrom=songmuchun@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1657075657; 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=IW/MEisRImp3/lPYkYpqCnuHv6idrwG0D60CzTjNlbg=; b=TyvcR8pKIWB5gC+fLUZEhJmp+tCKWCHFaVMUX7Apqp+dDpFemZqwaPNKEHozzuZW6h1Pz9 w6sXIANdrToatPnkoolzJxpT+apecQErOUDYppld8yMMenrCwXDzABvC3H1roTcFJL/8kk a+szKYpeotD4yaa12+brxGYvBBCH9+s= X-Stat-Signature: 4wg4mdpjc7it1cq9u3jhdxfiudffojsw X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: F421C2001F Authentication-Results: imf31.hostedemail.com; dkim=pass header.d=bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=quxpqfHG; dmarc=pass (policy=none) header.from=bytedance.com; spf=pass (imf31.hostedemail.com: domain of songmuchun@bytedance.com designates 209.85.210.182 as permitted sender) smtp.mailfrom=songmuchun@bytedance.com X-HE-Tag: 1657075656-323639 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: On Tue, Jul 05, 2022 at 04:47:10PM -0700, Andrew Morton wrote: > On Wed, 6 Jul 2022 00:38:41 +0100 Matthew Wilcox wrote: > > > On Tue, Jul 05, 2022 at 02:18:19PM -0700, Andrew Morton wrote: > > > On Tue, 5 Jul 2022 20:35:32 +0800 Muchun Song wrote: > > > > > > > FSDAX page refcounts are 1-based, rather than 0-based: if refcount is > > > > 1, then the page is freed. The FSDAX pages can be pinned through GUP, > > > > then they will be unpinned via unpin_user_page() using a folio variant > > > > to put the page, however, folio variants did not consider this special > > > > case, the result will be to miss a wakeup event (like the user of > > > > __fuse_dax_break_layouts()). Since FSDAX pages are only possible get > > > > by GUP users, so fix GUP instead of folio_put() to lower overhead. > > > > > > > > > > What are the user visible runtime effects of this bug? > > > > "missing wake up event" seems pretty obvious to me? Something goes to > > sleep waiting for a page to become unused, and is never woken. > > No, missed wakeups are often obscured by another wakeup coming in > shortly afterwards. > I need to clarify the task will never be woken up. > If this wakeup is not one of these, then are there reports from the > softlockup detector? > > Do we have reports of processes permanently stuck in D state? > No. The task is in an TASK_INTERRUPTIBLE state (see __fuse_dax_break_layouts). The hung task reporter only reports D task (TASK_UNINTERRUPTIBLE). Thanks. >