Re: [PATCH v2] drm/qxl: return -ENODEV for unsupported revisions

From: Thomas Zimmermann

Date: Thu Oct 01 2026 - 10:08:22 EST




Am 01.10.26 um 11:25 schrieb Matheus Alves de Almeida:
The qxl driver currently returns -EINVAL when the emulated qxl revision
is too old. This is not a driver initialization failure but rather a
match rejection, which should return -ENODEV.

Change the value returned when the qxl revision is below 4 to -ENODEV.
Switch the DRM_ERROR() call to a dev_err() call.

Fixes: f64122c1f6ad ("drm: add new QXL driver. (v1.4)")
Signed-off-by: Matheus Alves de Almeida <matheus.aalmeida@xxxxxxxxxxxx>

Reviewed-by: Thomas Zimmermann <tzimmermann@xxxxxxx>

Thanks for the fix.

---
v2: Use dev_err() instead of dev_info()

drivers/gpu/drm/qxl/qxl_drv.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/qxl/qxl_drv.c b/drivers/gpu/drm/qxl/qxl_drv.c
index 97df9d3d6..85743f235 100644
--- a/drivers/gpu/drm/qxl/qxl_drv.c
+++ b/drivers/gpu/drm/qxl/qxl_drv.c
@@ -82,9 +82,9 @@ qxl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
int ret;
if (pdev->revision < 4) {
- DRM_ERROR("qxl too old, doesn't support client_monitors_config,"
- " use xf86-video-qxl in user mode");
- return -EINVAL; /* TODO: ENODEV ? */
+ dev_err(&pdev->dev,
+ "qxl too old, doesn't support client_monitors_config, use xf86-video-qxl in user mode\n");
+ return -ENODEV;
}
qdev = devm_drm_dev_alloc(&pdev->dev, &qxl_driver,

--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com
GF: Stefan Gaiser, Jochen Jaser, Abhinav Puri, (HRB 36809, AG Nürnberg)