summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2008-05-12 12:18:19 -0700
committerKeith Packard <keithp@keithp.com>2008-05-12 12:18:19 -0700
commit089011daf3da8db3bd16d50e1d6a6457da82300e (patch)
tree99fe1584a3e28ebb1f855a7e1e1d86416a739107
parent10f1d835b8ac7bf3153ac39d295ad2a72c4aa076 (diff)
Track name changes in GEM ioctls.
allocate → create unreference → close name → flink
-rw-r--r--src/i830_dri.c8
-rw-r--r--src/i830_memory.c24
2 files changed, 16 insertions, 16 deletions
diff --git a/src/i830_dri.c b/src/i830_dri.c
index 1cd1732a..10d65edb 100644
--- a/src/i830_dri.c
+++ b/src/i830_dri.c
@@ -1516,20 +1516,20 @@ i830_name_buffer (ScrnInfoPtr pScrn, i830_memory *mem)
if (mem && mem->gem_handle)
{
I830Ptr pI830 = I830PTR(pScrn);
- struct drm_gem_name name;
+ struct drm_gem_flink flink;
int ret;
if (!mem->gem_name)
{
- name.handle = mem->gem_handle;
- ret = ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_NAME, &name);
+ flink.handle = mem->gem_handle;
+ ret = ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_FLINK, &flink);
if (ret != 0)
{
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
"[drm] failed to name buffer %d\n", -errno);
return -1;
}
- mem->gem_name = name.name;
+ mem->gem_name = flink.name;
}
return mem->gem_name;
}
diff --git a/src/i830_memory.c b/src/i830_memory.c
index 6f3c06b9..0b172cfd 100644
--- a/src/i830_memory.c
+++ b/src/i830_memory.c
@@ -173,7 +173,7 @@ i830_bind_memory(ScrnInfoPtr pScrn, i830_memory *mem)
pin.handle = mem->gem_handle;
pin.alignment = mem->alignment;
xf86DrvMsg (pScrn->scrnIndex, X_ERROR,
- "alignment %d size %d\n", mem->alignment, mem->size);
+ "alignment %d size %d\n", mem->alignment, (int) mem->size);
ret = ioctl(pI830->drmSubFD, DRM_IOCTL_I915_GEM_PIN, &pin);
if (ret != 0)
@@ -256,10 +256,10 @@ i830_free_memory(ScrnInfoPtr pScrn, i830_memory *mem)
#ifdef XF86DRI_MM
if (mem->gem_handle != 0) {
I830Ptr pI830 = I830PTR(pScrn);
- struct drm_gem_unreference unref;
+ struct drm_gem_close close;
- unref.handle = mem->gem_handle;
- ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_UNREFERENCE, &unref);
+ close.handle = mem->gem_handle;
+ ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_CLOSE, &close);
if (pI830->bo_list == mem) {
pI830->bo_list = mem->next;
if (mem->next)
@@ -729,7 +729,7 @@ i830_allocate_memory_bo(ScrnInfoPtr pScrn, const char *name,
I830Ptr pI830 = I830PTR(pScrn);
i830_memory *mem;
int ret;
- struct drm_gem_alloc alloc;
+ struct drm_gem_create create;
assert((flags & NEED_PHYSICAL_ADDR) == 0);
@@ -747,16 +747,16 @@ i830_allocate_memory_bo(ScrnInfoPtr pScrn, const char *name,
return NULL;
}
- memset(&alloc, 0, sizeof(alloc));
- alloc.size = size;
+ memset(&create, 0, sizeof(create));
+ create.size = size;
- ret = ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_ALLOC, &alloc);
+ ret = ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_CREATE, &create);
if (ret) {
xfree(mem->name);
xfree(mem);
return NULL;
}
- mem->gem_handle = alloc.handle;
+ mem->gem_handle = create.handle;
/* Give buffer obviously wrong offset/end until it's pinned. */
mem->offset = -1;
@@ -770,10 +770,10 @@ i830_allocate_memory_bo(ScrnInfoPtr pScrn, const char *name,
/* Bind it if we currently control the VT */
if (pScrn->vtSema) {
if (!i830_bind_memory(pScrn, mem)) {
- struct drm_gem_unreference unref;
+ struct drm_gem_close close;
- unref.handle = mem->gem_handle;
- ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_UNREFERENCE, &unref);
+ close.handle = mem->gem_handle;
+ ioctl(pI830->drmSubFD, DRM_IOCTL_GEM_CLOSE, &close);
xfree(mem->name);
xfree(mem);
return NULL;