* [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