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 2B3D1D16268 for ; Mon, 14 Oct 2024 14:26:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B7E056B0085; Mon, 14 Oct 2024 10:26:33 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B2E206B0088; Mon, 14 Oct 2024 10:26:33 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9F5BB6B0089; Mon, 14 Oct 2024 10:26:33 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 817AD6B0085 for ; Mon, 14 Oct 2024 10:26:33 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C259CAB003 for ; Mon, 14 Oct 2024 14:26:17 +0000 (UTC) X-FDA: 82672433172.09.9ADDEB0 Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) by imf23.hostedemail.com (Postfix) with ESMTP id 409EB14000A for ; Mon, 14 Oct 2024 14:26:27 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf23.hostedemail.com: domain of jonathan.cameron@huawei.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=jonathan.cameron@huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1728915850; 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; bh=+A4cl0QjR4HIPCb30iGuLBi1tOhbP3QapyiHYt4ACqk=; b=qTypetIrSLltlBEZ0CB32LHFpzZmzAeY/3WffQOxiiNkv9Bk/EYZangyV10aw/pyaRoZ3y cU44XvU6V21/JvnDLRfAvCFZ8SErjf+U0NxUOu/tZLFdcVimR+Qn8PDz+8HDwcc+63Ke2I RCPMh5pg083Wnzkov+hBjeFuCCuM1Lk= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1728915850; a=rsa-sha256; cv=none; b=sOAyFRdeDd9XDGeLcfC/5OBGqBMXK2R/7xHVc6TOFUqnCg/gpVDCW7eL+CW/ptdhJ/PFpR eTxSqD8EtfSIFtyu36riy0uThaR901IuIAB31+4gbrPYww5iLgySP+GHWboo6/oXWU4FPz JVHgC2HOJ6ZOkA/cUXmot4lGgfGYHaA= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf23.hostedemail.com: domain of jonathan.cameron@huawei.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=jonathan.cameron@huawei.com Received: from mail.maildlp.com (unknown [172.18.186.231]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4XRzvF2rzKz6L75K; Mon, 14 Oct 2024 22:22:01 +0800 (CST) Received: from frapeml500008.china.huawei.com (unknown [7.182.85.71]) by mail.maildlp.com (Postfix) with ESMTPS id 9E6521400CA; Mon, 14 Oct 2024 22:26:28 +0800 (CST) Received: from localhost (10.203.177.66) by frapeml500008.china.huawei.com (7.182.85.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Mon, 14 Oct 2024 16:26:27 +0200 Date: Mon, 14 Oct 2024 15:26:25 +0100 From: Jonathan Cameron To: CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: Re: [PATCH v13 02/18] EDAC: Add scrub control feature Message-ID: <20241014152625.00003c62@Huawei.com> In-Reply-To: <20241009124120.1124-3-shiju.jose@huawei.com> References: <20241009124120.1124-1-shiju.jose@huawei.com> <20241009124120.1124-3-shiju.jose@huawei.com> Organization: Huawei Technologies Research and Development (UK) Ltd. X-Mailer: Claws Mail 4.1.0 (GTK 3.24.33; x86_64-w64-mingw32) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.203.177.66] X-ClientProxiedBy: lhrpeml100002.china.huawei.com (7.191.160.241) To frapeml500008.china.huawei.com (7.182.85.71) X-Rspamd-Queue-Id: 409EB14000A X-Stat-Signature: zr136za63awfsuswm1j7jh9ff1yet88j X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1728915987-602963 X-HE-Meta: U2FsdGVkX18opt2lWpQ3LgxZfWN6mMIDFOrYDLeeOek6cBJR50bMtq5CWTmNYwkKM9W18DHHqt/1r+ykycmEWy3h6NQcCnIWwH2sdXag3yt9jf6r4JvYUP3iY2H79zCEO3FC4twu5G15GExi3rj/caS/vLqhHAwNEgSwNzrshsRNQDd3FfYTgGNicA+bpp5AOOoWlEqHhMEIvsOM45IImmf5fAAiEECOkUpOwO7thRjBE/iR+0hV8Mn5MfyVRyqOI/NO+XbXT0CmIlmHwurMT2MeyGRhfw3D2VPGdToDhqmupcYLnHL08q6aQOH6dwHaFln+EtfQShXLGwWarMW2ONdgwCm3ECa6JuA8livdsPziwlsvCO3GC/cUjASzW7D0SpvLpzuuYN0kZRefJdH+d/senGxgHAhb7U0D9K9qiLF2TAHZRt4yCIYvaj96zRQAqmzFVCBsrm+zS2Shusfm21BjHDQvVcxtLesL3lcCeIf8EDldNo9g8GCaJ72iha3UWiEJh19OndUllBjzw87rg4MXMyO9ulF7lzCQf8sTxXDB77hIxSGfAF/Xo3ccB5wnseurNb3rKNuQ0MPoI2eDZI07dHJuUEPhGl8GqDdXYbJV2nF/DoUnPYk+oBKCHO4fuqIbxQRFA8QuR/oU75YwDtVk+gITLWUhuhZHoXV1NmVrzbybuxG1io2omWZQ3uHRAtA3C3HRLjpeu6BkPsDgxEOAmMwzGAhmtyh+1qVLijpVz1BZ09AgmXKh51TweMdrq5VS4giVyOt89Btidlv5wJXfBdMlhm7hQgyhGsMBSXkmPdRkILpCbzMVeSsyfRUs5aFJCPb/LJUNmY4RAh65mfat3kQyYgGu561IlzCp0wqTA5eq+KP9vTpvYLD8bPYB4Fu3fpQGA4Afq7hUXXV+u22imfDdmI1hU836ThaSK/aKQxrfGnvm0mOyT55f148QySMv0f0ImGPtqvn1KUc Vk3z7JA3 VjC7QKJ5q4yDyEezSMFnqTnkmZask0mKoJZid5b6wihwpE9lRqbr+aMPuC7rgXVxzmN+WVZUOrdWL41Bcz0zj7T8mKWxzP1WJRsQY/31Exwd2xVe8ag68Qd36fDtwJdXbdL5xV3VvPjkOTQAApqqCO+isbYWYTZR2woYDCpG1HvxvL+k1W45HvVkjxMHhlebQl6cMEtox1fpn4P9RBh6HeDUpSoUshtf9720F2KGxuok5FKuHuK+/eA1vHZIus1La1pXr7CKpGy/N64XlCZY6M2R/uiAwk9IUtG1ZzcNaQfnhm+cnVHIQoniuwjM6LhIEprnjjwGsByfbEsI= 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 Wed, 9 Oct 2024 13:41:03 +0100 wrote: > From: Shiju Jose > > Add generic EDAC scrub control in order to control the memory scrubbers > in the system. The device with scrub feature registers with EDAC device > driver, which retrieves the scrub descriptor from EDAC scrub driver and > expose the sysfs scrub control attributes for a scrub instance to userspace > in /sys/bus/edac/devices//scrubX/. > > The common sysfs scrub control interface abstracts the control of an > arbitrary scrubbing functionality to a common set of functions. > The sysfs scrub attribute nodes would be present only if the client driver > has implemented the corresponding attribute callback function and passed > in ops to the EDAC device driver during registration. > > Co-developed-by: Jonathan Cameron > Signed-off-by: Jonathan Cameron > Signed-off-by: Shiju Jose One follow on comment. Otherwise LGTM and the new macros definitely help on reducing code. (I'm not normally fan of macros at the function level, but here I'm convinced) > > @@ -657,17 +686,19 @@ int edac_dev_register(struct device *parent, char *name, > > ret = dev_set_name(&ctx->dev, name); > if (ret) > - goto groups_free; > + goto data_mem_free; > > ret = device_register(&ctx->dev); > if (ret) { > put_device(&ctx->dev); > - goto groups_free; > + goto data_mem_free; As in previous patch I think this goto is incorrect and should be dropped. > return ret; > } > > return devm_add_action_or_reset(parent, edac_dev_unreg, &ctx->dev); > > +data_mem_free: > + kfree(ctx->scrub); > groups_free: > kfree(ras_attr_groups); > ctx_free: