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 89F08C369AB for ; Tue, 22 Apr 2025 01:10:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 877E66B0005; Mon, 21 Apr 2025 21:10:15 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 825E96B0007; Mon, 21 Apr 2025 21:10:15 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6EDCA6B0008; Mon, 21 Apr 2025 21:10:15 -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 4DCA56B0005 for ; Mon, 21 Apr 2025 21:10:15 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 3A2E81615A9 for ; Tue, 22 Apr 2025 01:10:15 +0000 (UTC) X-FDA: 83359898790.24.5899F5C Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf01.hostedemail.com (Postfix) with ESMTP id 5FB1140007 for ; Tue, 22 Apr 2025 01:10:13 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=DvzbOgIA; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf01.hostedemail.com: domain of djwong@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=djwong@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745284213; a=rsa-sha256; cv=none; b=1IxOYMS7SjrtUmRoqzWINJ9awvVPGAJGruxrdu91wICu+Ncbr1u8AYZNIZPNiRiowdi5Ni hGzNmpCw7zkH6StptOjnn5QxunvwZoHu2sCCO8n3+R5aPrMuUIXJLCjK4QmzYkLeWE170s SdWDSr9x4newE0LC+awrxuIzkfWtthU= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=DvzbOgIA; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf01.hostedemail.com: domain of djwong@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=djwong@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745284213; 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=+bIeahP5rZO/6piQa0+gfTpCUwhyP+9cMzMEd/DVa3g=; b=e9PGIRRTZss3RyDTc60ot+BoA288t9R2q+2FEi3hE4h66GWGUSd1c4iceRKJGDy2/blZ0K RmkiliAaqhy85YRxZ8o6As0arsoYB5xrkCe4SSl5RVtsguTlHoMQzNN9WIZKuVuP7VV+Ia I/5IQILfVWSPu0sIxA+M7unG3OCA6iU= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 9451EA4BE5D; Tue, 22 Apr 2025 01:04:44 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4F912C4CEE4; Tue, 22 Apr 2025 01:10:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1745284212; bh=8OZiz7tyZcHobvQlRKTrHf9V5AWyFQifBuHADFLti4k=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=DvzbOgIAozgBcANensyzkc5u+JO1Zr2nPOqp3ZQoZVUoi+JAuVQYAVLsRDX0vGMme nKkCpwREejUz9h2Sy/EEgHAM5bghWfJup22DR+0gXMJRAGKtUIh+ux7eexTHR/5J6x S7TL0IwkL37TD6WeI8vW1Ip8qorknw+KDSmTyWuMbhM6UqTmCkb4xRYTi1KqWWGYJE z6B7d/i3YcITYxUw0ZKBu5E4GNZnfz9o6PSQmUqPvrrMvKfAP3oiVpUb+61JjBibLV csqnueHnFq0tlPVfkYhycxZg91TOIYJp24o2xIKZ/bCtJULMqyipGV4rTM49lIGUaK 7yEJ35vZTXfsw== Date: Mon, 21 Apr 2025 18:10:11 -0700 From: "Darrick J. Wong" To: Qu Wenruo Cc: Qu Wenruo , Linux Memory Management List , linux-btrfs Subject: Re: Sleep inside atomic for aarch64, triggered by generic/482 Message-ID: <20250422011011.GH25700@frogsfrogsfrogs> References: <20250421172906.GA25651@frogsfrogsfrogs> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspamd-Queue-Id: 5FB1140007 X-Rspam-User: X-Rspamd-Server: rspam07 X-Stat-Signature: h19s1xnyjup3rwo5e3fxcq4k9igk9hqm X-HE-Tag: 1745284213-599057 X-HE-Meta: U2FsdGVkX19JY1r1BGy5BS/08FN6sdA8nPCimFJOpJqKd5FZ2z3l7T6kyAGWZlgC2s/0uf69dbRt08AsGFXxkOFmodoGg9j8Pw/0dOW2l2v9NlfJwu52AsIP/2Vw5lcJvlO2CNTcfcM7ADeFKjoVK1s0QVCJxLM8r6s+7qd+9wZMFBVwl9aUmgwEkAVgMCb1ZHfrf2MaS4Z2AsVi40PM9OyacHoSJ+5zUmvAeyopK9SRafgPPfsK3+Q46A7pVTFbLYMtBzFIVl24bzeFfNl74gp9UAjpGwCQsQx1A/sJPTvOPnGGpcqfwaRBKqK7ZkjGVsl0SSI2Ah/hgtX10xeI1KLHyP/T6AC0s3qWb9/gpYxlloVW2Ku02XAEnla/3bFr70ZE/mRshNgoIHXVUOPDMrTIHyRFDbMXnkQIhtkub58oZNl+ix0YlRG5RKYyYyxzorz8iKkhC8EGQzzydbeA8caUFRC3DEG002MryCXfAY5mCqlcb7xSBaezn9pxnDj2m73sc7DP4abObJ8x4Qf8wrVAQt7nza+fUnHX/pTV3BFJgcvpxY5N3Z3eurjtu+FyQLbV+GQmt/tklF26mUeitt5y/J+3wRjTubI9Jm5T8zNaS4Z2yc2EL6Fl6ldn+vScu4/zdlWqny9V2ie1W52REu09dpoO+tafLxPzQN9Jt1wgiYIR/rPRoDN5pcNb9RlOGdTVh5UXP7rs4oOo057x8pXcK9eVBBIip6hH/ITRVZybZ7+jI9frootPKHI9c8KG1CE+jth11ECesALuaKsp+jMuStJudFRXJdM7YnftFOewxOirNMcOgUByRI/mr0UfNjrH7C2KFVNbXZiHig31u/xsIWPAz/EOqRoWPOn7GD45GcG2/ReWbOAMS/uhbKlb4iHine4QakbTi9VuMWrZCraXluLnBu5SiGsWB2GAKhDj/4jf21mZmy++p1wZYsCPw8v9To0FbkV8TUTvcgH Pf7gGQ7c AI375ml4YDy/5LJD8iBnGMczXxi+i5wwKG0qKkeoHmUlXeDe1EVb45Or77sK3c+Ro3r5xFSbmmto3QO+SlR+mcoA5lScOUuJUNap6yiqhFw3YVgg2KoiwUNQuXqt+XokASPtP6B2VfACxf3Hc17IYxduHbRjn3CorHX4a+Xx93r0h9zOsg4PFWgPINc4H3ve+7IoX16emjh/IPbTJSmkEEMLGOGDx6tdcOjOdnsLCwjOxv1rYj9nbnkgiaDXTlaNwq+JQ/Fc0nwkc7XI6F8CNTWOeAf/w/S2tHbovOcUUVA6OK1zcn6SohrQNCqMSJJtgrlBy/g63q2qT2r4kqkzFJsF6BLxtgh4FHwsys7cYfBwCODCtX3Ny44vFx071v3HFMxMj 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 Tue, Apr 22, 2025 at 05:39:52AM +0930, Qu Wenruo wrote: > > > 在 2025/4/22 02:59, Darrick J. Wong 写道: > > On Sun, Apr 20, 2025 at 08:24:12PM +0930, Qu Wenruo wrote: > > > Hi, > > > > > > Recently I hit two dmesg reports from generic/482, on aarch64 64K page size > > > with 4K fs block size. > > > > > > The involved warning looks like this: > > > > > > 117645.139610] BTRFS info (device dm-13): using free-space-tree > > > [117645.146707] BTRFS info (device dm-13): start tree-log replay > > > [117645.158598] BTRFS info (device dm-13): last unmount of filesystem > > > 214efad4-5c63-49b6-ad29-f09c4966de33 > > > [117645.322288] BUG: sleeping function called from invalid context at > > > mm/util.c:743 > > > [117645.322312] in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 46, > > > name: kcompactd0 > > > [117645.322325] preempt_count: 1, expected: 0 > > > [117645.322329] RCU nest depth: 0, expected: 0 > > > [117645.322338] CPU: 3 UID: 0 PID: 46 Comm: kcompactd0 Tainted: G W OE > > > 6.15.0-rc2-custom+ #116 PREEMPT(voluntary) > > > [117645.322343] Tainted: [W]=WARN, [O]=OOT_MODULE, [E]=UNSIGNED_MODULE > > > [117645.322345] Hardware name: QEMU KVM Virtual Machine, BIOS unknown > > > 2/2/2022 > > > [117645.322347] Call trace: > > > [117645.322349] show_stack+0x34/0x98 (C) > > > [117645.322360] dump_stack_lvl+0x60/0x80 > > > [117645.322366] dump_stack+0x18/0x24 > > > [117645.322370] __might_resched+0x130/0x168 > > > [117645.322375] folio_mc_copy+0x54/0xa8 > > > [117645.322382] __migrate_folio.isra.0+0x5c/0x1f8 > > > [117645.322387] __buffer_migrate_folio+0x28c/0x2a0 > > > [117645.322391] buffer_migrate_folio_norefs+0x1c/0x30 > > > [117645.322395] move_to_new_folio+0x94/0x2c0 > > > [117645.322398] migrate_pages_batch+0x7e4/0xd10 > > > [117645.322402] migrate_pages_sync+0x88/0x240 > > > [117645.322405] migrate_pages+0x4d0/0x660 > > > [117645.322409] compact_zone+0x454/0x718 > > > [117645.322414] compact_node+0xa4/0x1b8 > > > [117645.322418] kcompactd+0x300/0x458 > > > [117645.322421] kthread+0x11c/0x140 > > > [117645.322426] ret_from_fork+0x10/0x20 > > > [117645.400370] BTRFS: device fsid 214efad4-5c63-49b6-ad29-f09c4966de33 > > > devid 1 transid 31 /dev/mapper/thin-vol.482 (253:13) scanned by mount > > > (924470) > > > [117645.404282] BTRFS info (device dm-13): first mount of filesystem > > > 214efad4-5c63-49b6-ad29-f09c4966de33 > > > > > > Again this has no btrfs involved in the call trace. > > > > > > This looks exactly like the report here: > > > > > > https://lore.kernel.org/linux-mm/67f6e11f.050a0220.25d1c8.000b.GAE@google.com/ > > > > > > However there are something new here: > > > > > > - The target fs is btrfs, no large folio support yet > > > At least the branch I'm testing (based on v6.15-rc2) doesn't support > > > folio. > > > > > > Furthermore since it's btrfs, there is no buffer_head usage involved. > > > (But the rootfs is indeed ext4) > > > > Doesn't matter; the block device can create large folios in its page > > cache and blkid reading the bdev can create buffer heads. > > > > willy's workaround in: > > https://lore.kernel.org/linux-fsdevel/Z_VwF1MA-R7MgDVG@casper.infradead.org/ > > Thanks a lot for the info. > > However this also makes me wonder, what if the block size of the block > device eventually go larger than page size? > > E.g. I know some vendors (samsumg?) are pushing for larger block size, with > that the minimal order will still be larger than page size. > > Thus I guess we can not avoid it anyway? Yeah. I think willy thinks this is an implementation bug in readahead, so it'll probably get fixed sooner or later. --D > Thanks, > Qu > > > > > works enough to make this go away. > > > > --D > > > > > > > > - Arm64 64K page size with 4K block size > > > It's less common than x86_64. > > > > > > Fortunately I can reproduce the bug reliable, it takes around 3~10 runs to > > > hit it. > > > > > > Hope this report would help a little. > > > Thanks, > > > Qu > > > > > >