Received: by 2002:ad5:4acb:0:0:0:0:0 with SMTP id n11csp1979092imw; Tue, 5 Jul 2022 20:11:06 -0700 (PDT) X-Google-Smtp-Source: AGRyM1ubyEpPGOtBfWN4I8fpn0x3WHa0RhAeQtt4Y+Qgie453MfNgXen+hVJXwoUHr5lVoywpqsC X-Received: by 2002:a17:90b:1c0d:b0:1ef:a676:8e0a with SMTP id oc13-20020a17090b1c0d00b001efa6768e0amr4565116pjb.88.1657077066700; Tue, 05 Jul 2022 20:11:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1657077066; cv=none; d=google.com; s=arc-20160816; b=0+xMUE+go986CGLboF0XiWSos/SLT7i9v12IIJTJ+fF2kcEbiYFucdvybr8cd5+OQt nFje1yeBbkVsXEVzsWRBOfjVub0QELJssAMBzI6afCaIw5wduAbxoU+kDqJFpk6rdY7Q v70CA2Wkhe1Qu6SOSlhNN9askGn7aJLz0DTEdEQiM2+Qte4MfZOJjzFUJBE8cYsOghgz NjOau+uryjF6StV5PZiojKke+5IPhEYpaHHPxXp1hykZ0wI0AtztlixjWfYI5ZEbLkgS yHEMttvpiwwr14W8AFrfWgJYay+BoZ31Xhl+K8nzMxBOWymsxpZgjeDUCssLbH3WugaX 9FNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=IW/MEisRImp3/lPYkYpqCnuHv6idrwG0D60CzTjNlbg=; b=MMkH7+BYg48ZZfyPA9mCVq4W4yxnXyS80T2kS8Z1j8Nm5rdZd0+I5Kq+6FVG/xS6F0 4E3GjABGtEdjUq2HjW4P0A+axfnS41CN2pogy2WBFPn72oaEVgMvjJBCUlvebU+RrnGu 2mlJbqo+GzccAkVsSuum42gL7a5A5GbHMIEwg42PmsjNDINThY+5XaAxijLoJjpS4R+m dBxWt0RKY0Z+vqQj1nlD0zN2lLY6ZIv64727jpIDNXgSdggBx0JknIL+fhq3idn/8498 Nvk+eF53L6TYNSLnpMh+jojzweFF/7uqm3XoMiBR2CFv104QKWT0wLDTasI5kTq8pAGg WM/g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=quxpqfHG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n10-20020a170902d2ca00b0016bfa1639d5si3410200plc.186.2022.07.05.20.10.55; Tue, 05 Jul 2022 20:11:06 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=quxpqfHG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231126AbiGFCri (ORCPT + 99 others); Tue, 5 Jul 2022 22:47:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43302 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229955AbiGFCrh (ORCPT ); Tue, 5 Jul 2022 22:47:37 -0400 Received: from mail-pf1-x42f.google.com (mail-pf1-x42f.google.com [IPv6:2607:f8b0:4864:20::42f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 259EC1A052 for ; Tue, 5 Jul 2022 19:47:36 -0700 (PDT) Received: by mail-pf1-x42f.google.com with SMTP id j3so521698pfb.6 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=hvvfVKF25Smt6Jb1bm3XJ3zOi/GLugM1wWSkPXnr1oYl+5BfXQx6A7OWxwMavJDGsy RFdECRMhQ2AbwhsA8CUhSuh2kOS/tqgVEfTZG6cK6a8rTA8tZbdLPkfjIpqitMeb+cvn bGwCURhz8cIn9vGvL+C2HRZ7OHJJe6vGeSU0MCzSEZAnLsMjyHqrKvajU4TiGid2xjvL 0Q1FqfcOslOfcl/kCI90+9iRYiHZkD7e1aNancfzm5hqqchuVfpMq4oc4DMOhBGs1ORB AycyWWjZsC9UtH6F0lsMjATBm2TwVOYWro0SahKSWRk11gpvkgVp1ydL4a9jqwFE4jGN 0YCw== X-Gm-Message-State: AJIora8lbvLCFReuJKoUW50KN6oJuE9F1YIO95qWILDGHKrLhIzPPkNg R9OM4PINi3rxiO+FycU3B3LUGA== 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> X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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. >