public inbox for drm-ai-reviews@public-inbox.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH V1] accel/amdxdna: Disable device buffer exporting
@ 2026-05-26 18:50 Lizhi Hou
  2026-05-27  4:20 ` Claude review: " Claude Code Review Bot
  2026-05-27  4:20 ` Claude Code Review Bot
  0 siblings, 2 replies; 3+ messages in thread
From: Lizhi Hou @ 2026-05-26 18:50 UTC (permalink / raw)
  To: ogabbay, quic_jhugo, dri-devel, mario.limonciello,
	karol.wachowski
  Cc: Lizhi Hou, linux-kernel, max.zhen, sonal.santan

Device buffers are never intended to be exported. Disable exporting
support explicitly.

Signed-off-by: Lizhi Hou <lizhi.hou@amd.com>
---
 drivers/accel/amdxdna/amdxdna_gem.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/accel/amdxdna/amdxdna_gem.c b/drivers/accel/amdxdna/amdxdna_gem.c
index 2dfdc56ba91d..2727e48afc0a 100644
--- a/drivers/accel/amdxdna/amdxdna_gem.c
+++ b/drivers/accel/amdxdna/amdxdna_gem.c
@@ -725,9 +725,15 @@ static int amdxdna_gem_dev_obj_vmap(struct drm_gem_object *obj, struct iosys_map
 	return 0;
 }
 
+static struct dma_buf *amdxdna_gem_dev_obj_export(struct drm_gem_object *gobj, int flags)
+{
+	return ERR_PTR(-EOPNOTSUPP);
+}
+
 static const struct drm_gem_object_funcs amdxdna_gem_dev_obj_funcs = {
 	.free = amdxdna_gem_dev_obj_free,
 	.vmap = amdxdna_gem_dev_obj_vmap,
+	.export = amdxdna_gem_dev_obj_export,
 };
 
 static const struct drm_gem_object_funcs amdxdna_gem_shmem_funcs = {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Claude review: accel/amdxdna: Disable device buffer exporting
  2026-05-26 18:50 [PATCH V1] accel/amdxdna: Disable device buffer exporting Lizhi Hou
@ 2026-05-27  4:20 ` Claude Code Review Bot
  2026-05-27  4:20 ` Claude Code Review Bot
  1 sibling, 0 replies; 3+ messages in thread
From: Claude Code Review Bot @ 2026-05-27  4:20 UTC (permalink / raw)
  To: dri-devel-reviews

Overall Series Review

Subject: accel/amdxdna: Disable device buffer exporting
Author: Lizhi Hou <lizhi.hou@amd.com>
Patches: 1
Reviewed: 2026-05-27T14:20:13.447868

---

This is a single-patch submission that explicitly disables DMA-BUF exporting for device buffer objects in the amdxdna accelerator driver. The change is small, correct, and straightforward. By setting the `.export` callback on `amdxdna_gem_dev_obj_funcs` to a function that returns `-EOPNOTSUPP`, it overrides the default fallback to `drm_gem_prime_export()` (seen in `drm_prime.c:387-390`), which would otherwise attempt to export a buffer that the driver never intends to share.

The approach is the standard DRM pattern for disabling export on specific GEM object types. No issues found.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Claude review: accel/amdxdna: Disable device buffer exporting
  2026-05-26 18:50 [PATCH V1] accel/amdxdna: Disable device buffer exporting Lizhi Hou
  2026-05-27  4:20 ` Claude review: " Claude Code Review Bot
@ 2026-05-27  4:20 ` Claude Code Review Bot
  1 sibling, 0 replies; 3+ messages in thread
From: Claude Code Review Bot @ 2026-05-27  4:20 UTC (permalink / raw)
  To: dri-devel-reviews

Patch Review

**Status: Looks good**

The patch adds a minimal `.export` callback that returns `-EOPNOTSUPP` and wires it into `amdxdna_gem_dev_obj_funcs`:

```c
static struct dma_buf *amdxdna_gem_dev_obj_export(struct drm_gem_object *gobj, int flags)
{
	return ERR_PTR(-EOPNOTSUPP);
}
```

**Observations:**

1. **Correct error code**: `-EOPNOTSUPP` is appropriate here — it signals that the operation is not supported, which is the right semantic for a buffer type that should never be exported.

2. **Correct override mechanism**: Without this callback, `drm_gem_prime_handle_to_fd()` in `drm_prime.c:387-390` would fall through to `drm_gem_prime_export()`, which would attempt the export. The `dev_obj_funcs` struct lacks `.pin`, `.get_sg_table`, and other callbacks that the default export path relies on, so the export would likely fail in a confusing way or produce a non-functional dma-buf. Explicitly returning an error is much cleaner.

3. **Consistent with driver design**: The shmem object funcs (`amdxdna_gem_shmem_funcs` at line 739) have a custom `.export = amdxdna_gem_prime_export`, showing the driver is intentional about which object types can be exported. This patch completes that story for device objects.

4. **Unused parameter**: The `gobj` and `flags` parameters are unused, but this is standard for stub/rejection callbacks in the kernel — no `__maybe_unused` annotation is needed since the kernel build suppresses these warnings for function pointer implementations.

No concerns with this patch. It's a clean, minimal hardening fix.

---
Generated by Claude Code Patch Reviewer

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-05-27  4:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-26 18:50 [PATCH V1] accel/amdxdna: Disable device buffer exporting Lizhi Hou
2026-05-27  4:20 ` Claude review: " Claude Code Review Bot
2026-05-27  4:20 ` Claude Code Review Bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox