From nobody Mon Feb 9 15:59:23 2026 Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AD0FF8F6D for ; Thu, 19 Dec 2024 21:48:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734644903; cv=none; b=o6QIqfDglKXoppD4OiRStTACaiJkGcgvM0LTzghv4bYOYeY+DMW7itwsPnWiL24OCIACShNoC7iMH+fI5dCO4oYN9vmAhb2VSclRvrp0xljgh1x2kIUDk6Ow7n/C5dDd+KmUY/dlfhNV03j5XhCSDQBahZwAyYBat4MXbtEb2Cc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734644903; c=relaxed/simple; bh=wAF5NmaxRrjoSUauyp0ew7mApPkWY7vufRZkk1lMS/A=; h=Message-ID:Date:MIME-Version:To:Cc:From:Subject:Content-Type; b=Hz/xHMIvmjex61QH8JEoW9n6qmGfEKOurDFKZU0Fp0MpV8nYhE5LrmXidvSnpLlHVW5iS4fW3+U65Ncif7HnIqlCMbjoPMa3oYIwt+qhyqVhcu1I6Dvvr5tHT1p9bk0z7hDhk26CKcFu21vNWcmHHptkQBGkzsCV/4Pj892MCsw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=QQ09GmfX; arc=none smtp.client-ip=209.85.218.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="QQ09GmfX" Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-aa696d3901bso220048666b.1 for ; Thu, 19 Dec 2024 13:48:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1734644900; x=1735249700; darn=vger.kernel.org; h=content-transfer-encoding:autocrypt:subject:from:cc:to :content-language:user-agent:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=z8HfVEWwgBGBTSBJjEv/vnaaWsMmcIAFS0U7p12rv4U=; b=QQ09GmfX2zxSVtS9lJGYww0Kl4SDeHn+y6EshIaBurNJ4SSFDDfhv3+QdnGgWDzSuh 6+sVOW3S+TyL16gOIMJ+sajmOqMU0rWFORxvYiI3UBsISlQT5eLD6VP5G3dlAA9RJ7i3 9DB6NFk8kYRO+Pw2lc72wuPHiDRT/m+NcFdU2QjdlZZ9DQ9UtXZ970u4c4CWQGVc2fWT cyNWqMxic5Czj591TeqXLIrXTSDG4i0mdyovrLdNTIDk21VQva+Kj+3WlaJFVYo8fjGA uS79fKDJfUWNEtceOQyuB57CsnXN8ErI0lpYE/wqzxGlKRoFlemRqXfC8IfFap9ZY+Ea a0xQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734644900; x=1735249700; h=content-transfer-encoding:autocrypt:subject:from:cc:to :content-language:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=z8HfVEWwgBGBTSBJjEv/vnaaWsMmcIAFS0U7p12rv4U=; b=op/0YCad6YRQEC3jkzvP+FimWBxMCvmu39xRYp1bYy4ETav6Aj5R07LQnFr2A5F+2s OfqzcA871hiUT1/JFDUbcHejtCSGqJQ8rgwb1wht2bvtCRibcBe0t+/pjGMXks/efttD OJ/2dHaprvrLBTh6Ysz21tYNm89hUQYt+hhMLmdYbYmn36wwV2EIA639MvNX2AgLAIBx ewc462DOWmU7YUyO43n3m1oDDRfk8klu9UZarEdXGPvYVbte3+3I4KgTC7FH8GIRcsvn Rb4EcUDOWULEc2lgDaRxu7HoZyQGYvVSJvCHkaJS4BQmkkBGDj6D1Np0ivCfsvCFWUHB waPA== X-Gm-Message-State: AOJu0YwTPd+eFIG7m8WZlub25P3wzwQuUVDpgZDYNlqMm8vCwTi05A1c 71haAWweuwOAetUunvlzQHq/9hHD5os3BskjK7lyiHJrzIiFnnKq X-Gm-Gg: ASbGncvIVBvOkhdTl7zbcYjqGTxjg+CBpu37Q2mJxOvxDK4dRa6doJ6XkQKi/cLtdP7 fSaNZf0FKg5CyOoCQdYauoHjRkeyVSUjEEHdEJ1Q8i2LSDRCXyubyWAeyj2KtXXl0nkMK/Ecn1+ 5d9KtJkhgz1r0LtXEH3ecc5kgtrt06fv2MQgb0ddu+QdwKYNd9jKxomqk33pbqm/q1dn5Ryg+lJ Yhxq7QSeB8+dIij9SacboJdUh2l2LMx94yfsyNAy2wat65J19IIJdrhOhFMdKPTg873+HHzpVQB XGogphpZSs6+YnH3YE1ii3sz9CbYNvMQYeyKBjAwLyIzq6mBS0UjLWuoSldpaZGJ0dp3o/X5lSV 6uGdpGpOJjlpvbZDPXvsmDb9fB29/gicLZD4EgEJV8iF/H+Bd X-Google-Smtp-Source: AGHT+IEqOHwwcXJwg2TXW2XKfcOoST4k1Ik/84RkoK9uQPqW9crYnX/77+QyrzWFj+uj/EoZor8uwQ== X-Received: by 2002:a17:907:3f98:b0:aa6:ab70:4a7d with SMTP id a640c23a62f3a-aac33690749mr23251866b.58.1734644899676; Thu, 19 Dec 2024 13:48:19 -0800 (PST) Received: from ?IPV6:2a02:3100:addf:be00:cc80:8682:850f:88d2? (dynamic-2a02-3100-addf-be00-cc80-8682-850f-88d2.310.pool.telefonica.de. [2a02:3100:addf:be00:cc80:8682:850f:88d2]) by smtp.googlemail.com with ESMTPSA id a640c23a62f3a-aac0eae4369sm105258066b.87.2024.12.19.13.48.17 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 19 Dec 2024 13:48:18 -0800 (PST) Message-ID: Date: Thu, 19 Dec 2024 22:48:17 +0100 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: Greg Kroah-Hartman , "Rafael J. Wysocki" , Kirti Wankhede , Alex Williamson , Christoph Hellwig Cc: Linux Kernel Mailing List From: Heiner Kallweit Subject: [PATCH] drivers: core: remove device_link argument from class_compat_[create|remove]_link Autocrypt: addr=hkallweit1@gmail.com; keydata= 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 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" After 7e722083fcc3 ("i2c: Remove I2C_COMPAT config symbol and related code") there's no caller left passing a non-null device_link argument. So remove this argument to simplify the code. Signed-off-by: Heiner Kallweit Acked-by: Alex Williamson Tested-by: Alex Williamson --- drivers/base/class.c | 31 +++---------------------------- drivers/vfio/mdev/mdev_core.c | 4 ++-- include/linux/device/class.h | 6 ++---- 3 files changed, 7 insertions(+), 34 deletions(-) diff --git a/drivers/base/class.c b/drivers/base/class.c index 582b5a02a..40805f905 100644 --- a/drivers/base/class.c +++ b/drivers/base/class.c @@ -594,30 +594,10 @@ EXPORT_SYMBOL_GPL(class_compat_unregister); * a bus device * @cls: the compatibility class * @dev: the target bus device - * @device_link: an optional device to which a "device" link should be cre= ated */ -int class_compat_create_link(struct class_compat *cls, struct device *dev, - struct device *device_link) +int class_compat_create_link(struct class_compat *cls, struct device *dev) { - int error; - - error =3D sysfs_create_link(cls->kobj, &dev->kobj, dev_name(dev)); - if (error) - return error; - - /* - * Optionally add a "device" link (typically to the parent), as a - * class device would have one and we want to provide as much - * backwards compatibility as possible. - */ - if (device_link) { - error =3D sysfs_create_link(&dev->kobj, &device_link->kobj, - "device"); - if (error) - sysfs_remove_link(cls->kobj, dev_name(dev)); - } - - return error; + return sysfs_create_link(cls->kobj, &dev->kobj, dev_name(dev)); } EXPORT_SYMBOL_GPL(class_compat_create_link); =20 @@ -626,14 +606,9 @@ EXPORT_SYMBOL_GPL(class_compat_create_link); * a bus device * @cls: the compatibility class * @dev: the target bus device - * @device_link: an optional device to which a "device" link was previously - * created */ -void class_compat_remove_link(struct class_compat *cls, struct device *dev, - struct device *device_link) +void class_compat_remove_link(struct class_compat *cls, struct device *dev) { - if (device_link) - sysfs_remove_link(&dev->kobj, "device"); sysfs_remove_link(cls->kobj, dev_name(dev)); } EXPORT_SYMBOL_GPL(class_compat_remove_link); diff --git a/drivers/vfio/mdev/mdev_core.c b/drivers/vfio/mdev/mdev_core.c index ed4737de4..f2e686f8f 100644 --- a/drivers/vfio/mdev/mdev_core.c +++ b/drivers/vfio/mdev/mdev_core.c @@ -76,7 +76,7 @@ int mdev_register_parent(struct mdev_parent *parent, stru= ct device *dev, if (ret) return ret; =20 - ret =3D class_compat_create_link(mdev_bus_compat_class, dev, NULL); + ret =3D class_compat_create_link(mdev_bus_compat_class, dev); if (ret) dev_warn(dev, "Failed to create compatibility class link\n"); =20 @@ -98,7 +98,7 @@ void mdev_unregister_parent(struct mdev_parent *parent) dev_info(parent->dev, "MDEV: Unregistering\n"); =20 down_write(&parent->unreg_sem); - class_compat_remove_link(mdev_bus_compat_class, parent->dev, NULL); + class_compat_remove_link(mdev_bus_compat_class, parent->dev); device_for_each_child(parent->dev, NULL, mdev_device_remove_cb); parent_remove_sysfs_files(parent); up_write(&parent->unreg_sem); diff --git a/include/linux/device/class.h b/include/linux/device/class.h index 518c9c83d..4c1e6cf50 100644 --- a/include/linux/device/class.h +++ b/include/linux/device/class.h @@ -82,10 +82,8 @@ bool class_is_registered(const struct class *class); struct class_compat; struct class_compat *class_compat_register(const char *name); void class_compat_unregister(struct class_compat *cls); -int class_compat_create_link(struct class_compat *cls, struct device *dev, - struct device *device_link); -void class_compat_remove_link(struct class_compat *cls, struct device *dev, - struct device *device_link); +int class_compat_create_link(struct class_compat *cls, struct device *dev); +void class_compat_remove_link(struct class_compat *cls, struct device *dev= ); =20 void class_dev_iter_init(struct class_dev_iter *iter, const struct class *= class, const struct device *start, const struct device_type *type); --=20 2.47.1