On 2023-07-31 22:54, Srinivasan Shanmugam wrote:
> Usage of container_of is wrong here.
> struct acpi_device *adev = container_of(handle, struct acpi_device, handle)
> 
> This reverts commit 35ef33db90303589c76658207347539cf33f5ae3.
> 
> References: https://gitlab.freedesktop.org/drm/amd/-/issues/2744
> Cc: Guchun Chen <guchun.c...@amd.com>
> Cc: Christian König <christian.koe...@amd.com>
> Cc: Alex Deucher <alexander.deuc...@amd.com>
> Cc: Bert Karwatzki <spassw...@web.de>
> Cc: "Pan, Xinhui" <xinhui....@amd.com>
> Cc: Luben Tuikov <luben.tui...@amd.com>
> Signed-off-by: Srinivasan Shanmugam <srinivasan.shanmu...@amd.com>
> Reviewed-by: Guchun Chen <guchun.c...@amd.com>

Reviewed-by: Luben Tuikov <luben.tui...@amd.com>

Regards,
Luben

> ---
> v2:
>  - Added missing commit id. 
> 
> 
>  drivers/gpu/drm/radeon/radeon_atpx_handler.c | 12 ++++--------
>  1 file changed, 4 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/gpu/drm/radeon/radeon_atpx_handler.c 
> b/drivers/gpu/drm/radeon/radeon_atpx_handler.c
> index fb4d931fdf18..595354e3ce0b 100644
> --- a/drivers/gpu/drm/radeon/radeon_atpx_handler.c
> +++ b/drivers/gpu/drm/radeon/radeon_atpx_handler.c
> @@ -94,8 +94,6 @@ static union acpi_object *radeon_atpx_call(acpi_handle 
> handle, int function,
>       union acpi_object atpx_arg_elements[2];
>       struct acpi_object_list atpx_arg;
>       struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL };
> -     struct acpi_device *adev = container_of(handle, struct acpi_device, 
> handle);
> -     struct device *dev = &adev->dev;
>  
>       atpx_arg.count = 2;
>       atpx_arg.pointer = &atpx_arg_elements[0];
> @@ -117,8 +115,8 @@ static union acpi_object *radeon_atpx_call(acpi_handle 
> handle, int function,
>  
>       /* Fail only if calling the method fails and ATPX is supported */
>       if (ACPI_FAILURE(status) && status != AE_NOT_FOUND) {
> -             dev_err(dev, "failed to evaluate ATPX got %s\n",
> -                     acpi_format_exception(status));
> +             pr_err("failed to evaluate ATPX got %s\n",
> +                    acpi_format_exception(status));
>               kfree(buffer.pointer);
>               return NULL;
>       }
> @@ -159,8 +157,6 @@ static void radeon_atpx_parse_functions(struct 
> radeon_atpx_functions *f, u32 mas
>  static int radeon_atpx_validate(struct radeon_atpx *atpx)
>  {
>       u32 valid_bits = 0;
> -     struct acpi_device *adev = container_of(atpx->handle, struct 
> acpi_device, handle);
> -     struct device *dev = &adev->dev;
>  
>       if (atpx->functions.px_params) {
>               union acpi_object *info;
> @@ -175,7 +171,7 @@ static int radeon_atpx_validate(struct radeon_atpx *atpx)
>  
>               size = *(u16 *) info->buffer.pointer;
>               if (size < 10) {
> -                     dev_err(dev, "ATPX buffer is too small: %zu\n", size);
> +                     pr_err("ATPX buffer is too small: %zu\n", size);
>                       kfree(info);
>                       return -EINVAL;
>               }
> @@ -206,7 +202,7 @@ static int radeon_atpx_validate(struct radeon_atpx *atpx)
>  
>       atpx->is_hybrid = false;
>       if (valid_bits & ATPX_MS_HYBRID_GFX_SUPPORTED) {
> -             dev_info(dev, "ATPX Hybrid Graphics\n");
> +             pr_info("ATPX Hybrid Graphics\n");
>               /*
>                * Disable legacy PM methods only when pcie port PM is usable,
>                * otherwise the device might fail to power off or power on.

-- 
Regards,
Luben

Reply via email to