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 lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B26B1CD98E7 for ; Tue, 16 Jun 2026 14:08:58 +0000 (UTC) Received: from boromir.ozlabs.org (localhost [127.0.0.1]) by lists.ozlabs.org (Postfix) with ESMTP id 4gfpkd16Kgz3c4f; Wed, 17 Jun 2026 00:08:57 +1000 (AEST) Authentication-Results: lists.ozlabs.org; arc=none smtp.remote-ip="2600:3c0a:e001:78e:0:1991:8:25" ARC-Seal: i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1781618937; cv=none; b=HRqwmif1JkrJ9S0L4fn+EtqzN2waPBCzP4l7b5VZiDX5oRRGVw6zHG1971oIY7OUO0xQbgjeXP0RczoMqSkfJel3OvfpDGF1bolpg81eXTGex705bHVx+rrMj/pNpheTa281aEiYKS6SvLKbFD81xJPIATNUAw+Hr9amLb0ldSPQj8pxa/KTmAk3bjYwMimhb8ju2KBxMV9q6RnhWKqmjBfcBpGGBSaqIShRPWyDvgOE08vhBiIrsaT0OMlB7AcegHdKaXs+nO+a3+cGdgDHRMsVUZkR5mmJyE8T4Dovg0pSUUtOGK9heKNIe6gy0lJZ+jcLH852sqDsVofNnI8B4g== ARC-Message-Signature: i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1781618937; c=relaxed/relaxed; bh=YhQnc85bhNppX3ZWtjMTIiQZA5BWEXOerB7NxvXiEsY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=QLVgBSyI89chR8JA6ReWdPb2lF+KEAAPRtChgCYYLq4NZEjK4W5QHGsaFjKh4UTRs7DVRY9/DrKDNDoIRsKl+v+OC1kkzw7wlxm2g50b2fG5nkG+0a/yn2uKgBljRaDVw8LwzKI2Ubx3LQ6I0ld74cmcV3oZTALowcDIiJONue8ia9ZN+v+d0yVTzXZsbZTR4OPKQYiaWSW1T9ArSdOYjLtEWg3P+I7uSfxdmVXXvrOpXjWNKjlEs4Krj7yashmTLQwGy6e0KAKWRlxQVRIUjFl5CnaZSGM5DziBmpEPmyUJ/chTW+y3ClFoUfpkiLWELxvchbtZ8gfQ0i8dGwqlTw== ARC-Authentication-Results: i=1; lists.ozlabs.org; dmarc=pass (p=quarantine dis=none) header.from=kernel.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20260515 header.b=YErVXEEI; dkim-atps=neutral; spf=pass (client-ip=2600:3c0a:e001:78e:0:1991:8:25; helo=sea.source.kernel.org; envelope-from=brauner@kernel.org; receiver=lists.ozlabs.org) smtp.mailfrom=kernel.org Authentication-Results: lists.ozlabs.org; dmarc=pass (p=quarantine dis=none) header.from=kernel.org Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20260515 header.b=YErVXEEI; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=kernel.org (client-ip=2600:3c0a:e001:78e:0:1991:8:25; helo=sea.source.kernel.org; envelope-from=brauner@kernel.org; receiver=lists.ozlabs.org) Received: from sea.source.kernel.org (sea.source.kernel.org [IPv6:2600:3c0a:e001:78e:0:1991:8:25]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4gfpkc2mnRz2yv0 for ; Wed, 17 Jun 2026 00:08:56 +1000 (AEST) Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id 526B243FE8; Tue, 16 Jun 2026 14:08:54 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E595E1F00A3A; Tue, 16 Jun 2026 14:08:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1781618934; bh=YhQnc85bhNppX3ZWtjMTIiQZA5BWEXOerB7NxvXiEsY=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=YErVXEEI97QukE5WwtZDkNCrh8zvAAbO493SZHRJP0UY6wJSXsDkm6g0fuf9t9afl 2C8tMUrhnBFGhPb0rvQCfBuWiiSn2SxN70646xDlZO8j0aCkHdO048moY9huSDpywc mt9bIk16S6sk2fia2i+A0gWOOr+95pS+2uIZlWwps3NzBdFi+ilPqtOH87ie53KdiH cQxZTYhOSI5AFxACkQQXT9FrQOpFFFnBEwcerrLpfxZUzp4VNmLC9j1Q4Bd79BWX0a dPB0ZLfCwPlm6YNJTVxB81iH3rUTNjG1cbFd5nTAm2uyFcAbt07aD7aIC22I9yTKQx OjcvPNxqXfZYQ== From: Christian Brauner Date: Tue, 16 Jun 2026 16:08:21 +0200 Subject: [PATCH RFC v2 05/18] ext4: use anonymous devices for KUnit test superblocks X-Mailing-List: linux-erofs@lists.ozlabs.org List-Id: List-Help: List-Owner: List-Post: List-Subscribe: , , List-Unsubscribe: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260616-work-super-bdev_holder_global-v2-5-7df6b864028e@kernel.org> References: <20260616-work-super-bdev_holder_global-v2-0-7df6b864028e@kernel.org> In-Reply-To: <20260616-work-super-bdev_holder_global-v2-0-7df6b864028e@kernel.org> To: Jan Kara Cc: Christoph Hellwig , Jens Axboe , Alexander Viro , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Carlos Maiolino , linux-xfs@vger.kernel.org, Chris Mason , David Sterba , linux-btrfs@vger.kernel.org, Theodore Ts'o , linux-ext4@vger.kernel.org, Gao Xiang , linux-erofs@lists.ozlabs.org, "Christian Brauner (Amutable)" X-Mailer: b4 0.16-dev-4090c X-Developer-Signature: v=1; a=openpgp-sha256; l=2549; i=brauner@kernel.org; h=from:subject:message-id; bh=8k1zf1Xhv1DGOeFMfDC/l7TAYeTE4+X4pRdFgzN3Qrk=; b=owGbwMvMwCU28Zj0gdSKO4sYT6slMWQZRty7rJkuyThlafyx1mIfjotdVpZ67EFinW+lVrsm6 M7QlP3UUcrCIMbFICumyOLQbhIut5ynYrNRpgbMHFYmkCEMXJwCMJFjvxkZNh5cy6Npvn9z+LWY x3cOHzqavPJzxZ1Uvcs2TCKPvDzWaDMyzIoU7rjsZfN8+0tGuzPhUV/+TPWL69tZnSwxqedB5X8 nLgA= X-Developer-Key: i=brauner@kernel.org; a=openpgp; fpr=4880B8C9BD0E5106FC070F4F7B3C391EFEA93624 The mballoc and extents KUnit tests create superblocks through sget_fc() with a set callback that never assigns s_dev and a kill_sb that only calls generic_shutdown_super(). The upcoming global device-to-superblock table registers every superblock under its s_dev, so each superblock needs a unique device number. Allocate a proper anonymous device via set_anon_super_fc() and release it through kill_anon_super(). Signed-off-by: Christian Brauner (Amutable) --- fs/ext4/extents-test.c | 9 ++------- fs/ext4/mballoc-test.c | 9 ++------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/fs/ext4/extents-test.c b/fs/ext4/extents-test.c index bd7795a82607..c3836ecb89f9 100644 --- a/fs/ext4/extents-test.c +++ b/fs/ext4/extents-test.c @@ -126,11 +126,6 @@ struct kunit_ext_test_param { struct kunit_ext_data_state exp_data_state[3]; }; -static void ext_kill_sb(struct super_block *sb) -{ - generic_shutdown_super(sb); -} - static int ext_init_fs_context(struct fs_context *fc) { return 0; @@ -138,13 +133,13 @@ static int ext_init_fs_context(struct fs_context *fc) static int ext_set(struct super_block *sb, struct fs_context *fc) { - return 0; + return set_anon_super_fc(sb, fc); } static struct file_system_type ext_fs_type = { .name = "extents test", .init_fs_context = ext_init_fs_context, - .kill_sb = ext_kill_sb, + .kill_sb = kill_anon_super, }; static void extents_kunit_exit(struct kunit *test) diff --git a/fs/ext4/mballoc-test.c b/fs/ext4/mballoc-test.c index d90da44aadbd..a3b33ed2c172 100644 --- a/fs/ext4/mballoc-test.c +++ b/fs/ext4/mballoc-test.c @@ -59,11 +59,6 @@ static const struct super_operations mbt_sops = { .free_inode = mbt_free_inode, }; -static void mbt_kill_sb(struct super_block *sb) -{ - generic_shutdown_super(sb); -} - static int mbt_init_fs_context(struct fs_context *fc) { return 0; @@ -72,7 +67,7 @@ static int mbt_init_fs_context(struct fs_context *fc) static struct file_system_type mbt_fs_type = { .name = "mballoc test", .init_fs_context = mbt_init_fs_context, - .kill_sb = mbt_kill_sb, + .kill_sb = kill_anon_super, }; static int mbt_mb_init(struct super_block *sb) @@ -136,7 +131,7 @@ static void mbt_mb_release(struct super_block *sb) static int mbt_set(struct super_block *sb, struct fs_context *fc) { - return 0; + return set_anon_super_fc(sb, fc); } static struct super_block *mbt_ext4_alloc_super_block(void) -- 2.47.3