[PATCH v6] drm/xe: Add a null pointer check

Matt Roper matthew.d.roper at intel.com
Mon Mar 25 17:58:29 UTC 2024


On Mon, Mar 25, 2024 at 07:42:23PM +0530, Karthik Poosa wrote:
> Add a missing null pointer check.

You have so many versions of this patch that I've lost track of which is
which, but as I commented on an earlier version, this whole patch seems
unnecessary.  All Intel devices will have at least one GT, and we can
never "resume from runtime PM" before those GT(s) get initialized.  So a
NULL return here is impossible.  If you want to be paranoid, you can add
an assert to make that invariant clear and it will get compiled out of
production releases.


Matt

> 
> v2: Release resources before returning error. (Riana)
> 
> v3: Update commit message. (Badal)
> 
> v4: Change drm_err to XE_WARN_ON. (Anshuman)
> 
> v5: Fix XE_WARN_ON check. (Riana)
> 
> v6: Update commit message. (Jani)
> 
> Fixes: 09d88e3beb64 ("drm/xe/pm: Init pcode and restore vram on power lost")
> Signed-off-by: Karthik Poosa <karthik.poosa at intel.com>
> Reviewed-by: Riana Tauro <riana.tauro at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_pm.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
> index cc650a92c2fc..f6837bd6f9a3 100644
> --- a/drivers/gpu/drm/xe/xe_pm.c
> +++ b/drivers/gpu/drm/xe/xe_pm.c
> @@ -383,6 +383,11 @@ int xe_pm_runtime_resume(struct xe_device *xe)
>  	 * really lost power. Detecting primary Gt power is sufficient.
>  	 */
>  	gt = xe_device_get_gt(xe, 0);
> +	if (XE_WARN_ON(!gt)) {
> +		err = -ENXIO;
> +		goto out;
> +	}
> +
>  	xe->d3cold.power_lost = xe_guc_in_reset(&gt->uc.guc);
>  
>  	if (xe->d3cold.allowed && xe->d3cold.power_lost) {
> -- 
> 2.25.1
> 

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation


More information about the Intel-xe mailing list