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 BAF6BC3600C for ; Thu, 3 Apr 2025 14:33:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A783C280004; Thu, 3 Apr 2025 10:33:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A30B9280006; Thu, 3 Apr 2025 10:33:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 89ED5280004; Thu, 3 Apr 2025 10:33:52 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 6965F280001 for ; Thu, 3 Apr 2025 10:33:52 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id A9BF1AAE22 for ; Thu, 3 Apr 2025 14:33:53 +0000 (UTC) X-FDA: 83292976746.18.EF45713 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) by imf13.hostedemail.com (Postfix) with ESMTP id 5F0AC20010 for ; Thu, 3 Apr 2025 14:33:51 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=AtobQuTv; spf=pass (imf13.hostedemail.com: domain of mhocko@suse.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1743690831; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=aVBsZKIQ13uHowU1y9quubDy59z6xGT4gKGYHYzC0SY=; b=7w6Qh2GkvDhnBKzc8gJFm4CG27hqGXf4Tdn5TdPRFVV4lb4+58O4btKOzMGLRZQWwc4Dgl JOC7wEkUjSaYG/DVo94pE7YJxxJR6RAMWipfQAwnJkiUUMg7YGZLj/614iSFlgcQXQcO+K 9Pt8AH8V+ancGUJLoW2n38leHlcoXYg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1743690831; a=rsa-sha256; cv=none; b=bQI9JWkFQdnltMIwr6oUK6vZGVkdtvqlIBqrQ53xBJT6sdi3zytQ59gptbgqkVHOQcWONv kr2pK8EacjwK0Z3bnVAKw1MI0fJbri4nqxhYCTCLLAnLcu9BHI3kXa45CBw99JKxOLxAdg 39wLR9mkCp3Z9PZ6YrPhBnQTmeqO9kc= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=AtobQuTv; spf=pass (imf13.hostedemail.com: domain of mhocko@suse.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-43cf05f0c3eso6387395e9.0 for ; Thu, 03 Apr 2025 07:33:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1743690830; x=1744295630; darn=kvack.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=aVBsZKIQ13uHowU1y9quubDy59z6xGT4gKGYHYzC0SY=; b=AtobQuTv/WL9tmnO7WmPXn4rFD1UL6OSCMfK9SoKcg7AyRUTcWoGx/dc2sB8eDXgDM CUcerVQzMPrNYJbI06D30KwOiLHdSKV9qXPlOehlLpdC+pF8Kb6zW4go1Pq/p+cr0Zpj 40Xo9YW4CysA8TK10/DCIPIQqguJYzn8VVPVVoysE+7qN8ca805ohgcI10ADt0/dayUZ CizhXYUqBHhZGTlqeRJeYbH8eSaFt2dbSG2QhdQcHoorEVT4T6+t5F6YvnNn8Eu0QTBj aVKXIXrOka34GGJTEmyVKd3FoMgKb2us42JO7ylu4UX0OExnNn1G1Xqh+OxFsEG3MD/t cKLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743690830; x=1744295630; h=in-reply-to:content-transfer-encoding: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=aVBsZKIQ13uHowU1y9quubDy59z6xGT4gKGYHYzC0SY=; b=wBCgrQpYTZNyh7WQ9e7zfcTeKWsSWe3JVs1XA4aKfixM0jDWAlyQEgcqcVV2VZ2SnZ wMYCuEsxXJhNUX6spZAPNVZHGycBYjayyvnNWI3LpCS4Dz3q43zTP96C+JuwtFmf99AH 9WaLl1MC6/7K/rF0CMXE3eTLO1jed9YZLtWiy43T/wM2TqurY9k0XF0KNLZ3ghJuJoTd ObhfQvG8hO7/9OrCgC28Uf8MmCy9kIPXcjAU+Yc0GxHJWsauwPCKKomcXlV5/2a8U1Aa K46LYx/7iTLVuR3JwfDJ2LeYPWngpuKxv1p/vyPuZRaWCnirmB/bFpEVUj5dSivrC4r7 /P/A== X-Forwarded-Encrypted: i=1; AJvYcCWkQvrvRE3RSo6KVwNunvP4KeIUNLJy/hO8W59ZqScb3/gRYs2BC4AjO8TYUBBgTkDIxugMX7DiSA==@kvack.org X-Gm-Message-State: AOJu0YwlXi3DvEESWRLgrRiADCAD3/ZLo7PTt5tE83/UOpDUhEglNPao u6tmzUdLHlQ5fIc+wJjxjRZkCQlQm91i5M0ksPkOV6n6ZGu02IJFGTShZHUhS20= X-Gm-Gg: ASbGncueO5nNVe/tsRp1gc0Mmbl2MEi+hSzucj3+6GWUbz46OI4RaRK1VpeOXYX4pSL M/4O9Blv+h57P0GwWkY3hNwqY+J6TH54K2vy5jGITdPYfswafYgJ1M/AdNf1q4oyO+hfmMr9TD+ QbfZ2Ky6aetiFHf5uwF7Nub2HxoJulUaXku0GgHpJiRgopVD15O719FOEl4NhCWVhpwBlnXVuan C8cXWwsHkcgUtpG1RmGcrA04eeVHbj/3A1Bwo3MRoNCRlM5LVrpJ8/RspFJriSp98sonDC7in53 ZJaPogHIi4IvM/mNKIJp5xr4pqH+9nnpng56aExLsfK7DhaO2SIAFl4= X-Google-Smtp-Source: AGHT+IEGiE0x1PAaWMGoC9ZFiaYEPiaIq/uegZ4wpDRjLqos6a0KnKZou0W0iioyFZ8bH2QBAeGB+w== X-Received: by 2002:a05:6000:2407:b0:39c:1424:3246 with SMTP id ffacd0b85a97d-39c142432d7mr17623759f8f.2.1743690829940; Thu, 03 Apr 2025 07:33:49 -0700 (PDT) Received: from localhost (109-81-82-69.rct.o2.cz. [109.81.82.69]) by smtp.gmail.com with UTF8SMTPSA id ffacd0b85a97d-39c30096b9csm1987759f8f.13.2025.04.03.07.33.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 03 Apr 2025 07:33:49 -0700 (PDT) Date: Thu, 3 Apr 2025 16:33:47 +0200 From: Michal Hocko To: Vlastimil Babka Cc: Matt Fleming , willy@infradead.org, adilger.kernel@dilger.ca, akpm@linux-foundation.org, linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, luka.2016.cs@gmail.com, tytso@mit.edu, Barry Song , kernel-team@cloudflare.com, Miklos Szeredi , Amir Goldstein , Dave Chinner , Qi Zheng , Roman Gushchin , Muchun Song Subject: Re: Potential Linux Crash: WARNING in ext4_dirty_folio in Linux kernel v6.13-rc5 Message-ID: References: <20250326105914.3803197-1-matt@readmodwrite.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 5F0AC20010 X-Stat-Signature: 9t9ora6tfywtjtf6sy4g5op6zfxjfgtd X-HE-Tag: 1743690831-597284 X-HE-Meta: U2FsdGVkX1/30+aFxsS6HNWbczMvyCrxUJjX7vU8EM1dKXW+tYmA718sy+uS0voHsfYXJQqah32EyJ8CiXDrVnK3b13xyGG+NgjX6qOIdAzkMX3fDUqm/sai5jqFLJwtrs7xRFVlRP8RVj9XwEUMudlaCvbby9tQFFZGvQcXt0MbA3NMC2Ii1WgRmg7oLF9PRCHZrJyv7IVhObhBInvrsPbef7TAixx5wvPmLbARFneUi4JY0TEwzu9hke0VlZjQw5kL1dvpJKSS/5dtAiaixv+ucA61HNmd6eW0RWOgHSL+P4tMVmy6kgVKveqiiZZ/u5rDVFNq/m5DY1Ph6U0lxs3vBn+KlC/oVKYL3G3Udo5TGgJPJubIvHPTEfi6wzYSahAHJ3C8oicJLjix9pYsgbmiOboe0Szc6mSUScaEfTpaOGk8l/9BYAojBpVQN5IyCPmqHBQHDXW8o8Q8FxSUG+hq+rQHHTxBnADHmP14XDRYhmMRWtMW3k5LM3lbWalJBmrTHmStxzlIzqS/W+FsXhmHcI1R9kyyAXwA/lSgjoQ/bT1iaNEpJokjuA3lpYsLdUd4ZnzsDKmQJIEFE6ffBQJTiTPllJFhWAaEnt373RD1PMVS9FfqFPvruPbW/dBFktn00pQUp2CMipjOFA7uDMhFUYTLeHR2wci+njlQlT/mBqi/XCwCdLj88dZ2UrxlH6LoNHpIAStjeEHRMbDjZZtg8HbTKzbuGGb+QFg/xWTQVQ985gbkvIgDVLU10R0wlK6m05FOFP17qZRVBv97A1j7yFE5vQbi4Bv3gkFh1Cpq8E1ND9R5rgEYCBSYV0I+fnkLPFcuzJmI++UHs2J9rhg+PezcNdbHxo4OCh6/A5QiDw9SKOYzS3gIB2Eh3yLC7Ty9dbc+dhCNt5lNE0p46E+lTwa3vYYJe+4Bicmwc8r+MZ0y4JG+7B+H8kx8J2NF2vv4r15XedvFeOykqRz Hr/3Dql9 /DpDxUZ5kjuleGgAYf816hIlVOiWIBMFrP1gXW6Dx5n8oFDFPCC3HBfrVjd7wchAbvu4dDQh3W8+9C7T6eDc1rCTXPrpSmulUg3G75jim4r2SINj/ja7t+m0eFzorbvbgerVfef3wtddd49M//tps/tVIY8ZQxHhqFCPxl56YR5LWgHntGwZPGt0ppsW3vKaPUtZNP7FJYLT0lMiSh6xfSUSZhtiL9/IhyYncxd60AX/Rmd+qEh40o16rxXIxmPGTmbVs8ip12InvcK3XdPR+AZJzeQ/5pIsFMZnAoZNqbQweLGrfcpTpnJW35Ed3NOjpdl7IwAddzAj9EFyV9aXoySc6GXXJMprMSSSBm8defMLK+teRw3HsQvltgKhh1bofilXXRgDXcc9bTO2+GHrgNrTU9Tznif2+0xVPRhbYq+pG95OMT1Uu33/+APUggf5khQqrjQNMTDbAJ1/pOqvLkMSvIMX4NRqGqxvI07BAOFeOVjhdc9u+DvPqggVKEQ46xTF1NPozoimpQWE= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000015, 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 Thu 03-04-25 14:58:25, Vlastimil Babka wrote: > On 4/3/25 14:29, Matt Fleming wrote: > > On Wed, Mar 26, 2025 at 10:59 AM Matt Fleming wrote: > >> > >> Hi there, > > + Cc also Michal > > >> I'm also seeing this PF_MEMALLOC WARN triggered from kswapd in 6.12.19. > > We're talking about __alloc_pages_slowpath() doing WARN_ON_ONCE(current- > >flags & PF_MEMALLOC); for __GFP_NOFAIL allocations. > > kswapd() sets: > > tsk->flags |= PF_MEMALLOC | PF_KSWAPD; > > so any __GFP_NOFAIL allocation done in the kswapd context risks this > warning. It's also objectively bad IMHO because for direct reclaim we can > loop and hope kswapd rescues us, but kswapd would then have to rely on > direct reclaimers to get unstuck. I don't see an easy generic solution? Right. I do not think NOFAIL request from the reclaim context is really something we can commit to support. This really needs to be addressed on the shrinker side. > >> Does overlayfs need some kind of background inode reclaim support? > > > > Hey everyone, I know there was some off-list discussion last week at > > LSFMM, but I don't think a definite solution has been proposed for the > > below stacktrace. > > > > What is the shrinker API policy wrt memory allocation and I/O? Should > > overlayfs do something more like XFS and background reclaim to avoid > > GFP_NOFAIL > > allocations when kswapd is shrinking caches? > > > >> Call Trace: > >> > >> __alloc_pages_noprof+0x31c/0x330 > >> alloc_pages_mpol_noprof+0xe3/0x1d0 > >> folio_alloc_noprof+0x5b/0xa0 > >> __filemap_get_folio+0x1f3/0x380 > >> __getblk_slow+0xa3/0x1e0 > >> __ext4_get_inode_loc+0x121/0x4b0 > >> ext4_get_inode_loc+0x40/0xa0 > >> ext4_reserve_inode_write+0x39/0xc0 > >> __ext4_mark_inode_dirty+0x5b/0x220 > >> ext4_evict_inode+0x26d/0x690 > >> evict+0x112/0x2a0 > >> __dentry_kill+0x71/0x180 > >> dput+0xeb/0x1b0 > >> ovl_stack_put+0x2e/0x50 [overlay] > >> ovl_destroy_inode+0x3a/0x60 [overlay] > >> destroy_inode+0x3b/0x70 > >> __dentry_kill+0x71/0x180 > >> shrink_dentry_list+0x6b/0xe0 > >> prune_dcache_sb+0x56/0x80 > >> super_cache_scan+0x12c/0x1e0 > >> do_shrink_slab+0x13b/0x350 > >> shrink_slab+0x278/0x3a0 > >> shrink_node+0x328/0x880 > >> balance_pgdat+0x36d/0x740 > >> kswapd+0x1f0/0x380 > >> kthread+0xd2/0x100 > >> ret_from_fork+0x34/0x50 > >> ret_from_fork_asm+0x1a/0x30 > >> > > -- Michal Hocko SUSE Labs