{"id":2197475,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2197475/?format=json","project":{"id":9,"url":"http://patchwork.ozlabs.org/api/1.0/projects/9/?format=json","name":"Linux RTC development","link_name":"rtc-linux","list_id":"linux-rtc.vger.kernel.org","list_email":"linux-rtc@vger.kernel.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<fc5a4706-c40e-48f4-b0e3-f4bc6970b179@kernel.org>","date":"2026-02-17T22:28:07","name":"[RFC,04/10] driver: core: constify groups array argument in device_add_groups and device_remove_groups","commit_ref":null,"pull_url":null,"state":"handled-elsewhere","archived":false,"hash":"c3e354a5eeb268de167458b3785db372e4b5c22e","submitter":{"id":88130,"url":"http://patchwork.ozlabs.org/api/1.0/people/88130/?format=json","name":"Heiner Kallweit","email":"hkall@kernel.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/rtc-linux/patch/fc5a4706-c40e-48f4-b0e3-f4bc6970b179@kernel.org/mbox/","series":[{"id":492492,"url":"http://patchwork.ozlabs.org/api/1.0/series/492492/?format=json","date":"2026-02-17T22:24:26","name":"driver core: constify groups arrays in several structs","version":1,"mbox":"http://patchwork.ozlabs.org/series/492492/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2197475/checks/","tags":{},"headers":{"Return-Path":"\n <linux-rtc+bounces-5972-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-rtc@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=hx7HbXMt;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-rtc+bounces-5972-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"hx7HbXMt\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201"],"Received":["from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fFvS91mq0z1xpl\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 18 Feb 2026 09:28:41 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id CDB2F301CCDE\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 17 Feb 2026 22:28:12 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id EFA12318ED7;\n\tTue, 17 Feb 2026 22:28:11 +0000 (UTC)","from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id CA0C9318B95;\n\tTue, 17 Feb 2026 22:28:11 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPSA id E6407C4CEF7;\n\tTue, 17 Feb 2026 22:28:08 +0000 (UTC)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1771367291; cv=none;\n b=cWH6rsE4giqLwALRnoZ5KAH8obrq4Jsv1FijAIHh9vfh2t6Am7SVsz5cXic5VkqDJD0/G0tdx5RG7aIUtNEkZSGhyxV4qgcOkIMYpQwAjoYBcflAFrRFL3IfV3EdLsWt5DOs9bkeYObDq1L/MQXNjsD2ySKwjUKrBvknZICuUvE=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1771367291; c=relaxed/simple;\n\tbh=4ZZzJoUypvXc3Bo+CoJlQaH09sZK2TEHfYssmcfGRMI=;\n\th=Message-ID:Date:MIME-Version:Subject:From:To:Cc:References:\n\t In-Reply-To:Content-Type;\n b=Vj25RHAoARQhGPtqyySQuKe5FnI15N1riZPDs1za6qyE9vTnWj+SizIXMHWcGMesoh9QXeMX0mDLTQp9zgckWYGFsygC82iwzMnqAfW/Nncjz6mxJL0IGVj3lot3qgfUvgvN8Em8CrSKjkkDGXCwtc+tLfor+AJjMIiVo5RWrOw=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=hx7HbXMt; arc=none smtp.client-ip=10.30.226.201","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1771367291;\n\tbh=4ZZzJoUypvXc3Bo+CoJlQaH09sZK2TEHfYssmcfGRMI=;\n\th=Date:Subject:From:To:Cc:References:In-Reply-To:From;\n\tb=hx7HbXMtLkovS+AS5uZw9BKiRdnXtksG900F1H4AKrRdPhUtVrMk3YeSHGyy55Kff\n\t EYjJ7Wa8cjJ65wjH8A3yi68kM3hVmKaMbUCXELghbTrNZaSQB8oZcTrIL2GF9DE8fm\n\t IgGKddR8CF56khB8GQ9a0g8UsKJuTxsKvHhtYt23IHpemNLkOMBplPtBWiwwIiSp1U\n\t 1oA+Z9O6Ma4MpbBk2h0OfjdIZOmxVqjbruMI2+Z5JOnLlIfhNicYnt5Tkg650iuCFo\n\t auR9lcVnC6NR3YNEUoEchGohW8kp/aS7HQGw1RgLXinLl1eq079N/k9Uc9BhZcJQEq\n\t X6QKANzYZjApw==","Message-ID":"<fc5a4706-c40e-48f4-b0e3-f4bc6970b179@kernel.org>","Date":"Tue, 17 Feb 2026 23:28:07 +0100","Precedence":"bulk","X-Mailing-List":"linux-rtc@vger.kernel.org","List-Id":"<linux-rtc.vger.kernel.org>","List-Subscribe":"<mailto:linux-rtc+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-rtc+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"[PATCH RFC 04/10] driver: core: constify groups array argument in\n device_add_groups and device_remove_groups","From":"Heiner Kallweit <hkall@kernel.org>","To":"=?utf-8?q?Thomas_Wei=C3=9Fschuh?= <linux@weissschuh.net>,\n Greg Kroah-Hartman <gregkh@linuxfoundation.org>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>, Danilo Krummrich <dakr@kernel.org>,\n Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>,\n Alexandre Belloni <alexandre.belloni@bootlin.com>","Cc":"driver-core@lists.linux.dev,\n Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,\n linux-rdma@vger.kernel.org, linux-rtc@vger.kernel.org","References":"<5d0951ec-42c9-453f-9966-ecca593c4153@kernel.org>","Content-Language":"en-US","In-Reply-To":"<5d0951ec-42c9-453f-9966-ecca593c4153@kernel.org>","Content-Type":"text/plain; charset=UTF-8","Content-Transfer-Encoding":"7bit"},"content":"Now that sysfs_create_groups() and sysfs_remove_groups() allow to\npass constant groups arrays, we can constify the groups array argument\nalso here.\n\nSigned-off-by: Heiner Kallweit <hkallweit1@gmail.com>\n---\n drivers/base/core.c    | 5 +++--\n include/linux/device.h | 4 ++--\n 2 files changed, 5 insertions(+), 4 deletions(-)","diff":"diff --git a/drivers/base/core.c b/drivers/base/core.c\nindex f599a1384ee..4db63b2603c 100644\n--- a/drivers/base/core.c\n+++ b/drivers/base/core.c\n@@ -2831,14 +2831,15 @@ static ssize_t removable_show(struct device *dev, struct device_attribute *attr,\n }\n static DEVICE_ATTR_RO(removable);\n \n-int device_add_groups(struct device *dev, const struct attribute_group **groups)\n+int device_add_groups(struct device *dev,\n+\t\t      const struct attribute_group *const *groups)\n {\n \treturn sysfs_create_groups(&dev->kobj, groups);\n }\n EXPORT_SYMBOL_GPL(device_add_groups);\n \n void device_remove_groups(struct device *dev,\n-\t\t\t  const struct attribute_group **groups)\n+\t\t\t  const struct attribute_group *const *groups)\n {\n \tsysfs_remove_groups(&dev->kobj, groups);\n }\ndiff --git a/include/linux/device.h b/include/linux/device.h\nindex 0be95294b6e..48a0444ccc1 100644\n--- a/include/linux/device.h\n+++ b/include/linux/device.h\n@@ -1131,9 +1131,9 @@ device_create_with_groups(const struct class *cls, struct device *parent, dev_t\n void device_destroy(const struct class *cls, dev_t devt);\n \n int __must_check device_add_groups(struct device *dev,\n-\t\t\t\t   const struct attribute_group **groups);\n+\t\t\t\t   const struct attribute_group *const *groups);\n void device_remove_groups(struct device *dev,\n-\t\t\t  const struct attribute_group **groups);\n+\t\t\t  const struct attribute_group *const *groups);\n \n static inline int __must_check device_add_group(struct device *dev,\n \t\t\t\t\tconst struct attribute_group *grp)\n","prefixes":["RFC","04/10"]}