Re: [PATCH 05/36] platform/x86: intel-uncore-freq: move to use bus_get_dev_root()

From: srinivas pandruvada
Date: Mon Mar 13 2023 - 15:16:00 EST


On Mon, 2023-03-13 at 19:28 +0100, Greg Kroah-Hartman wrote:
> Direct access to the struct bus_type dev_root pointer is going away
> soon
> so replace that with a call to bus_get_dev_root() instead, which is
> what
> it is there for.
>
> Cc: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx>
> Cc: Hans de Goede <hdegoede@xxxxxxxxxx>
> Cc: Mark Gross <markgross@xxxxxxxxxx>
> Cc: platform-driver-x86@xxxxxxxxxxxxxxx
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx>

> ---
> Note, this is a patch that is a prepatory cleanup as part of a larger
> series of patches that is working on resolving some old driver core
> design mistakes.  It will build and apply cleanly on top of 6.3-rc2
> on
> its own, but I'd prefer if I could take it through my driver-core
> tree
> so that the driver core changes can be taken through there for 6.4-
> rc1.
>
>  .../intel/uncore-frequency/uncore-frequency-common.c | 12 +++++++++-
> --
>  1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/platform/x86/intel/uncore-frequency/uncore-
> frequency-common.c b/drivers/platform/x86/intel/uncore-
> frequency/uncore-frequency-common.c
> index cb24de9e97dc..1a300e14f350 100644
> --- a/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-
> common.c
> +++ b/drivers/platform/x86/intel/uncore-frequency/uncore-frequency-
> common.c
> @@ -224,9 +224,15 @@ int uncore_freq_common_init(int
> (*read_control_freq)(struct uncore_data *data, u
>         uncore_write = write_control_freq;
>         uncore_read_freq = read_freq;
>  
> -       if (!uncore_root_kobj)
> -               uncore_root_kobj =
> kobject_create_and_add("intel_uncore_frequency",
> -                                                          
> &cpu_subsys.dev_root->kobj);
> +       if (!uncore_root_kobj) {
> +               struct device *dev_root =
> bus_get_dev_root(&cpu_subsys);
> +
> +               if (dev_root) {
> +                       uncore_root_kobj =
> kobject_create_and_add("intel_uncore_frequency",
> +                                                                
> &dev_root->kobj);
> +                       put_device(dev_root);
> +               }
> +       }
>         if (uncore_root_kobj)
>                 ++uncore_instance_count;
>         mutex_unlock(&uncore_lock);