Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp2529487rdb; Fri, 8 Dec 2023 10:38:58 -0800 (PST) X-Google-Smtp-Source: AGHT+IE+j25Dk2JTImrBOVibeTzuPezEwFvf4uVkUo4JqJVlPjs2e04nIrm/2QU40ieMLAvvpp+K X-Received: by 2002:a17:90a:1f4b:b0:286:8f94:baf9 with SMTP id y11-20020a17090a1f4b00b002868f94baf9mr433991pjy.22.1702060738518; Fri, 08 Dec 2023 10:38:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702060738; cv=none; d=google.com; s=arc-20160816; b=Wd/hdmeerO9SqosU9UNv65Y581JZ6h/JHpyKbCkgj3wEoQQetBcjVex+kMnNU2ihT+ Z5Y0UmGQLliQxiN21FAnnoOn+0LBmQKDhBrIxLiXdgWOmXVT1zfm+lpnINgX6XeSn4Xs h8k+RkbZVHMjG3Zo+zsUJKe7E5CQV+pFeG1D/lTdwirl4J4OFsXKSC9hPzgG0JWDXBhK VAuhIBxZF3t6h0s3vR7bL1BDqNCjsi/M4HtxxwLa6W/19lY3OCp6R8oxGXwqPtoBDHlt vLlo1nPQ2qCaznIhml3djqWM/b2Q27RPwSoM5+UOF3M7ajbK+yl+fF1/8LN/BVfUinEX Mdgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=8LBTna7NeaKiWhYlyMrlrezl7OX4LuTkIepY3TiCLMc=; fh=nhTSgxRC2G0bXYxlcEWT7zK2zkbTAVRkwNKc+LF8VuE=; b=dTllUohhbiVJPiIBJACBmTG2aPPl5swfA8W3b1IUH/RP+IIZwRu3cidbgx0owXjIG8 G2VfdPQeIY12glICQsqFabEJfAagLjIzDxSZtPFebP7pW1rEKVDGattAjDoQnewdwk2e WkEYtdGwbKsRB5ZMU2YI02jyEvIK75Fg1jqnn+HXPBTiFNpPF93dXIAUoj0IPyhSBOiv 7d/U/mMPqAETQi1E1abERCIagYR585H8259jsYkebI8fbvA5JtsYl0nXaIPmpDvnfVT+ M3ziOMOEuUrFbizZLhd97Wz2x2VFCqYd3P3ugY9SHz3SceihIszHU25QTui2FiRavz47 Kn1Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=Dno+xlIK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id o15-20020a17090a744f00b0028862a781f3si3297001pjk.39.2023.12.08.10.38.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 08 Dec 2023 10:38:58 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=Dno+xlIK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 53676826640E; Fri, 8 Dec 2023 10:38:55 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1574607AbjLHSij (ORCPT + 99 others); Fri, 8 Dec 2023 13:38:39 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45072 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233888AbjLHSih (ORCPT ); Fri, 8 Dec 2023 13:38:37 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DA53011F for ; Fri, 8 Dec 2023 10:38:43 -0800 (PST) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5F238C433CA; Fri, 8 Dec 2023 18:38:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1702060723; bh=p6EUr4XdfGiU15iBvj29ZMkrSJe8sng7h5PI+7HQ6yc=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=Dno+xlIK/De90rnDEItt9BHGdlJGpFMzxWk8QdmisILYxJOBay54wmfO6Hsor9Xlp whb2oR01D0PFJeJ4zXsmytsli1f8Txc6DJjjfnc9/ambZXUy0EbqfmQWZKTlWrnuAt 6Z+3sHG6kOcoS1G5M+unFL/OWHGvXrTngG9i6vh8Oh6OP/OLrt5+4IOUS/lHbdNXw9 I3YcipJTN7x/ubqwPhwhO8kHVHOtvgIW6wNuT6aMgXqQ+CssFYzVkjugF8ReavRGc0 kIx1LrvrZmubl1UBvtbhK+y17EKJ4lGj/sefdCrxHYZ0xIiHGz7eEnsmDZyyV0C5el 7BOJR8p7vGINA== Received: by mail-lj1-f171.google.com with SMTP id 38308e7fff4ca-2c9f413d6b2so29345651fa.1; Fri, 08 Dec 2023 10:38:43 -0800 (PST) X-Gm-Message-State: AOJu0Yy+yPJV1YDjDHwAhqaEaRm4huD0l3/UISCbUC3KcYBa5q/YhXgB HnFwP7ek2DTPuKxRrNPIKosIsTDqULR9SoYQ0vk= X-Received: by 2002:ac2:4e8e:0:b0:50b:ea76:509f with SMTP id o14-20020ac24e8e000000b0050bea76509fmr106822lfr.64.1702060721563; Fri, 08 Dec 2023 10:38:41 -0800 (PST) MIME-Version: 1.0 References: <20231204070327.3150356-1-linan666@huaweicloud.com> <20231204070327.3150356-2-linan666@huaweicloud.com> In-Reply-To: <20231204070327.3150356-2-linan666@huaweicloud.com> From: Song Liu Date: Fri, 8 Dec 2023 10:38:30 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 1/2] md: factor out a helper exceed_read_errors() to check read_errors To: linan666@huaweicloud.com Cc: linux-raid@vger.kernel.org, linux-kernel@vger.kernel.org, linan122@huawei.com, yukuai3@huawei.com, yi.zhang@huawei.com, houtao1@huawei.com, yangerkun@huawei.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.2 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Fri, 08 Dec 2023 10:38:55 -0800 (PST) On Sun, Dec 3, 2023 at 11:04=E2=80=AFPM wrote: > > From: Li Nan > > Move check_decay_read_errors() to raid1-10.c and factor out a helper > exceed_read_errors() to check if read_errors exceeds the limit, so that > raid1 can also use it. There are no functional changes. > > Signed-off-by: Li Nan [...] > +static inline bool exceed_read_errors(struct mddev *mddev, struct md_rde= v *rdev) > +{ > + int max_read_errors =3D atomic_read(&mddev->max_corr_read_errors)= ; > + int read_errors; > + > + check_decay_read_errors(mddev, rdev); > + read_errors =3D atomic_inc_return(&rdev->read_errors); > + if (read_errors > max_read_errors) { > + pr_notice("md:%s: %pg: Raid device exceeded read_error th= reshold [cur %d:max %d]\n", > + mdname(mddev), rdev->bdev, read_errors, max_rea= d_errors); > + pr_notice("md:%s: %pg: Failing raid device\n", > + mdname(mddev), rdev->bdev); This changed the print message from "md/raid10:" to "md:". We should try to avoid such changes. How about we do something like the following? Thanks, Song diff --git i/drivers/md/raid1-10.c w/drivers/md/raid1-10.c index 3f22edec70e7..6c0ef0fe6ba7 100644 --- i/drivers/md/raid1-10.c +++ w/drivers/md/raid1-10.c @@ -173,3 +173,10 @@ static inline void raid1_prepare_flush_writes(struct bitmap *bitmap) else md_bitmap_unplug(bitmap); } + +static inline bool exceed_read_errors(struct mddev *mddev, struct md_rdev *rdev) +{ + pr_notice("md/" RAID_1_10_NAME ":%s: %pg: Raid device ...\n", + ...); + ... +} diff --git i/drivers/md/raid1.c w/drivers/md/raid1.c index 9348f1709512..412e98d02a05 100644 --- i/drivers/md/raid1.c +++ w/drivers/md/raid1.c @@ -49,6 +49,7 @@ static void lower_barrier(struct r1conf *conf, sector_t sector_nr); #define raid1_log(md, fmt, args...) \ do { if ((md)->queue) blk_add_trace_msg((md)->queue, "raid1 " fmt, ##args); } while (0) +#define RAID_1_10_NAME "raid1" #include "raid1-10.c" #define START(node) ((node)->start) diff --git i/drivers/md/raid10.c w/drivers/md/raid10.c index 375c11d6159f..a1531b5f15e3 100644 --- i/drivers/md/raid10.c +++ w/drivers/md/raid10.c @@ -77,6 +77,8 @@ static void end_reshape(struct r10conf *conf); #define raid10_log(md, fmt, args...) \ do { if ((md)->queue) blk_add_trace_msg((md)->queue, "raid10 " fmt, ##args); } while (0) +#define RAID_1_10_NAME "raid10" + #include "raid1-10.c" #define NULL_CMD [...]