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 45538C369AB for ; Tue, 15 Apr 2025 16:29:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 648C52800AE; Tue, 15 Apr 2025 12:29:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5F8F028009B; Tue, 15 Apr 2025 12:29:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 471A82800AE; Tue, 15 Apr 2025 12:29:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 26FF528009B for ; Tue, 15 Apr 2025 12:29:05 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id BB361161657 for ; Tue, 15 Apr 2025 16:29:04 +0000 (UTC) X-FDA: 83336812608.22.85C5254 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) by imf12.hostedemail.com (Postfix) with ESMTP id 5546540009 for ; Tue, 15 Apr 2025 16:29:02 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=tEwn20Mo; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=oMFX+yzr; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=tEwn20Mo; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=oMFX+yzr; dmarc=none; spf=pass (imf12.hostedemail.com: domain of jack@suse.cz designates 195.135.223.130 as permitted sender) smtp.mailfrom=jack@suse.cz ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744734542; 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=3Qk1j3azgbPTvauj1mXFqLxWgx/cpNmmXQbhPNKelaQ=; b=6Db/8MbRSrV83DF3OLLJVwWBDJTj+Fnq1ltYiU5yddaOpGaDQypxGK80C52MwnjQ+HCJGB XkPil4ygHEAYoxsjb1b24sQhsOzJo9Iet1qzbZ9BP+38ZWY0V+GQXY8DZ6OQir/YqQmDKQ +mvZ5lu7em7xUP66Nq0Hyt+zJVv2o3E= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=tEwn20Mo; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=oMFX+yzr; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=tEwn20Mo; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=oMFX+yzr; dmarc=none; spf=pass (imf12.hostedemail.com: domain of jack@suse.cz designates 195.135.223.130 as permitted sender) smtp.mailfrom=jack@suse.cz ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744734542; a=rsa-sha256; cv=none; b=ZxLQCja7V45UIVghNoreHljdyr4FokrEwiPPDlbr2ZFnKVrbJYWzOR/YvLzwfEV7UIPMM5 oA0+YDjVZzYVm9qE+4rujmovhX5ZA4tfDBQOCQt90AwjWOoyiIj3274UPoKf6Zs36FxAi/ DMZCapJYdvverwqmQh1sL7EZiBZ3MKk= Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6312221163; Tue, 15 Apr 2025 16:29:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1744734540; h=from:from:reply-to: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; bh=3Qk1j3azgbPTvauj1mXFqLxWgx/cpNmmXQbhPNKelaQ=; b=tEwn20MoTrcAAHfvGccbc3mLlpd7TDkfeuu8qTEgxg3ROW6ErqiOgW6wYh+tQ4COBK500B Q+UxTiOPBeYgFgTPfUOkArNVMLK+eeLpv1QTGmuyBMU9E3Swt+a2rZmKL70Laa38zCgopd X7Bh5IP74F4uv5/0zlupUOk1NoXqDTY= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1744734540; h=from:from:reply-to: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; bh=3Qk1j3azgbPTvauj1mXFqLxWgx/cpNmmXQbhPNKelaQ=; b=oMFX+yzro7/ngnKHLhCDdjMSYrC0X6cgWZ6bdwKzuFnKiopwp/uTrcz2Cr4bSTO/uvCWc5 Bbc7Q8/G1Tp72zDw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1744734540; h=from:from:reply-to: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; bh=3Qk1j3azgbPTvauj1mXFqLxWgx/cpNmmXQbhPNKelaQ=; b=tEwn20MoTrcAAHfvGccbc3mLlpd7TDkfeuu8qTEgxg3ROW6ErqiOgW6wYh+tQ4COBK500B Q+UxTiOPBeYgFgTPfUOkArNVMLK+eeLpv1QTGmuyBMU9E3Swt+a2rZmKL70Laa38zCgopd X7Bh5IP74F4uv5/0zlupUOk1NoXqDTY= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1744734540; h=from:from:reply-to: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; bh=3Qk1j3azgbPTvauj1mXFqLxWgx/cpNmmXQbhPNKelaQ=; b=oMFX+yzro7/ngnKHLhCDdjMSYrC0X6cgWZ6bdwKzuFnKiopwp/uTrcz2Cr4bSTO/uvCWc5 Bbc7Q8/G1Tp72zDw== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 40A4E139A1; Tue, 15 Apr 2025 16:29:00 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id KDfCD0yJ/mdYYgAAD6G6ig (envelope-from ); Tue, 15 Apr 2025 16:29:00 +0000 Received: by quack3.suse.cz (Postfix, from userid 1000) id BD0EAA0947; Tue, 15 Apr 2025 18:28:55 +0200 (CEST) Date: Tue, 15 Apr 2025 18:28:55 +0200 From: Jan Kara To: Luis Chamberlain Cc: Jan Kara , brauner@kernel.org, tytso@mit.edu, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, riel@surriel.com, dave@stgolabs.net, willy@infradead.org, hannes@cmpxchg.org, oliver.sang@intel.com, david@redhat.com, axboe@kernel.dk, hare@suse.de, david@fromorbit.com, djwong@kernel.org, ritesh.list@gmail.com, linux-fsdevel@vger.kernel.org, linux-block@vger.kernel.org, linux-mm@kvack.org, gost.dev@samsung.com, p.raghav@samsung.com, da.gomez@samsung.com, syzbot+f3c6fda1297c748a7076@syzkaller.appspotmail.com Subject: Re: [PATCH v2 1/8] migrate: fix skipping metadata buffer heads on migration Message-ID: References: <20250410014945.2140781-1-mcgrof@kernel.org> <20250410014945.2140781-2-mcgrof@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspamd-Action: no action X-Stat-Signature: m8fxuma6jzxzef6hbwercpoperi3bqnj X-Rspamd-Queue-Id: 5546540009 X-Rspam-User: X-Rspamd-Server: rspam05 X-HE-Tag: 1744734542-284366 X-HE-Meta: U2FsdGVkX1+UazntV/Js1IqSHn8rXw+AIcxDPOo0nQl3OxgakvAAgQlwIvTw7wuzYdmx7ceT5diZ+nvMFnRQzeDHdc4WH7EtLQiLoUFNZ4+NFf7DRup65Vgh3CgEzf/jYAjDSd12P8KdDDHnHu/K4Fi5Ymy/Vo/SuGYw3f8EQ9u1b/AbMo4tFSVo0kd0DZo2OsPhl9KH/MtPQa5AsI/6Z1j5VxcjK2+NT/ZHxCj6VYvskG989JOmPgWTK9DiBXWsaK33NcuZ+Mw2Yq7jkCB99LDqf2nthFdBWfUyOQWALCubnoVGwAC1u4FbDKcy6n+Ed8tqkU5krOEgjxENySU2kFmCaCdGK6FCdjfNHhnghqnfdcQah132LBCZSJx4K3eKm4bQo1JC03BWFlgE35wNOaOzvMPT9OI3nM+09oI5Ldamv6wPUjEEBJtzXbWVdj7Z+TBeWrlrVOXu6ZnC0RH3DSdSQmOXHuLk+1hkukw454UQU2/YTFPqEc8OHBZYWnIlvFDu3dXIdcARxOp2SPxje390EbkQNC9VmAFQ0WsBlbl7iMmJZaEzUwIAPGPKjwMkryAIyyRchKh1JKNuIRtktwgQRAmax0VLtNXasnCD4dnDSldC4nbv6KSXRsTxC0dj0wkqJ2O4bgP6YxOg+hTj1a+SqR0Z3lYV/RC3s8DhBR5HDrsxH/34ny0pShDn67pr7e5rzKNwiFGaMPJA7kRIpYv86L8k3IJfmHNkoZqQG69Yzj0maZ9JSvvCaDnvfjY/pUJkt97hs5SAeIJw3llF6+kwQi7n4oxPO1HGhJ+d4zHAWdwlm+jFLrpo1pvlU4NH09hz/fvsmE4U9Yz+OVXrmAG5YqfSLM5t8tbBw4VsKnON3PBAITwVe0ogcivCTh4WyfKy2Lrmz7V4Q44bKomYYlDWcwAQ9tsLYfF/GZkSt02LlzV/vimiyJzrMrvcrHD//v/PSAwR7hrZ4r2g2wN nyggWZO2 8SwKrB3pKpEITDzpQUI0nG+04RA7Z7rzjXe6rVWkxzwHqd3n4jSOHOLIz6ReVu4RIw8qGlrdsvWIov17Rg/Lzv04/PsUO3sTIMrtS8oy1cKfH+PJw0/jcZpsessAhmqjFJ+3IdAXsFksi8Y0FIE2euzfkztBlpzv1X6xfQOdJtFeAtlAGgA/aaZiu+QgSXqJm0hPeQsAXUsLZbATFA1PoMPk2HfDbn8AKq4eMwbjbLD0CGIVqbaOt75L0n31KHaRLeEJgVHXBh432VEIMfJgfdjpSevExLaZK24orIGlujS6lVs0TXuZLCR2JkF1WAE8Q7Xq11QOsZ7Zfi8Y25bjK1RtcAVpKbzi48J0cZnfPN6u5wVBsEU6AjGMjiwWWBkdlqGQlvdu1m9Yh2clWMHmUko76WWMUXbuvdOvFBW8er0N9dAM= 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 15-04-25 09:18:10, Luis Chamberlain wrote: > On Thu, Apr 10, 2025 at 02:05:38PM +0200, Jan Kara wrote: > > On Wed 09-04-25 18:49:38, Luis Chamberlain wrote: > > > ** Reproduced on vanilla Linux with udelay(2000) ** > > > > > > Call trace (ENOSPC journal failure): > > > do_writepages() > > > → ext4_do_writepages() > > > → ext4_map_blocks() > > > → ext4_ext_map_blocks() > > > → ext4_ext_insert_extent() > > > → __ext4_handle_dirty_metadata() > > > → jbd2_journal_dirty_metadata() → ERROR -28 (ENOSPC) > > > > Curious. Did you try running e2fsck after the filesystem complained like > > this? This complains about journal handle not having enough credits for > > needed metadata update. Either we've lost some update to the journal_head > > structure (b_modified got accidentally cleared) or some update to extent > > tree. > > Just tried it after pkill fsstress and stopping the test: > > root@e1-ext4-2k /var/lib/xfstests # umount /dev/loop5 > root@e1-ext4-2k /var/lib/xfstests # fsck /dev/loop5 > fsck from util-linux 2.41 > e2fsck 1.47.2 (1-Jan-2025) > /dev/loop5 contains a file system with errors, check forced. > Pass 1: Checking inodes, blocks, and sizes > Inode 26 extent tree (at level 1) could be shorter. Optimize? yes > Inode 129 extent tree (at level 1) could be shorter. Optimize? yes > Inode 592 extent tree (at level 1) could be shorter. Optimize? yes > Inode 1095 extent tree (at level 1) could be shorter. Optimize? yes > Inode 1416 extent tree (at level 1) could be shorter. Optimize? yes > Inode 1653 extent tree (at level 1) could be shorter. Optimize? yes > Inode 1929 extent tree (at level 1) could be shorter. Optimize? yes > Inode 1965 extent tree (at level 1) could be shorter. Optimize? yes > Inode 2538 extent tree (at level 1) could be shorter. Optimize? yes > Inode 2765 extent tree (at level 1) could be shorter. Optimize? yes > Inode 2831 extent tree (at level 1) could be shorter. Optimize? yes > Inode 2838 extent tree (at level 1) could be shorter. Optimize? yes > Inode 3595 extent tree (at level 1) could be shorter. Optimize? yes > Inode 4659 extent tree (at level 1) could be shorter. Optimize? yes > Inode 5268 extent tree (at level 1) could be shorter. Optimize? yes > Inode 6400 extent tree (at level 1) could be shorter. Optimize? yes > Inode 6830 extent tree (at level 1) could be shorter. Optimize? yes > Inode 8490 extent tree (at level 1) could be shorter. Optimize? yes > Inode 8555 extent tree (at level 1) could be shorter. Optimize? yes > Inode 8658 extent tree (at level 1) could be shorter. Optimize? yes > Inode 8754 extent tree (at level 1) could be shorter. Optimize? yes > Inode 8996 extent tree (at level 1) could be shorter. Optimize? yes > Inode 9168 extent tree (at level 1) could be shorter. Optimize? yes > Inode 9430 extent tree (at level 1) could be shorter. Optimize? yes > Inode 9468 extent tree (at level 1) could be shorter. Optimize? yes > Inode 9543 extent tree (at level 1) could be shorter. Optimize? yes > Inode 9632 extent tree (at level 1) could be shorter. Optimize? yes > Inode 9746 extent tree (at level 1) could be shorter. Optimize? yes > Inode 10043 extent tree (at level 1) could be shorter. Optimize? yes > Inode 10280 extent tree (at level 1) could be shorter. Optimize? yes > Inode 10623 extent tree (at level 1) could be shorter. Optimize? yes > Inode 10651 extent tree (at level 1) could be shorter. Optimize? yes > Inode 10691 extent tree (at level 1) could be shorter. Optimize? yes > Inode 10708 extent tree (at level 1) could be shorter. Optimize? yes > Inode 11389 extent tree (at level 1) could be shorter. Optimize? yes > Inode 11564 extent tree (at level 1) could be shorter. Optimize? yes > Inode 11578 extent tree (at level 1) could be shorter. Optimize? yes > Inode 11842 extent tree (at level 1) could be shorter. Optimize? yes > Inode 11900 extent tree (at level 1) could be shorter. Optimize? yes > yInode 12721 extent tree (at level 1) could be shorter. Optimize? yes > Inode 12831 extent tree (at level 1) could be shorter. Optimize? yes > yInode 13531 extent tree (at level 1) could be shorter. Optimize? yes > yyyyInode 16580 extent tree (at level 1) could be shorter. Optimize? yes > Inode 16740 extent tree (at level 1) could be shorter. Optimize? yes > yInode 17123 extent tree (at level 1) could be shorter. Optimize? yes > yInode 17192 extent tree (at level 1) could be shorter. Optimize? yes > Inode 17412 extent tree (at level 1) could be shorter. Optimize? yes > Inode 17519 extent tree (at level 1) could be shorter. Optimize? yes > yyInode 18730 extent tree (at level 1) could be shorter. Optimize? yes > Inode 18974 extent tree (at level 1) could be shorter. Optimize? yes > Inode 19118 extent tree (at level 1) could be shorter. Optimize? yes > yyInode 19806 extent tree (at level 1) could be shorter. Optimize? yes > Inode 19942 extent tree (at level 1) could be shorter. Optimize? yes > Inode 20303 extent tree (at level 1) could be shorter. Optimize? yes > Inode 20323 extent tree (at level 1) could be shorter. Optimize? yes > Inode 21047 extent tree (at level 1) could be shorter. Optimize? yes > Inode 21919 extent tree (at level 1) could be shorter. Optimize? yes > Inode 22180 extent tree (at level 1) could be shorter. Optimize? yes > Inode 22856 extent tree (at level 1) could be shorter. Optimize? yes > Inode 23462 extent tree (at level 1) could be shorter. Optimize? yes > Inode 23587 extent tree (at level 1) could be shorter. Optimize? yes > Inode 23775 extent tree (at level 1) could be shorter. Optimize? yes > Inode 23916 extent tree (at level 1) could be shorter. Optimize? yes > Inode 24046 extent tree (at level 1) could be shorter. Optimize? yes > Inode 24161 extent tree (at level 1) could be shorter. Optimize? yes > yInode 25576 extent tree (at level 1) could be shorter. Optimize? yes > Inode 25666 extent tree (at level 1) could be shorter. Optimize? yes > Inode 25992 extent tree (at level 1) could be shorter. Optimize? yes > Inode 26404 extent tree (at level 1) could be shorter. Optimize? yes > Inode 26795 extent tree (at level 1) could be shorter. Optimize? yes > Inode 26862 extent tree (at level 1) could be shorter. Optimize? yes > Inode 26868 extent tree (at level 1) could be shorter. Optimize? yes > yInode 27627 extent tree (at level 1) could be shorter. Optimize? yes > Inode 27959 extent tree (at level 1) could be shorter. Optimize? yes > Inode 28014 extent tree (at level 1) could be shorter. Optimize? yes > yInode 29120 extent tree (at level 1) could be shorter. Optimize? yes > Inode 29308 extent tree (at level 1) could be shorter. Optimize? yes > yyyyInode 30673 extent tree (at level 1) could be shorter. Optimize? yes > yInode 31127 extent tree (at level 1) could be shorter. Optimize? yes > Inode 31332 extent tree (at level 1) could be shorter. Optimize? yes > Inode 31547 extent tree (at level 1) could be shorter. Optimize? yes > yyInode 32727 extent tree (at level 1) could be shorter. Optimize? yes > Inode 32888 extent tree (at level 1) could be shorter. Optimize? yes > Inode 33062 extent tree (at level 1) could be shorter. Optimize? yes > yyyInode 34421 extent tree (at level 1) could be shorter. Optimize? yes > Inode 34508 extent tree (at level 1) could be shorter. Optimize? yes > yyyyInode 35996 extent tree (at level 1) could be shorter. Optimize? yes > Inode 36258 extent tree (at level 1) could be shorter. Optimize? yes > yyInode 36867 extent tree (at level 1) could be shorter. Optimize? yes > Inode 37166 extent tree (at level 1) could be shorter. Optimize? yes > Inode 37171 extent tree (at level 1) could be shorter. Optimize? yes > Inode 37548 extent tree (at level 1) could be shorter. Optimize? yes > Inode 37732 extent tree (at level 1) could be shorter. Optimize? yes > yInode 38028 extent tree (at level 1) could be shorter. Optimize? yes > Inode 38099 extent tree (at level 1) could be shorter. Optimize? yes > .... These are harmless. They are not errors, just opportunities for optimization of the extent tree e2fsck can make. > So I tried: > > root@e1-ext4-2k /var/lib/xfstests # fsck /dev/loop5 -y 2>&1 > log > e2fsck 1.47.2 (1-Jan-2025) > root@e1-ext4-2k /var/lib/xfstests # wc -l log > 16411 log Can you share the log please? > root@e1-ext4-2k /var/lib/xfstests # tail log > > Free blocks count wrong for group #609 (62, counted=63). > Fix? yes > > Free blocks count wrong (12289, counted=12293). > Fix? yes These could potentially indicate some interesting issues but it depends on what the above e2fsck messages are... Honza -- Jan Kara SUSE Labs, CR