From patchwork Fri Apr 13 20:28:23 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Khazhy Kumykov X-Patchwork-Id: 10340743 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 73F37600D0 for ; Fri, 13 Apr 2018 20:29:12 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5306B288A7 for ; Fri, 13 Apr 2018 20:29:12 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 470C528A03; Fri, 13 Apr 2018 20:29:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.3 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,MIME_HEADER_CTYPE_ONLY, RCVD_IN_DNSWL_HI,T_TVD_MIME_NO_HEADERS autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9EB8F288A7 for ; Fri, 13 Apr 2018 20:29:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751042AbeDMU24 (ORCPT ); Fri, 13 Apr 2018 16:28:56 -0400 Received: from mail-pf0-f195.google.com ([209.85.192.195]:38127 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750864AbeDMU2y (ORCPT ); Fri, 13 Apr 2018 16:28:54 -0400 Received: by mail-pf0-f195.google.com with SMTP id y69so6771178pfb.5 for ; Fri, 13 Apr 2018 13:28:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=nNk4GDy29vXiSooufCuCoJrQ7CjWMkcjzcyMxyO5Dhc=; b=Yn0lR1WuRYjN8z1M5IG2EAz4Eom+YMVm11dYbWoVOvNQ81gjMJfqo4RJ+j8QU+JJEg vYP1dWtvU+3abM9W7ekV0t/vHhinPT/y2AiRkbpj8XQZJgnfK9WzgNJ/bjEmR6gzfXqK WPogLhihOS7Yy7wM0poV68gpupv1eQZANPkY0fa9Owdr8Ckt5fXSQ2zRqPMvdQzF7Wtg 3oXSXInoxh0WWUxbNXygPiI+SXSLAbeLS3dlsuXomZY4ruiwut2/5GlH3ZU2/USgSmD8 tjRyyvSlCaDf1CZuVTEsnZXaG3JJs0hsEKATF4vfXgHdoV9mmywP5WqBewJr/ed2EZQK n/HA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=nNk4GDy29vXiSooufCuCoJrQ7CjWMkcjzcyMxyO5Dhc=; b=l/MXHM8rzamRj3sd9FOOaY4OEpKYhTf15m8G5R5CMzVf2fJZRNayjYMaPTITD1AvYB BORs7abJiZ8CAyIDO0uwnECi0jb82XPRemVvaNdzWns4yCsE4yJerINcwKor50fFv9of EpkS/1/f4tqidgk68VvFx/aCzNaqVi2dCGjKM3wXtfvPGTl4aD0OQn66g+27ntU7ktne LN9TdehqExaa/iFmr0icIwzZfVmD554CfooydZKjG4ebFdfsjaRrhnksTejoy0uG7eVT DitkwAKY3Sg51oeeGDhdb2iFIHbV+FlGuyMvZRHThllp2wdNUPVEZU+xUkSLvWeZ+gO6 BI+Q== X-Gm-Message-State: ALQs6tDEUfQGk6R41RnhmW8dcBgXP+IXiCxgV4nkazduaVsb7u+ePAea ev/0moYLC/A5/lGrueSmbqeZsA== X-Google-Smtp-Source: AIpwx48qPBI2oD5nqPm4MBVHZ/27cy/VQvnr7vZp+fceTYqoVENN6ocAV7/7T50bqZ7xpM3SZwz9+g== X-Received: by 10.99.126.69 with SMTP id o5mr5112079pgn.18.1523651333630; Fri, 13 Apr 2018 13:28:53 -0700 (PDT) Received: from khazhy.svl.corp.google.com ([2620:15c:2cd:203:478f:57ef:e0f2:999d]) by smtp.gmail.com with ESMTPSA id r20sm16383043pff.165.2018.04.13.13.28.52 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 13 Apr 2018 13:28:52 -0700 (PDT) From: Khazhismel Kumykov To: nborisov@suse.com, akpm@linux-foundation.org Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Khazhismel Kumykov , David Rientjes , Alexander Viro , Goldwyn Rodrigues , Jeff Mahoney , Davidlohr Bueso , Linus Torvalds Subject: [PATCH] fs/dcache.c: re-add cond_resched() in shrink_dcache_parent() Date: Fri, 13 Apr 2018 13:28:23 -0700 Message-Id: <20180413202823.204377-1-khazhy@google.com> X-Mailer: git-send-email 2.17.0.484.g0c8726318c-goog In-Reply-To: <20180413181350.88831-1-khazhy@google.com> References: <20180413181350.88831-1-khazhy@google.com> Sender: linux-fsdevel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fsdevel@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP shrink_dcache_parent may spin waiting for a parallel shrink_dentry_list. In this case we may have 0 dentries to dispose, so we will never schedule out while waiting for the parallel shrink_dentry_list to complete. Tested that this fixes syzbot reports of stalls in shrink_dcache_parent() Fixes: 32785c0539b7 ("fs/dcache.c: add cond_resched() in shrink_dentry_list()") Reported-by: syzbot+ae80b790eb412884ca77@syzkaller.appspotmail.com Cc: Nikolay Borisov Cc: Andrew Morton Cc: David Rientjes Cc: Alexander Viro Cc: Goldwyn Rodrigues Cc: Jeff Mahoney Cc: Davidlohr Bueso Cc: Linus Torvalds Signed-off-by: Khazhismel Kumykov Acked-by: David Rientjes --- fs/dcache.c | 1 + 1 file changed, 1 insertion(+) diff --git a/fs/dcache.c b/fs/dcache.c index 591b34500e41..3507badeb60a 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -1489,6 +1489,7 @@ void shrink_dcache_parent(struct dentry *parent) break; shrink_dentry_list(&data.dispose); + cond_resched(); } } EXPORT_SYMBOL(shrink_dcache_parent);