Commit cf950766 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'drm-fixes-2026-04-24' of https://gitlab.freedesktop.org/drm/kernel

Pull more drm fixes from Dave Airlie:
 "These are the regular fixes that have built up over last couple of
  weeks, all pretty minor and spread all over.

  atomic:
   - raise the vblank timeout to avoid it on virtual drivers
   - fix colorop duplication

  bridge:
   - stm_lvds: state check fix
   - dw-mipi-dsi: bridge reference leak fix

  panel:
   - visionx-rm69299: init fix

  dma-fence:
   - fix sparse warning

  dma-buf:
   - UAF fix

  panthor:
   - mapping fix

  arcgpu:
   - device_node reference leak fix

  nouveau:
   - memory leak in error path fix
   - overflow in reloc path for old hw fix

  hv:
   - Kconfig fix

  v3d:
   - infinite loop fix"

* tag 'drm-fixes-2026-04-24' of https://gitlab.freedesktop.org/drm/kernel:
  drm/nouveau: fix u32 overflow in pushbuf reloc bounds check
  MAINTAINERS: split hisilicon maintenance and add Yongbang Shi for hibmc-drm matainers
  drm/v3d: Reject empty multisync extension to prevent infinite loop
  drm/panel: visionox-rm69299: Make use of prepare_prev_first
  drm/drm_atomic: duplicate colorop states if plane color pipeline in use
  drm/nouveau: fix nvkm_device leak on aperture removal failure
  hv: Select CONFIG_SYSFB only for CONFIG_HYPERV_VMBUS
  dma-fence: Silence sparse warning in dma_fence_describe
  drm/bridge: dw-mipi-dsi: Fix bridge leak when host attach fails
  drm/arcpgu: fix device node leak
  drm/panthor: Fix outdated function documentation
  drm/panthor: Extend VM locked region for remap case to be a superset
  dma-buf: fix UAF in dma_buf_put() tracepoint
  drm/bridge: stm_lvds: Do not fail atomic_check on disabled connector
  drm/atomic: Increase timeout in drm_atomic_helper_wait_for_vblanks()
parents 92c4c9fd 56d0a0b3
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -8602,10 +8602,17 @@ S: Maintained
T:	git https://gitlab.freedesktop.org/drm/misc/kernel.git
F:	drivers/gpu/drm/gma500/
DRM DRIVERS FOR HISILICON
M:	Xinliang Liu <xinliang.liu@linaro.org>
DRM DRIVERS FOR HISILICON HIBMC
M:	Yongbang Shi <shiyongbang@huawei.com>
M:	Tian Tao  <tiantao6@hisilicon.com>
R:	Xinwei Kong <kong.kongxinwei@hisilicon.com>
L:	dri-devel@lists.freedesktop.org
S:	Maintained
T:	git https://gitlab.freedesktop.org/drm/misc/kernel.git
F:	drivers/gpu/drm/hisilicon/hibmc
DRM DRIVERS FOR HISILICON KIRIN
M:	Xinliang Liu <xinliang.liu@linaro.org>
R:	Sumit Semwal <sumit.semwal@linaro.org>
R:	Yongqin Liu <yongqin.liu@linaro.org>
R:	John Stultz <jstultz@google.com>
@@ -8613,7 +8620,7 @@ L: dri-devel@lists.freedesktop.org
S:	Maintained
T:	git https://gitlab.freedesktop.org/drm/misc/kernel.git
F:	Documentation/devicetree/bindings/display/hisilicon/
F:	drivers/gpu/drm/hisilicon/
F:	drivers/gpu/drm/hisilicon/kirin
DRM DRIVERS FOR LIMA
M:	Qiang Yu <yuq825@gmail.com>
+1 −2
Original line number Diff line number Diff line
@@ -845,9 +845,8 @@ void dma_buf_put(struct dma_buf *dmabuf)
	if (WARN_ON(!dmabuf || !dmabuf->file))
		return;

	fput(dmabuf->file);

	DMA_BUF_TRACE(trace_dma_buf_put, dmabuf);
	fput(dmabuf->file);
}
EXPORT_SYMBOL_NS_GPL(dma_buf_put, "DMA_BUF");

+2 −2
Original line number Diff line number Diff line
@@ -1037,8 +1037,8 @@ EXPORT_SYMBOL(dma_fence_set_deadline);
 */
void dma_fence_describe(struct dma_fence *fence, struct seq_file *seq)
{
	const char __rcu *timeline = "";
	const char __rcu *driver = "";
	const char __rcu *timeline = (const char __rcu *)"";
	const char __rcu *driver = (const char __rcu *)"";
	const char *signaled = "";

	rcu_read_lock();
+5 −1
Original line number Diff line number Diff line
@@ -345,10 +345,14 @@ static int dw_mipi_dsi_host_attach(struct mipi_dsi_host *host,
	if (pdata->host_ops && pdata->host_ops->attach) {
		ret = pdata->host_ops->attach(pdata->priv_data, device);
		if (ret < 0)
			return ret;
			goto err_remove_bridge;
	}

	return 0;

err_remove_bridge:
	drm_bridge_remove(&dsi->bridge);
	return ret;
}

static int dw_mipi_dsi_host_detach(struct mipi_dsi_host *host,
+5 −1
Original line number Diff line number Diff line
@@ -540,10 +540,14 @@ static int dw_mipi_dsi2_host_attach(struct mipi_dsi_host *host,
	if (pdata->host_ops && pdata->host_ops->attach) {
		ret = pdata->host_ops->attach(pdata->priv_data, device);
		if (ret < 0)
			return ret;
			goto err_remove_bridge;
	}

	return 0;

err_remove_bridge:
	drm_bridge_remove(&dsi2->bridge);
	return ret;
}

static int dw_mipi_dsi2_host_detach(struct mipi_dsi_host *host,
Loading