Re: [PATCH v5 19/33] drm/xe: Report all probe errors using SIGID

[email protected]
Newsgroups org.freedesktop.lists.intel-xe
Message-ID <[email protected]>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Unconditionally logging all probe failures as fatal errors causes normal probe deferrals (-EPROBE_DEFER) to be incorrectly logged as fatal hardware errors.
--

--- Patch [19]: [PATCH v5 19/33] drm/xe: Report all probe errors using SIGID ---
commit c6ce1e9226a28ea2318a390f9b11cf4044410b13
Author: Michal Wajdeczko <[email protected]>

drm/xe: Report all probe errors using SIGID

This commit catches and reports all probe errors by splitting xe_pci_probe()
and using xe_log_err_fatal() on the errors returned from __xe_pci_probe().

> diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
> index 4068b6bf9eaa7..1e04e8ef2611f 100644
> --- a/drivers/gpu/drm/xe/xe_pci.c
> +++ b/drivers/gpu/drm/xe/xe_pci.c
[ ... ]
> @@ -1180,6 +1175,26 @@ static int xe_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
>  	if (xe_display_driver_probe_defer(pdev))
>  		return -EPROBE_DEFER;
>  
> +	err = __xe_pci_probe(pdev, desc);
> +	if (err) {
> +		xe_log_err_fatal(pdev, PROBE, err, "driver loading failed for device '%04x'\n",
> +				 pdev->device);

[Severity: Medium]
Could __xe_pci_probe() still return -EPROBE_DEFER from other initialization
steps?

While the explicit xe_display_driver_probe_defer() check was kept outside to
avoid logging -EPROBE_DEFER as a fatal error, __xe_pci_probe() calls into
several other subsystems (such as xe_display_probe() or xe_pm_probe()) which
might also legitimately return -EPROBE_DEFER.

If they do, wouldn't this unconditionally log normal probe deferrals as
fatal errors?

> +		return err;
> +	}
> +
> +	return 0;
> +}

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=19
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.