From patchwork Fri Aug 20 11:28:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anand Jain X-Patchwork-Id: 12449095 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 93CD5C432BE for ; Fri, 20 Aug 2021 11:29:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 7338D60F5E for ; Fri, 20 Aug 2021 11:29:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239281AbhHTL3u (ORCPT ); Fri, 20 Aug 2021 07:29:50 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]:41806 "EHLO mx0a-00069f02.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237660AbhHTL3s (ORCPT ); Fri, 20 Aug 2021 07:29:48 -0400 Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 17KBGbrA022487; Fri, 20 Aug 2021 11:29:05 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=k0lFz8N/DW/Z2h1h7pKMFkz3jPGoUa7rRuQFqjRlK1w=; b=v602Vg2K2FvfTkrByoBcQvRIxiJ7fu3UI7ms1HUyZpWO1sAPg8RJjmTH6q9Ou1YrLd0t D2e+EMVvm0qJwd/RNDAxAsnerRSjQZWFtfkivv6Zmia/bCjsZjdi5Iaugb3vpNt7LL/K Bh33IesC5wjI7fhXxRXoaBDcS0iAfYPcXS9Y+lFbjtrd4RQ4VC0ze+zGOiFd9o6rP83a KqU2DsqKMIFTO+g9yHlc3BAMl++e80O3Vi8TJkLAottnyMgj8F7RYK1Xs5T3F0LwzckL RoYotiJqFb3uO2znDLQFjTPcFTDluZf2j+TJZH1bJVr0VYa4k/lxyev2zcONk/If10XJ ZA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2020-01-29; bh=k0lFz8N/DW/Z2h1h7pKMFkz3jPGoUa7rRuQFqjRlK1w=; b=j0Mil8jHMuwvD3sqdEbcG/3yToP6KiMUcb+tJCp0eezUMVYzaQQ/fe7HI2qanSjKb/CH W68lpw/4x7t2639y/aHgZEpskrFZ8N3shPW1Yj2pSobORwuQhGtZzJMoSfAWZ5KHG7rN E1v7ZGXlhjcSQMK6FCUnuIXncyF3SYxD93L1WdUbyIO29Pp0ExGm0NDry5SjQL8n6jW8 MjYC46sq48gf5pBNtS/MscP715/gGgwUXwR8vJGKIkyvJK8OcP8umlbhmUtni9eaKGEs Ufn47TNoXgKs13mp7Ljg4LvLXvkULBGKzhyRE+AkAg/iOy6hI/ZxF5etQMikaWcs3OrY MA== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3agu24paj8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:05 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 17KBF1bN008856; Fri, 20 Aug 2021 11:29:04 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2171.outbound.protection.outlook.com [104.47.58.171]) by aserp3020.oracle.com with ESMTP id 3ae5nde5nf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=crX9fODTT9wZjWj7Y4iI5KULRgNYZ170nKDC+rT8/8AGBslJYaJ2ddPOrEkAeQvG4rpG0nQwyhb3tYXoR/gJVHV9F7JYJ033e5Wb1g1EOjC6nddyitc1W0FGg8uga4IbPC0Nnws9PhzfsYFTFzwVQQT1jnqqKN2Pu9EaNUhreZknF3c1F44D68sN9OewzTixJYUA01w+i1xRug9XNS9jKLP65IdIg5Ob4OXFm3NuontsXw2DwNndEL6hpQLiKOlv77e6FPbTsHtT9ut3zM206D4ow2tUYLwB8msrUFPG9PcAE5PgAZSCzjemm7tUM6D2nVfwjIuxvEsSAyOp/xCftg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k0lFz8N/DW/Z2h1h7pKMFkz3jPGoUa7rRuQFqjRlK1w=; b=e47smsF6/ni3ZhnAjm1VtR929BPRTSyPEpTvRJzpeyBNXTstA2AT3vZ8/W4qb+dUPftw0vx4Y7yTLCZHy++dCHvy5ugg8nAxEyATGCx6mTazsrNLUHFYQ52WdUnKpZjTdCj/ZncRRJasEYlz23s5DgIYSvTLttxyvZh0EPv2M5171fYSUCOifbVeiAniwte/y9HIxIVY8OMaSzh3T9bmGRCodj22Lqngd8KINYVtsWUpnDlIXdoxlEi63TNn3rb+61dQvWx2J8Qd5CRH9Z76gk7ezXP888tnNb4A/4oP3+ys4hZ/Jxa/PhRrJY+yYN3rysqEklp3FIxHmFtjmvoMMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k0lFz8N/DW/Z2h1h7pKMFkz3jPGoUa7rRuQFqjRlK1w=; b=ktf0XbQDW3rMcJOTOM/W39HJw6NOkYXwwpqyyrhF0QUZiUeuyf6nuFWhQSrmRg4kokZQIlMuf+WsrwtKIi4sbjdIMSo+y289q5zPefun2qiaPUN7XGfvB4hpPTBiaZSTFAgD3mJQAQHIdGyJMQLLZWLYftufRgTiSmGCu43IKXM= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=oracle.com; Received: from MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) by MN2PR10MB4094.namprd10.prod.outlook.com (2603:10b6:208:11e::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.19; Fri, 20 Aug 2021 11:29:02 +0000 Received: from MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a]) by MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a%5]) with mapi id 15.20.4415.023; Fri, 20 Aug 2021 11:29:01 +0000 From: Anand Jain To: linux-btrfs@vger.kernel.org Cc: dsterba@suse.com, l@damenly.su Subject: [PATCH v3 1/4] btrfs: consolidate device_list_mutex in prepare_sprout to its parent Date: Fri, 20 Aug 2021 19:28:39 +0800 Message-Id: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: X-ClientProxiedBy: SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) To MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (39.109.186.25) by SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.19 via Frontend Transport; Fri, 20 Aug 2021 11:29:00 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b073e1f9-7a5e-4cc9-9007-08d963cdb598 X-MS-TrafficTypeDiagnostic: MN2PR10MB4094: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8273; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: a1oVd8SzV95eu35VxvLD+Wwy7jGJkHU+Gz0f0JK7SySfjaa5LnLxUF5WAO6K4ZQp2637OXY8roIhsR2+wTDzZu4HiEO1+6+0bdJ4d2LjQOue9qWfiVAbdARMr1bIe9MpF/abQblOtjo+p8AUsLjPEqygniZbm1CC/bRcTWVO3ZqeUiWR5e7rdiRKMQPUgrhJehkMlbVB43VHNEwBKQXYj+jCnOkcL8qw0Bvic/fvCXUrij5UM+64bNcotRExcuCQhOrepPW7bpqm/hhuNi5Z6En+PLREXX+XBEVopw9lQe1dSFS421zypb1AL2vY9+KQboXGlgn8BC4MXTBV/5wP0jPVA83PawrdZfkfSZ8oBhVy6fqNaf/WMkHuAliCQWwpu0G4MvbJBxd4eY/DOiiYkTHMN53hSAOePQ8Pedg09EQJAGt1N6R3Sw73qAz3dm0124cSrV9DG3dqErGGsfaVvi4SeuT2SC5ZvEnMt983VDrnqOvuDYuzsQ3d3DSdw9i6o13XUKrbU63kcW0Rtnrce3JMATMCIuA+3uybF382l2dhnMpJxbvC4XKRX1JhltLdIvYPm/6h9PZ8WoO0RlgQMiFYEd/yxWZ/kLFUNrleP4syg6adyYK4HwA9cljNhM+eo9RQ8Wnc72SXoB/A+ecn5/GYgBdprQCSbhW2LD+lpJYbEzWLigAvb7ZAZb/BplUrPC8v3nfLyf7rpgs01q/PEw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR10MB4128.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(39860400002)(346002)(396003)(136003)(366004)(376002)(5660300002)(956004)(44832011)(8676002)(8936002)(2616005)(478600001)(83380400001)(6916009)(6506007)(6486002)(4326008)(316002)(2906002)(38100700002)(38350700002)(52116002)(36756003)(6512007)(86362001)(66476007)(66556008)(186003)(66946007)(6666004)(26005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: lQpo2HanDh8clODzU/JZKbqZT0vxC3+n/zC4d5+DwVHQLOU1MC4BtjLbDfzimxWqNTIzZdLqXUpiM7tpTCT0pMd5255ZT4eLBUNiXzIbHSBVp6mMOd7U9dKk9UKHnov2sBLOb3pX1f8LAbpuZljiqce495kLLkf/AxL2FOHsVJdu5C78sUNhzb51PMODM1yY5/Qtk1nwgsfGaPh24kLDKz0IQ+fl0jzkYRE3xlhh2icW57Eoloyuf9EI8mhGzbDjY6aS60DTSwU8tsxVE2QZTt9UHuO/WHHf5CAAwkcfHqTmymh6oHWU3Q7qvYi8UYGc6YcNbh/k9lUQxP1ez+4lwTmZXG0HkV/RDY+lLg9lKe/flRARL2nTro17vA7gJIYyC11VoaTlxgYl6q2/sWZaPZQgfGZF8nXOIAWHxXxYceT8Wl/E2asbA0WmWvHS/pkjd5jLjR582aq0xW4EiMk5Q7s/HQEgAJ/6DoNk++c/f675w1/bw2+1vavwCuZ1U3xueHGcfKYsYZ9B8iT2hjJwZwfj5BOfjyLRqsEYMSvBzq6rquZuUSjdez2mAtnSn3FYI4uflYHauy5ayHV2mMcohkZgiIcv8Q1FiVtAjw1Y3/ftqwynsF/DMj76Y7tLlvS+lBQ+zfCstE8aFOdIjrrWhBFnlNSsODzVXaECdJ4j1Bmh7mZDXypHTDir6lG3dw2qXskFpzl+PHpllWTq865Dti9HIduSjuVl50f60VYkHGXZfPYJ5AVeaqlYZjidv75KFS59M8pYH3GYpv/mDv3A2BbAkGTL5GK+mhZ2q5LyuGju6BdTstXnmRHLJEkA71wtgY8VcpQHqdXb2pL5kWkxywT9l4FrFcJStWn+1FcNKPWlEDCr5EMUOxp3WCJ6Vt0bs0r9KaN74XQILshirExpuZLmC3zUwDKXF3gIlm7dd9kkHHg4o+L6L9/2frpqNT9Fx/efEsEQ/1ZWHoCCadIX3G9VoG7t1yzpElUZ1dBB34WtynsEtlAapVkLx8Ep4DqRx2mnriBSTicn7YnJ82Bzm1inNDqxXTCfB8z+8l8UkQz35rFapyWhtDf1R7yaaKOG8hg1LZ1r/W0ERoJNzqx2sK8/v0C0zhR1cpri+Fxa+AFCUBzp44LA2TAe1bUvt+6nB3ucNfSSROK1UHpKSxOoJ/fv//viJZnxWuOFuUHvP8NxXjet50RN1sArz1phrN9eExVRV63FzX5SkZqxoSiqIyFjvIFEHO8NY3OTHuC4FR5kJAZfOxgj/+m0xKjATtNrcbPgbTWBMbshYp/mJoJUttSmYnp5Ocyau0lD00tv6W5hzWpG565DtR3v4ikJw3KA X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: b073e1f9-7a5e-4cc9-9007-08d963cdb598 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4128.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Aug 2021 11:29:01.9230 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hYnZLvZxBE3Le1/nm2VWtU5jKBXWfg+KlHvzKLNRWSLSnd2YkNdSFFRi1d+bgVVhcesVxZ2BNsVysk9BVJMbFA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR10MB4094 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10081 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 adultscore=0 bulkscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 mlxscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108200061 X-Proofpoint-GUID: Cr-UllZen35MkESGGtcUw9_nvvRbhLXJ X-Proofpoint-ORIG-GUID: Cr-UllZen35MkESGGtcUw9_nvvRbhLXJ Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org btrfs_prepare_sprout() moves seed devices into its own struct fs_devices, so that its parent function btrfs_init_new_device() can add the new sprout device to fs_info->fs_devices. Both btrfs_prepare_sprout() and btrfs_init_new_device() needs device_list_mutex. But they are holding it sequentially, thus creates a small window to an opportunity to race. Close this opportunity and hold device_list_mutex common to both btrfs_init_new_device() and btrfs_prepare_sprout(). Signed-off-by: Anand Jain --- RFC because I haven't identified the other thread which could race with this, but still does this cleanup makes sense? v2: fix the missing mutex_unlock in the error return v3: - fs/btrfs/volumes.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index e7295ec3865e..51cf68785782 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -2366,6 +2366,8 @@ static int btrfs_prepare_sprout(struct btrfs_fs_info *fs_info) u64 super_flags; lockdep_assert_held(&uuid_mutex); + lockdep_assert_held(&fs_devices->device_list_mutex); + if (!fs_devices->seeding) return -EINVAL; @@ -2397,7 +2399,6 @@ static int btrfs_prepare_sprout(struct btrfs_fs_info *fs_info) INIT_LIST_HEAD(&seed_devices->alloc_list); mutex_init(&seed_devices->device_list_mutex); - mutex_lock(&fs_devices->device_list_mutex); list_splice_init_rcu(&fs_devices->devices, &seed_devices->devices, synchronize_rcu); list_for_each_entry(device, &seed_devices->devices, dev_list) @@ -2413,7 +2414,6 @@ static int btrfs_prepare_sprout(struct btrfs_fs_info *fs_info) generate_random_uuid(fs_devices->fsid); memcpy(fs_devices->metadata_uuid, fs_devices->fsid, BTRFS_FSID_SIZE); memcpy(disk_super->fsid, fs_devices->fsid, BTRFS_FSID_SIZE); - mutex_unlock(&fs_devices->device_list_mutex); super_flags = btrfs_super_flags(disk_super) & ~BTRFS_SUPER_FLAG_SEEDING; @@ -2588,10 +2588,12 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path device->dev_stats_valid = 1; set_blocksize(device->bdev, BTRFS_BDEV_BLOCKSIZE); + mutex_lock(&fs_devices->device_list_mutex); if (seeding_dev) { btrfs_clear_sb_rdonly(sb); ret = btrfs_prepare_sprout(fs_info); if (ret) { + mutex_unlock(&fs_devices->device_list_mutex); btrfs_abort_transaction(trans, ret); goto error_trans; } @@ -2599,7 +2601,6 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path device->fs_devices = fs_devices; - mutex_lock(&fs_devices->device_list_mutex); mutex_lock(&fs_info->chunk_mutex); list_add_rcu(&device->dev_list, &fs_devices->devices); list_add(&device->dev_alloc_list, &fs_devices->alloc_list); From patchwork Fri Aug 20 11:28:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anand Jain X-Patchwork-Id: 12449097 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C6F49C4338F for ; Fri, 20 Aug 2021 11:29:15 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id B063261040 for ; Fri, 20 Aug 2021 11:29:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239331AbhHTL3w (ORCPT ); Fri, 20 Aug 2021 07:29:52 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:62514 "EHLO mx0b-00069f02.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239192AbhHTL3t (ORCPT ); Fri, 20 Aug 2021 07:29:49 -0400 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 17KBG0DQ006305; Fri, 20 Aug 2021 11:29:07 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=C6mfZh56zZLapBtka7GI3ZZCDF8EyD/VM19a5GMj/xc=; b=lIOqEgEksUCgSckNOjp/CWpj3rA175WbbcNZ33WmCAnE47FoM2nTZ1dIgZkduHAthuDa xNU0ttwOKlI9lUN0LChGUJ+9sZyEvfowQjX9eU3hB8Mhz9IVgWOsNxVPjqYVskMS1EGD jQGQA3N3KmqR+CXmjPVCJ0hCGMUw29lNCcJ9LiUZ0ufhjoujswUDSqnN4mF2eld0CBup 7zLJN8Q6Igj0f8KkSJkKp2MUrd42IWRmQI96dywgcLOCcK+Drxp7hsP56DZ26G8r24AG JwEAJw21Fctgqu/fGemWO6ocOOZ10YbVsY4qu/CGGTvpx5BOf1vs5q5fiI8NzY2Vaiqr Xg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2020-01-29; bh=C6mfZh56zZLapBtka7GI3ZZCDF8EyD/VM19a5GMj/xc=; b=HaxnduJZKD/uJGYnHBMp+1fRVguqXQF/d05qFEj8JVeI5qQ7DDLQ88EkyRkVektpCnEo MQQhU1iD3pyruCuE10Es2bg/MKSZyEZtrp3tL6L19M7iEtB9t5JT02pL7xxQEBe0DEBh e/CX4qoxRvgJ8I4UzYrIjDcVmiW9hp+a5PJvjIlE+OC7fnBVXrVJjm3vsC8wsGeTyCDP gCK57gNI0rFy5A0BmBzYnU3ZlSK2/hZXVN5F9OIsXHKq2UunDeEzIGKNvlipvdbgUZuo 69IVWTYPLw3D/as9cKBAYNHky78aQ9Zb+s0dD45/IAZirm0qG+nqhwriHaC0xio8pv6m Zg== Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by mx0b-00069f02.pphosted.com with ESMTP id 3agykmnqqy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:07 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 17KBF9CQ175016; Fri, 20 Aug 2021 11:29:06 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2177.outbound.protection.outlook.com [104.47.58.177]) by userp3020.oracle.com with ESMTP id 3aeqm1hsau-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I3LQhgr6iKlXhWUzhEPF/5dn2Vf+H3/ttTYnX9KInDZtenrbcXoQrgJPO5jG3LN3GH05f7Fx+qmnn2Tw6WLwwn81qhU0ONN6WCSEBPVmpDvWicDUQptzrQC8/xCGNPwPHp+Ds6XDUHZvNgFeM1r21wfSvwxk2TWqXiRsjwpW1qi/61wKnkLX0/Dqj49T/QybqovGNE3TEZGOKaIiReEUJjYVo2YD4jK2P+6L9Y2kDpQ1qz4SMfGPraMZH9ZCLrQua/Neksuarup72x8CUdVAfieXD5zQ4FDFhmisUqQ6uL6mwmX7MYweXt3CSNoFnUV6nAnlbjgNERLOjnVNfPOfHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=C6mfZh56zZLapBtka7GI3ZZCDF8EyD/VM19a5GMj/xc=; b=DqrfdvparwbnBENaNgpCD6N7ShsSpkyZ1EQHB+B5b95rOIH7wURsnSBWBq4VwGA/2iR5uMyv+i5wpyhr3T8ub+afOxCKatTNSdXuVzocryqvVXOxHyOVVFZZ0yzmmeIFyCBcTgMPKIzdnEJUMOfVSYMpEaXD7GxDPtQxpCm2JFcsiDGbpXWwny+1atYkT0IaUAyFEISmp/OR9S50oTfbbMZr4zUMg9HdxxMr5NqxQzlE55dUQZ55vxIZ2MzciWFwC2WlFny70XMemzAziEGkdoNiz6FqWMIn1noKf1+twCBaqQXE5MvwQ6AESQajDRJXk3QGiezxWNpixzvFni9FiA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=C6mfZh56zZLapBtka7GI3ZZCDF8EyD/VM19a5GMj/xc=; b=cmtHN8Agj43qOBP8sFsrkdVFx/5oQB3SLuLyJg5/iC8LQK7APVTNzOABHYR1dMVYvHvURX4HrIOUrfIntf93WEWGIw/V9rEXzxmQ2ZN9FmgA8Vy0iNbtePiiQY5MK1eJcde5nEmasiNDcBxyBh2U4zTdCaqbMnEinCKX2PXHSsQ= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=oracle.com; Received: from MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) by MN2PR10MB4094.namprd10.prod.outlook.com (2603:10b6:208:11e::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.19; Fri, 20 Aug 2021 11:29:03 +0000 Received: from MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a]) by MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a%5]) with mapi id 15.20.4415.023; Fri, 20 Aug 2021 11:29:03 +0000 From: Anand Jain To: linux-btrfs@vger.kernel.org Cc: dsterba@suse.com, l@damenly.su Subject: [PATCH v3 2/4] btrfs: save latest btrfs_device instead of its block_device in fs_devices Date: Fri, 20 Aug 2021 19:28:40 +0800 Message-Id: <61d6dafaff6a119f56782fb35b2374411585b634.1629458519.git.anand.jain@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: References: X-ClientProxiedBy: SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) To MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (39.109.186.25) by SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.19 via Frontend Transport; Fri, 20 Aug 2021 11:29:02 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4fbbf88d-355d-4a24-1894-08d963cdb6b0 X-MS-TrafficTypeDiagnostic: MN2PR10MB4094: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:561; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BiIRHUrZeLZD5o+Izm6Qe2K4SWIzbWgSgKMYR+aFP/Gtv99JLYJAMuza/KjzvWNo1JtgIUu8cBiSNmndXyan7arzM6uyh6nny2LnvOtS4s/sGtbPLy/9CGh4rqAjphbvv07KCjrrGMvjgC3M1DMT2u+BKe2WGoBYW6I9hhibzlXT8dHf/7QVAYqXQfVBIM0tgUiQdyZVf3zpbZHaTZ8Njcn7sOQi2eLpY9IEQq68UxjJUr5ZQh+d9RuqReahqV+/jEmej8JXpMggfCQn+Wsf0/jkgM3rQ0Mcct9otgxIzKOPXMbrogwNdRdWJAToGcgPqQ2Tv2N+cLezMWVFm4/KWOH1RbgpAYMbyAjGw2tw1309cmMAQz0irnAeA0zVj8loXzYj/XYhupwahNh+IrdKnVR9nwpQbxec4V7jTfbNxtqpbdmIXFqgRq/FMr3g3jfhQBDCwCMrrUwCOFcyKBa+piGJIolXxNhSc/Q87ri9fONu0WX9TX8HqCRE6F8b38Aor0WaVzMhfy5SDMj4yNXI+Wky5vjwk7QcgwSyzQIPSYTvXXrquiIOKbBs+YqoQ447FcnOR3lIACtMBobQKiPN+cxK2hKDz67BalLCBYEPzjri64RN/0iqwbaTEIJIWSTK50lDkdLNBAiTCjj6y05+y+0bBeTcDFh4KFpp7bjnqeRsk/K4jhBRnVdpzv88BN7b2SEc6ogW87cGqOYUx7Ak+g== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR10MB4128.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(39860400002)(346002)(396003)(136003)(366004)(376002)(5660300002)(956004)(44832011)(8676002)(8936002)(2616005)(478600001)(83380400001)(6916009)(6506007)(6486002)(4326008)(316002)(2906002)(38100700002)(38350700002)(52116002)(36756003)(6512007)(86362001)(66476007)(66556008)(186003)(66946007)(6666004)(26005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: XzG4XJg8p2Nr9ZqjVNV+VgoGeHbyhc15K1DscxJqtYi9VyACSYviKpmFcCqn8bGywrybTgiQ5Mwyv4CZoU6aNvgqnshK9Zo6SXs0GDUlBh1zYJpxCCzpZG7AM/bumJ3pdg38ra5t/iagShV/eIdnCAwklx16q5SbAdUQg1Oq/741RDU/vqhoqk2ejlH7dOuFZoRbS8E3R2BegMFrkVK2pa3KUCy6zdUN6SQ+jnXFWBITSSZZLgCAVJQw5XzGHETClSpEOaxquzrlVp/diqEzXMdCP6qO20K1Z9e/63Su9znT2ayW0Cot0JjN6xQyvofGhItHlZJLHtCNM17U7K6gmiIzAFM/Kw7HGYzradauT3vHkX2UnauprDkz70fvdbePumAw6hGCPAVzYf5pGr4kqOyiErlP9WTHKDZhz48TN9dUqkxuFKJNsWxliOrrZxDDyE9EWSIOMQA4ks5sRvG8o+KxnPR0OndLSJyH7prydt9fBwRh8MCOINA6gi7o5qhyw2ZECyw/nqUIRWoLogjBKj9USDT2k5A9w7I5ev4PqlK1JABx+t76ZLSHzQIMgfXClG6EIVjDtmKMK4fvQ0419egbC3MU1bWA2Dw7VSEWb0cSr6QYGRkNQIj/dRtxp7JvrGMGza9DNEBLmYS+W8Xk7oNhvM9puSZ7xciI3rkUJeNBjB+dcxMYVhx4g5/s1sOUbCFOwTsqL3WV+AbAOmQuibtFyuy4s20BHiwCCDTi8OXqVuGRegZxvFkpauLU9VIuVvOaFDeJiHYlaY8H30fkSDfBeS1i103V3biLoHgPhQ1EsZ4tVowRj+SIXKam1rpX1kqMCciotiMONSz0fya27etIme//JuuS6ymBz44JczWRWhg39uXVrNLuKrahxkYk75jwu7YKv4yzDiM6ujFr0wUymmhjyn5Od3S5tmYnnYRiAUaGKAw8lcobug9gsZSRy0O0xo+A70eV4yAvgKFsftNzPX5TCqxbC4STv+Zz2kXlMuBtKp0rvLEBMq9vc4How3ITYCMmikp+enzH4yP/9yWNvpuQkhAcZ+/SIFFCd8FDISly+9yzAtMaZjNchv38xREvIrKXUD6rJrzXHlsm7G4/1bx+7cRQA9wFwVqxcGjWpgiNPactdgDFUaF0g+/Uifii4xiJnNhkB1ayQnbaLb2oGBKWvEwNFOSsFHDJo/RDb5qLdf1P6YtWcEhP3vHRiCU0wx2XbJWLqKYH0wIPXnYgwHXk9xfJJMcbYXc3DXN97kGALM2tpHae1x13OcPQhPta0EYa/m3YHTTqwbWgm6hgyKtmPaBGxQ8ccJzN+gZqRgBc4EXuXeNrKSzwrHZT X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4fbbf88d-355d-4a24-1894-08d963cdb6b0 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4128.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Aug 2021 11:29:03.5279 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Zk03oqDYRezWn2KKhKKx4aQlMAWHtEMA99os11zrklb24v8hVcTpIhu2+tgT8I8VjsAGCIXAk7tKExKdD6n4Ag== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR10MB4094 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10081 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 malwarescore=0 mlxscore=0 spamscore=0 suspectscore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108200061 X-Proofpoint-ORIG-GUID: kfAL24fMq1lcezIC-kivAV-XLGqix_Li X-Proofpoint-GUID: kfAL24fMq1lcezIC-kivAV-XLGqix_Li Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org In preparation to fix a bug in btrfs_show_devname(), save the device with the largest generation in fs_info instead of just its bdev. So that btrfs_show_devname() can read device's name. Signed-off-by: Anand Jain --- v2: born v3: - fs/btrfs/disk-io.c | 6 +++--- fs/btrfs/extent_io.c | 2 +- fs/btrfs/inode.c | 2 +- fs/btrfs/procfs.c | 6 +++--- fs/btrfs/super.c | 2 +- fs/btrfs/volumes.c | 10 +++++----- fs/btrfs/volumes.h | 2 +- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 1052437cec64..c0d2c093b874 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -3228,12 +3228,12 @@ int __cold open_ctree(struct super_block *sb, struct btrfs_fs_devices *fs_device mapping_set_gfp_mask(fs_info->btree_inode->i_mapping, GFP_NOFS); btrfs_init_btree_inode(fs_info); - invalidate_bdev(fs_devices->latest_bdev); + invalidate_bdev(fs_devices->latest_dev->bdev); /* * Read super block and check the signature bytes only */ - disk_super = btrfs_read_dev_super(fs_devices->latest_bdev); + disk_super = btrfs_read_dev_super(fs_devices->latest_dev->bdev); if (IS_ERR(disk_super)) { err = PTR_ERR(disk_super); goto fail_alloc; @@ -3466,7 +3466,7 @@ int __cold open_ctree(struct super_block *sb, struct btrfs_fs_devices *fs_device * below in btrfs_init_dev_replace(). */ btrfs_free_extra_devids(fs_devices); - if (!fs_devices->latest_bdev) { + if (!fs_devices->latest_dev->bdev) { btrfs_err(fs_info, "failed to read devices"); goto fail_tree_roots; } diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index aaddd7225348..edf0162c9020 100644 --- a/fs/btrfs/extent_io.c +++ b/fs/btrfs/extent_io.c @@ -3327,7 +3327,7 @@ static int alloc_new_bio(struct btrfs_inode *inode, if (wbc) { struct block_device *bdev; - bdev = fs_info->fs_devices->latest_bdev; + bdev = fs_info->fs_devices->latest_dev->bdev; bio_set_dev(bio, bdev); wbc_init_bio(wbc, bio); } diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 2aa9646bce56..ceedcd54e6d2 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -7961,7 +7961,7 @@ static int btrfs_dio_iomap_begin(struct inode *inode, loff_t start, iomap->type = IOMAP_MAPPED; } iomap->offset = start; - iomap->bdev = fs_info->fs_devices->latest_bdev; + iomap->bdev = fs_info->fs_devices->latest_dev->bdev; iomap->length = len; if (write && btrfs_use_zone_append(BTRFS_I(inode), em->block_start)) diff --git a/fs/btrfs/procfs.c b/fs/btrfs/procfs.c index 30eaeca07aeb..2c3bb474c28f 100644 --- a/fs/btrfs/procfs.c +++ b/fs/btrfs/procfs.c @@ -291,9 +291,9 @@ void btrfs_print_fsinfo(struct seq_file *seq) bdevname(fs_info->sb->s_bdev, b) : "null"); BTRFS_SEQ_PRINT2("\tlatest_bdev:\t\t%s\n", - fs_devices->latest_bdev ? - bdevname(fs_devices->latest_bdev, b) : - "null"); + fs_devices->latest_dev->bdev ? + bdevname(fs_devices->latest_dev->bdev, b) : + "null"); fs_state_to_str(fs_info, fs_str); BTRFS_SEQ_PRINT2("\tfs_state:\t\t%s\n", fs_str); diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index 1f9dd1a4faa3..64ecbdb50c1a 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c @@ -1706,7 +1706,7 @@ static struct dentry *btrfs_mount_root(struct file_system_type *fs_type, goto error_close_devices; } - bdev = fs_devices->latest_bdev; + bdev = fs_devices->latest_dev->bdev; s = sget(fs_type, btrfs_test_super, btrfs_set_super, flags | SB_NOSEC, fs_info); if (IS_ERR(s)) { diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index 51cf68785782..958503c8a854 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -1091,7 +1091,7 @@ void btrfs_free_extra_devids(struct btrfs_fs_devices *fs_devices) list_for_each_entry(seed_dev, &fs_devices->seed_list, seed_list) __btrfs_free_extra_devids(seed_dev, &latest_dev); - fs_devices->latest_bdev = latest_dev->bdev; + fs_devices->latest_dev = latest_dev; mutex_unlock(&uuid_mutex); } @@ -1206,7 +1206,7 @@ static int open_fs_devices(struct btrfs_fs_devices *fs_devices, return -EINVAL; fs_devices->opened = 1; - fs_devices->latest_bdev = latest_dev->bdev; + fs_devices->latest_dev = latest_dev; fs_devices->total_rw_bytes = 0; fs_devices->chunk_alloc_policy = BTRFS_CHUNK_ALLOC_REGULAR; fs_devices->read_policy = BTRFS_READ_POLICY_PID; @@ -1968,7 +1968,7 @@ static struct btrfs_device * btrfs_find_next_active_device( } /* - * Helper function to check if the given device is part of s_bdev / latest_bdev + * Helper function to check if the given device is part of s_bdev / latest_dev * and replace it with the provided or the next active device, in the context * where this function called, there should be always be another device (or * this_dev) which is active. @@ -1987,8 +1987,8 @@ void __cold btrfs_assign_next_active_device(struct btrfs_device *device, (fs_info->sb->s_bdev == device->bdev)) fs_info->sb->s_bdev = next_device->bdev; - if (fs_info->fs_devices->latest_bdev == device->bdev) - fs_info->fs_devices->latest_bdev = next_device->bdev; + if (fs_info->fs_devices->latest_dev->bdev == device->bdev) + fs_info->fs_devices->latest_dev = next_device; } /* diff --git a/fs/btrfs/volumes.h b/fs/btrfs/volumes.h index 4c941b4dd269..150b4cd8f81f 100644 --- a/fs/btrfs/volumes.h +++ b/fs/btrfs/volumes.h @@ -246,7 +246,7 @@ struct btrfs_fs_devices { /* Highest generation number of seen devices */ u64 latest_generation; - struct block_device *latest_bdev; + struct btrfs_device *latest_dev; /* all of the devices in the FS, protected by a mutex * so we can safely walk it to write out the supers without From patchwork Fri Aug 20 11:28:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anand Jain X-Patchwork-Id: 12449099 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0CBE2C432BE for ; Fri, 20 Aug 2021 11:29:17 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E518460F5E for ; Fri, 20 Aug 2021 11:29:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239336AbhHTL3x (ORCPT ); Fri, 20 Aug 2021 07:29:53 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:64074 "EHLO mx0b-00069f02.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239257AbhHTL3u (ORCPT ); Fri, 20 Aug 2021 07:29:50 -0400 Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 17KBG0DR006305; Fri, 20 Aug 2021 11:29:08 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=2GT4HmMbU1C0g5b7SYN3u4fgADm46rBj5yW2Op7EpXs=; b=1L2biIxSsDz2VM90oWPWPGR25hxe4rcLA/iAV//CzJ6hfFLv3fRfVKZ7CGYZ1t+BzgGu BOZZ9sxXtXtKcngwFHRzLeG16sd6Nlp7eAC41PiFt/F09LYV7w8v3a8NrLGaXvjfvWlz yjZI2Aid3lKSR5h4TGgsc8pcKftdEM5D1R4R18nWhLmrx6tEUsY/nRu4mPaZqdwK03kJ au4kpqoNhSSsrDCIHV4OrZetYyL028bU0L8bzjiwEGyYiatrjQFcnI9KpxbIKgJV+pJZ B+4kYSsGuOLu+IP6Wd00gRttI4Btcn57gijLWZ0zbdRJ+1lrCWb9zlrvn3cjN261F0Rr eg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2020-01-29; bh=2GT4HmMbU1C0g5b7SYN3u4fgADm46rBj5yW2Op7EpXs=; b=hF+EpGcpb0Sf4y4M3A7UlTiozv086UT2FxeVob1VPUPbpZMBYZWFqigJqKEqT0QXEpj6 n+m7CL3DVrB2GDqMuHhgl0DTUKqFSB7wUnyW9+div3cSd7jqNQgrsgKHItsQYdS+BO2p a3YQIfwUXGQqZVBw8kDhyLesBSooBtFN+bcKmnZ8Gw0bvFsPmOd7k//ofRVH0z+aH1rb HlOXu5kBwzjVYPnMkGf+nwWlh8nmX+QZO1MLKvfNpsKZJSBO+XeRCr/SSbZh4HS/8HlF qFP/oi8VLfeLVz7GBvnTciTVEG16TEKmwzW2iRt51dY9gmt7ok9ldIc8ga8mr5nlX8l7 Eg== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by mx0b-00069f02.pphosted.com with ESMTP id 3agykmnqr1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:08 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 17KBF6N7008113; Fri, 20 Aug 2021 11:29:07 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2170.outbound.protection.outlook.com [104.47.58.170]) by aserp3030.oracle.com with ESMTP id 3ae3vncmds-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:07 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RRioRNGasmYy39bmlUSGoLL0I8b781oU0zZzw6IAErFxRoVKS0Lcd4szB4Gol7WR6MAXx43BAurEVNeam8mdbJX/ZCF+yje+2zR/uliMgqTptsV/Tjs9qXG12vSiffNrSwhQ+BqZRDzsVb69HRMdhV4ow7dL5hGYazOVdkAGj6b17nYSOedydYy9dDGXzvnNpCeeo1k69apQsudK8dgDK6vFmVj2wh/V1uLvVHDd9a6J9vE1IfYHN0l0GOIoG1YZEJxhtmDUdQhuWwH2ogvXQQZGpJDxR2igUTbjTzKI82+4pD8PmaDaR0dDkBQ32nhWtD+InT20sMMD3qvWYCp3ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2GT4HmMbU1C0g5b7SYN3u4fgADm46rBj5yW2Op7EpXs=; b=fjlQS2WmNq+lu4duAlaa3GBblwgCk3uTG93xHOyYHgGWlxQ2aaIdBsX6croFaq9K8fecga9rDXHAtqYx6ksudA4hTs3rL/IjRIXjqdTW/GpwX2YgMo1sQDTBv/xnHRj6jyg/x3k/lMy3R7dh/Lj2aZdmOdkwFLmZT/VghklETBp/NMPo4r5G2zvrJ+tR90OXIyrzBrMzUYA8J6LlQgz4UGwFxNf+D+IOtdwOnvRhwbwNyXHzYbPtEy4WkhnJ8SQ6MsO6Uyp0V90BL3SidPnz0YfM34fttuVW+L4srGM9rB03YxJC60J93Z8jTBuuljAX20YrqLbuoo6M5CDeWx6UYw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2GT4HmMbU1C0g5b7SYN3u4fgADm46rBj5yW2Op7EpXs=; b=YVSnUbK/SdMnNsUttoUNelzlBVdisbwZ43gfxPwvVFf6Rb0eGaCZVNt7Y5X6YgBM2M7GCwp8ZBOqWGykXoAVP5bgR1xjqTic0zrKzTQ228fwVW5YOdWSVusx1r4nZ6+tD0TpBhJ0Hox8gS0wqi3k3BZu2HXtypTceIuzjXGWN+E= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=oracle.com; Received: from MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) by MN2PR10MB4094.namprd10.prod.outlook.com (2603:10b6:208:11e::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.19; Fri, 20 Aug 2021 11:29:05 +0000 Received: from MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a]) by MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a%5]) with mapi id 15.20.4415.023; Fri, 20 Aug 2021 11:29:05 +0000 From: Anand Jain To: linux-btrfs@vger.kernel.org Cc: dsterba@suse.com, l@damenly.su Subject: [PATCH v3 3/4] btrfs: use latest_dev in btrfs_show_devname Date: Fri, 20 Aug 2021 19:28:41 +0800 Message-Id: <1ffa15f29c6913e51a60c48b1040d8306daa6e67.1629458519.git.anand.jain@oracle.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: References: X-ClientProxiedBy: SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) To MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (39.109.186.25) by SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.19 via Frontend Transport; Fri, 20 Aug 2021 11:29:03 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 40d5ed39-5fc1-41a5-9962-08d963cdb7a5 X-MS-TrafficTypeDiagnostic: MN2PR10MB4094: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mbZGjb8ab276trVU29IZysGhATylpApnGzc9uCq/lxr8b3yO5+rcD3bBoqF2hIBxslaCarsoFq52Go6uHpwNKq8AtsUOjmWWI12NWmmpITFKlbeH3rOWcilvqQ0ST94aWQK2PpgIFI+bIjwl2pUKj/p6KdB1j4XESg9DkmYTWUNBxv+E3P79zTwD1DlWy69b26f8tfsrRujpmv4KexV/xmcRAlc8IhALCPhwujBjdSKgGbmUMdA0UtDuFxn3VUqYOdHT3obBl/MfrsM8v+wxpqKeqM/7ddA+o+Oh4zHhZXta0Jo73iBifulmmJCZZ4/x+JGtarh+NSAdqlk6qq7mRsptXDK3a/RELjFpb1KNGUZLGSO8WklOzdoJjXNEd3KsCCm5LuP+hAW/Lz0PpIGwlWthQx+mwCSJFss1ggSLoze+C2l0BNIrOx2aMbvqD0jPoFjtMTr16kgAYPnqh/JlV+W+IoEzYTopTn40DLm5ghqaXVKXyY4qSTqApw/ze7/ILXmtdhXWO8hQILscUnSBz92a+45YCh7XPp6jUtfofaThWBP3SaO139pM0JEMtcd9tRKsthHG8OWegP8uzn5pZrPPcEx457ixpqckGBBwHQisK50ao6Tl3S7Gf2z738Ys5bO5rb9wlLPGnOlrQky2tvM45OcgoD1eZFuc65WdtHh/0QA342StXbo9AR44rcf+lGhQ63aGqswfEmnExAN8tQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR10MB4128.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(39860400002)(346002)(396003)(136003)(366004)(376002)(5660300002)(956004)(44832011)(8676002)(8936002)(2616005)(478600001)(83380400001)(6916009)(6506007)(6486002)(4326008)(316002)(2906002)(38100700002)(38350700002)(52116002)(36756003)(6512007)(86362001)(66476007)(66556008)(186003)(66946007)(6666004)(26005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 2mAEcIa9FLtJmdqIjIdcr+DZOywNx8nZS2jcgLBXVy+PTwJIWYpAdsB4sdjV/+iDI10Cs4civ+GgGw58B4suCRO3mZoR944+U52J0BwQLQBU+RdY7CSBqf9IK9lLQTeV6I5ZTkzZtXjijBogx4s82MjWmVnKQDSZK/dx0gLN5rwcCKNQ0RqhtUuIZgY9XIElUOk67mixlS3BxKpk/R6VGiz8jWGqi1KuACuMKAG6mhgNC8lGVdMzkgcZfBOz3JqSPCnkBG7qu7L/yAc2P03VolJYZ1OJp7i/AlPsXPbsYmIk6lwlY8NPI37xCEt3lc9bx60CVMxBgYAVBkYEtWZw4BAoJvEXTR8r9iXHnLeAkQzfBG81+xk6q8RGrv/9G5j6eJEfOZvL7/ZwjzxKFKWJ66oP2WBcSO8uQvhohyvPmPY1cmAjYbvtloBgbuPuS2sMoW8OAWt0+SlxA9iarK7Ayv0Qfjpk4piwhY6rwgCs+D4NES8IcVMj1+l5FP5TY3foLOkLzFueXYjOSrD1LvWVMl8XJ7pIEKCfRWBEWdFxwhRzZOYEOpv5kolMyu+PBQAMJZ3sXF/hKNSHRrB7Ldo7WAmIwDaXTieo7VfcX6XGih7mseMcldz1kcAGbN4bdiAl+/agUJifPkepbE0m5nhTJPAKRU49635ytf9Nu2aS1N8fgX+9UpLg11WBVKnbPE7QGYNHjFPdRYLCcNwACfadQsFH59WCHXwtN8yKzMX/gwruLZhtcZAJ2N3nG6HOG3bgiduGQ3/JNibhnA4Jln02c870sbJ4Q0qOkxJjRhPKqRCEzbnnDSBSMA94lIey+Xepqw59J0qCdHNf3vUZva/LzyqQiUAIFcI6WPoMc4hhF0EziOXGfzDXxBJOM08iai29HvnjhPM4yAB/R0issEZxNdDNsEo5cB7wieP+P7hk80Fii2KWCqS4/raUQeQRInVq5+Ht2LOmdCoQn+uM60/9YrD3vwoAVKIsycfcKlywZa7X4zDg03JLHZBtXCocSc5DyZnclChw8UC/xQPNl2ekrjaMYoUIWw1TuiMnzTxplaQhCQBiOT1nBS9nHBEn2bSjUwpVJCakb1FKvQVVq9HpxSGwZwmw8ph8bhf0BxLc2WpuhJ/GCgm3gTqtctE+pVo6clkFTNOIVXgwCcp1/PbznrcqzUzr3S13qsutKLSR6vj5rcCZLFZxbhzVJxQXimi4+LE9IbZqJzZeSZxDbTNweEVrusRmNg7EcrvDNQPNbICHGoL9EB71IizqTuLebqblUlMLcJ0frTDMBS/9BoYVCisayme1VuJ7Pc3GvktcqTra6i2lQg80hFbsZg310KYA X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 40d5ed39-5fc1-41a5-9962-08d963cdb7a5 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4128.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Aug 2021 11:29:05.3320 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: NLtXI9AVIurWU/rLBqxey6Xw7FGA9lFik9Wh26bCpmhPPKBNMzbh6nyJJUkDJ4BrmtvkcTc/xn/SmYYMkOkPoA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR10MB4094 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10081 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 adultscore=0 mlxscore=0 malwarescore=0 mlxlogscore=999 spamscore=0 bulkscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108200061 X-Proofpoint-ORIG-GUID: G0V_iIDlgarOo3OmEmlkjbMm-0EaMbxQ X-Proofpoint-GUID: G0V_iIDlgarOo3OmEmlkjbMm-0EaMbxQ Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org latest_dev is updated according to the changes to the device list. That means we could use the latest_dev->name to show the device name in /proc/self/mounts. So this patch makes that change. Signed-off-by: Anand Jain --- RFC because, With this patch, /proc/self/mounts might not show the lowest devid device as we did before. We show the device that has the greatest generation and, we used it to build the tree. Are we ok with this change and, it won't affect the ABI? IMO it should be ok. v2 use latest_dev so that device path is also shown v3 add missing rcu_lock in show_devname fs/btrfs/super.c | 24 +++--------------------- 1 file changed, 3 insertions(+), 21 deletions(-) diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index 64ecbdb50c1a..61682a143bf3 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c @@ -2464,30 +2464,12 @@ static int btrfs_unfreeze(struct super_block *sb) static int btrfs_show_devname(struct seq_file *m, struct dentry *root) { struct btrfs_fs_info *fs_info = btrfs_sb(root->d_sb); - struct btrfs_device *dev, *first_dev = NULL; - /* - * Lightweight locking of the devices. We should not need - * device_list_mutex here as we only read the device data and the list - * is protected by RCU. Even if a device is deleted during the list - * traversals, we'll get valid data, the freeing callback will wait at - * least until the rcu_read_unlock. - */ rcu_read_lock(); - list_for_each_entry_rcu(dev, &fs_info->fs_devices->devices, dev_list) { - if (test_bit(BTRFS_DEV_STATE_MISSING, &dev->dev_state)) - continue; - if (!dev->name) - continue; - if (!first_dev || dev->devid < first_dev->devid) - first_dev = dev; - } - - if (first_dev) - seq_escape(m, rcu_str_deref(first_dev->name), " \t\n\\"); - else - WARN_ON(1); + seq_escape(m, rcu_str_deref(fs_info->fs_devices->latest_dev->name), + " \t\n\\"); rcu_read_unlock(); + return 0; } From patchwork Fri Aug 20 11:28:42 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anand Jain X-Patchwork-Id: 12449101 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 20DEBC4338F for ; Fri, 20 Aug 2021 11:29:20 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E9A8B61040 for ; Fri, 20 Aug 2021 11:29:19 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239257AbhHTL3z (ORCPT ); Fri, 20 Aug 2021 07:29:55 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]:46972 "EHLO mx0a-00069f02.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239377AbhHTL3x (ORCPT ); Fri, 20 Aug 2021 07:29:53 -0400 Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 17KBGbfa022494; Fri, 20 Aug 2021 11:29:10 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=HrP3Z9Vk0zXeU8k9D0BJJqhO08gP4OyGDqPpqPXJQNk=; b=TnQIshvwi4n55Hx+5ZqLeRpb62MaYJAs2rRYnfEtRn+LXOkPVETiW6wVH1wMcH0VWdEU jOBCOWQiIQZvu7bRAbV+vE/ReO6WLCCMKvTCaQD7VBu7RkrvdEN9nAH9WJw5NMtKVuIf pFxcU91nkozjwdGXu4KrvKnopVHgt2OmmUTeZAdlL8MZdyd0+3CkRN7CQ0hhhgJZwbqO tiWWGfXBtngqgWS8p2d4YSgl/tB0ozXGqBrwYiiqAlG40CMEOX23nFaNhp/rITW7yXcn GPEJ+vu1ze31PpSX4O/z1F1A06+ptj1ougnCuEi2jqrAxhN63n/8v0A5Chgk0zzK+Is1 7w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2020-01-29; bh=HrP3Z9Vk0zXeU8k9D0BJJqhO08gP4OyGDqPpqPXJQNk=; b=h2NNrZYk+Gjq3PtO6TtqeH1mfHfGz675sdasJZpfhw2WIJ0q8vFTza/AtQJdMixqTJIH OWjpU8w2X2pG4bOPMMR0PTEfq1y5VXBcnoWLXjxbWw2ffzVj9+rfs+xXjwsIDAR/G+vq +VqJTJNOnVBtjeiP0cdwiTMMfMvgbl/cZEqx/DYH1yDtozuWLkFkcEyUwuxVDtOqxw5n d/Vs00j0Zzag+FRTiKThoUmJyhPh0Yu7p+Nx54X2+wMWG/u9WK0TCDkRasORIzlMgrk2 jotCT3XpUmmWjOzo+Mo8xzJKi3g+kUjXvcAnmDBrpmfTJa6Zq2O3VjwjCdpok9PPWxQM IQ== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by mx0b-00069f02.pphosted.com with ESMTP id 3agu24pajb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:10 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 17KBF6QY008066; Fri, 20 Aug 2021 11:29:09 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2177.outbound.protection.outlook.com [104.47.58.177]) by aserp3030.oracle.com with ESMTP id 3ae3vncmew-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 20 Aug 2021 11:29:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q8dUeBe+gjferFv/T1v2bKijV+kJl+iuLohCRWrXLoF/7Xu7UxJezVQA1iIgRJ+I2bihU22GJV+tjwNhV2O7QqUjlzO5RHgad8UPAVbgODOjdUBZ7jAjKlypZYXwppL4JOr9Wv8ECtLCfdVeoqUWnLMuOZdke2VvFP0WvU2ZbsJhCm0BX4+AMRp/C7uTjWUV0IAAkdC+OkYVjS0yMJW15lWxfOcLgbrakSnqBQJq2OyJQ48A5nqqbLbuk7TuhzDA565LSsxY+FnqnC9iCl15oiZABzgkb3/km7OKPCtdQ0dpj+WwxHkHqu/cgFwP9Eh+lrSxGjMyrEvZWuRj8erdcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HrP3Z9Vk0zXeU8k9D0BJJqhO08gP4OyGDqPpqPXJQNk=; b=MHXDTwJs1qL57+K2K9Qo+fkfCwK0jI8gaNd7jiqRCIGv95HcwdQJe4BFtZPTv9eOzCc3mdsTU5fjZAWuEv+HInLJrNQVriT3Bi7blL1618OvY/WzfAB7gscTqOlRfr1f49AHzbqbuvLOJjlQwaRZ21LRWGpCOlEpwiCDmJ9dhPqceHkZL17uEMvnmLG4k3yXrFDQAV1sKvAeXE1w3dWkgBrLMSpGv5ypEMZRuwUb8VRHSFR08fl79TDSiPoD45fXqBU0E0PxiaRXJSyQ/m0+tKITChCTQ5H41ZXEIsv3wN5zUMtRghzWW4jP+X1E6A/D978+9B48mxeq5ZK654AuxQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HrP3Z9Vk0zXeU8k9D0BJJqhO08gP4OyGDqPpqPXJQNk=; b=w+XFAU1lQplL0C6FTPZkrb0JGR6rkrWBeTAhRVzJXV119cUETPbHkKJ0nAJTMSQapfrVPa68ynlxS+WnZjvwe2q9mgnQgI/X/4dBqrW+Vnrga02PP1smFisO+bK5qRJvma69tgPvD5wrLOKlQRBoEvKRwoWeL4g9qmIW3Wn2FPw= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=oracle.com; Received: from MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) by MN2PR10MB4094.namprd10.prod.outlook.com (2603:10b6:208:11e::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.19; Fri, 20 Aug 2021 11:29:07 +0000 Received: from MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a]) by MN2PR10MB4128.namprd10.prod.outlook.com ([fe80::b813:4805:31e:d36a%5]) with mapi id 15.20.4415.023; Fri, 20 Aug 2021 11:29:07 +0000 From: Anand Jain To: linux-btrfs@vger.kernel.org Cc: dsterba@suse.com, l@damenly.su Subject: [PATCH v3 4/4] btrfs: update latest_dev when we sprout Date: Fri, 20 Aug 2021 19:28:42 +0800 Message-Id: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: X-ClientProxiedBy: SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) To MN2PR10MB4128.namprd10.prod.outlook.com (2603:10b6:208:1d2::24) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (39.109.186.25) by SG2PR02CA0016.apcprd02.prod.outlook.com (2603:1096:3:17::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.19 via Frontend Transport; Fri, 20 Aug 2021 11:29:05 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d61df031-70d6-4a1c-a9d0-08d963cdb8b7 X-MS-TrafficTypeDiagnostic: MN2PR10MB4094: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:2043; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4Ctikn8OaJmHu98AcSCkIIGiChYeGshl1OjRwtbqvJal6V6Ay2L5JzMT6VB92bW/UhaA2K+HNcZVxyJQXHntbTFjDeh7ykaNqsIvB3VJoMsNUfgv/7H8vmACoY/rqF9XPUoU0fdpH6PVC1GFhs4ncXwCnmB969qSTZ3Q+2PpAFCbM+pQXwKvBtVGIQwEDuGFlSlaGA4YgWGI1TdhhTCrTBtwReTXv7R2h79zOBO3dDGoA7hifCjcNziVjCGCEcigB1oNn6h3+SEB9W2wpf6ACw9SIPGlNrLwazCoAxlrPg/zfziT2OZakVtcb4AIZmKaC4QlS1QldpnHRqJ8C5Z5r6kGIV4b6MKw7iXuSRCRo03zYC4bY7n6atPbIqW3IKfIvS9RjsxCH+OU6x+isD3g6Qup3465WWZAceHDNx0KvWFO00+LdZfnBJY9G33z77Z/Xs7GxL7t19WhfNJo2eApJMsmentnyjvBdezgg6gmpR/IMUsm/SHCB1FqmA4Pt7jrk7u0xx5U56xRoXm9T3KP/mRGrNvr54Sgz+Gwi+flcFCS0kOoQc/obb0GjJyDeLqSFm9ET3gPGLLQGS9eP6yG7yMOLTuK017PALYgJ+yk8mCJQgZAiWXxPnV6ntg4jdReIkcxdp8YblEculDLdNxYoaMEVhqPRwKbvXRF3fiiZ5ZXk+hJ7ZZ+AlZS06uXtz7fPxzf8uqrBfahwvpySJTA+w== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR10MB4128.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(39860400002)(346002)(396003)(136003)(366004)(376002)(5660300002)(956004)(44832011)(8676002)(8936002)(2616005)(478600001)(83380400001)(6916009)(6506007)(6486002)(4326008)(316002)(2906002)(38100700002)(38350700002)(52116002)(36756003)(6512007)(86362001)(66476007)(66556008)(186003)(15650500001)(66946007)(6666004)(26005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Bg3SbEYxTZjYIY7SsGAqvKLJuKhGaD/OOTmSPxW/LdHoIaL0resCumPnO5aHx0CKYOjzb3gZWYFD58a0J7qV7BJ363jQAUr0vdPR3etkZVcDWU8MvRCldOaJAj+/7o4DboCmvAS6vtOnTjo/l1xBXML4/pt7tjsCRErBTQ5kBuzzo+ig/9T9lHi6fdmM5/U8qXGwl5Rc1ssQcDkufoM32dDcCZFoPWDqy6/Zv8GM1cLsehq1Exm2+JL3TlBi1vOqn87sBm64W/fYy+BklkQ1N6usKGrErFmBeJu3cUgalSib6b6ejTlI9AU6IsRuniXylmk3W0Qc8/nzClD4P4y0+FoAsYJTLkMbTja7S1WQdhuNTkLUt1HA+DGr3TIzUjvdjLFysKLnYRFKsSmDAECoB3y+CAW3YLvuKasrMwKHc/7KCTxel+5Fhk9GdoSLfpdUS1YJL9dZZOah+eQzUCZmSpbuypi3YSF4TVshzfVueOU5EzqMz27F27eUJxQaRI7A9iNp/ySWsaLvueMo9itCJgWOQBxv+UPn/3cTnlIVau2ns3utMtYK1YVUMe2hKsJ/sCQY70Ee4GPnmJwmM8uH+LoRI7yuP086U+xGNTG25Q9BeYiT2j+aQZBJQ4sUr96nq1M5f2UGVRru7uzzcFMDBbpPPGy/ZloewOxG2EN7EkIVFIY2vp8btDa687X0bw3yd4NyKboKe6uNUTfLPrknSkxylE1UqfmaviEG8mKtBFpJCZB8j+rj/KZFoWVYPMilmaoknd3V6dG+Pxk1GJcpO6hsjhuJAc3EFT1457uTfEkLhLP/dY++9b/VOAnKHxJXmI9BkKUw5dVley60B984sQbiBqMba/ZHJFXAcAabb25rU2+6gL0j0Np8+hHNkjLXjsP3rU7Tg5+smT5strQGCo8QMMtYZiaVzeMdc4TUTXvGsWIUdnpMloRo1JjhJQRArMo6Uybt2TU4IwUlIdonBIfMa7CZ/E1NskFZ0KsHmAuuSz4sLIiS+rQx9oM7EEi6u4djNj/3gilQHzy+acVId4A1NTpGkYpou7hDPtiNu4Mtrh/kC1edNZhfxlNAgzAFPZdxuC5G90WR6cjLkWJ/Snv0s93Cgi16SoiLSiSa4eEu5+Fp0BnKsCMhpt5nuDlHwhp6l0Sa8psAztkwWtgblRNpbLCcQsLyMLk+3CEqOqE6ZN3GgazeYIu80l/2hmiAU3dvGcEiE2t6nMjEsvtfdZyy6KwDX0HghwuwwAt2pcm3CrdPLZ/fYNUXgmtNAorJmKgWfYy6JNdKHwI/m+q7/kl8DfvVHOiArzLjjcomziSgWfVJzdRoKhCFqC3n3dfd X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: d61df031-70d6-4a1c-a9d0-08d963cdb8b7 X-MS-Exchange-CrossTenant-AuthSource: MN2PR10MB4128.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Aug 2021 11:29:07.1431 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lrOJZLsODNQTLu3L+l3dvW+kpOSqLWCK5LX2cv6K9LFq6tsWwbi/tIofpenCQuX7Gb+FHkLpvAsEhMUaMCxrKg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR10MB4094 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10081 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 adultscore=0 mlxscore=0 malwarescore=0 mlxlogscore=999 spamscore=0 bulkscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108200061 X-Proofpoint-GUID: i4IphdnLjdVgjW4FxWu9wssUEC7LQ22u X-Proofpoint-ORIG-GUID: i4IphdnLjdVgjW4FxWu9wssUEC7LQ22u Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org When we add a device to the seed filesystem (sprouting) it is a new filesystem (and fsid) on the device added. Update the latest_device so that /proc/self/mounts shows the correct device. For example: $ btrfstune -S1 /dev/vg/scratch1 $ mount /dev/vg/scratch1 /btrfs mount: /btrfs: WARNING: device write-protected, mounted read-only. $ cat /proc/self/mounts | grep btrfs /dev/mapper/vg-scratch1 /btrfs btrfs ro,relatime,space_cache,subvolid=5,subvol=/ 0 0 $ btrfs dev add -f /dev/vg/scratch0 /btrfs Before: $ cat /proc/self/mounts | grep btrfs /dev/mapper/vg-scratch1 /btrfs btrfs ro,relatime,space_cache,subvolid=5,subvol=/ 0 0 After: $ cat /proc/self/mounts | grep btrfs /dev/mapper/vg-scratch0 /btrfs btrfs ro,relatime,space_cache,subvolid=5,subvol=/ 0 0 Signed-off-by: Anand Jain --- v2: born v3: - fs/btrfs/volumes.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index 958503c8a854..1d1204547e72 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -2597,6 +2597,8 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path btrfs_abort_transaction(trans, ret); goto error_trans; } + btrfs_assign_next_active_device(fs_info->fs_devices->latest_dev, + device); } device->fs_devices = fs_devices;