aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2012-01-08 16:42:27 -0500
committerDave Airlie <airlied@redhat.com>2012-01-09 07:11:39 -0500
commitb5215ef1a877cd81a2558f3ddbcf784671a27588 (patch)
tree9bef1f5e9814906da9144ff8dc62006bc9e163cb
parentf0afb5d443748ee91a34e3a13cb454b0047be9ec (diff)
drm/sis|via: don't return stack garbage from free_mem ioctl
Fallout from my "kill drm_sman" refactor. Unfortunately gcc seems to have failed me and not warned about this. Tested-by: Jakob Bornecrantz <wallbraker@gmail.com> (on via) Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/sis/sis_mm.c3
-rw-r--r--drivers/gpu/drm/via/via_mm.c3
2 files changed, 2 insertions, 4 deletions
diff --git a/drivers/gpu/drm/sis/sis_mm.c b/drivers/gpu/drm/sis/sis_mm.c
index 46cb2bce6cc5..dd4a316c3d74 100644
--- a/drivers/gpu/drm/sis/sis_mm.c
+++ b/drivers/gpu/drm/sis/sis_mm.c
@@ -172,7 +172,6 @@ static int sis_drm_free(struct drm_device *dev, void *data, struct drm_file *fil
172 drm_sis_private_t *dev_priv = dev->dev_private; 172 drm_sis_private_t *dev_priv = dev->dev_private;
173 drm_sis_mem_t *mem = data; 173 drm_sis_mem_t *mem = data;
174 struct sis_memblock *obj; 174 struct sis_memblock *obj;
175 int ret;
176 175
177 mutex_lock(&dev->struct_mutex); 176 mutex_lock(&dev->struct_mutex);
178 obj = idr_find(&dev_priv->object_idr, mem->free); 177 obj = idr_find(&dev_priv->object_idr, mem->free);
@@ -193,7 +192,7 @@ static int sis_drm_free(struct drm_device *dev, void *data, struct drm_file *fil
193 mutex_unlock(&dev->struct_mutex); 192 mutex_unlock(&dev->struct_mutex);
194 DRM_DEBUG("free = 0x%lx\n", mem->free); 193 DRM_DEBUG("free = 0x%lx\n", mem->free);
195 194
196 return ret; 195 return 0;
197} 196}
198 197
199static int sis_fb_alloc(struct drm_device *dev, void *data, 198static int sis_fb_alloc(struct drm_device *dev, void *data,
diff --git a/drivers/gpu/drm/via/via_mm.c b/drivers/gpu/drm/via/via_mm.c
index bedb23d2ece0..a3574d09a07d 100644
--- a/drivers/gpu/drm/via/via_mm.c
+++ b/drivers/gpu/drm/via/via_mm.c
@@ -189,7 +189,6 @@ int via_mem_free(struct drm_device *dev, void *data, struct drm_file *file_priv)
189 drm_via_private_t *dev_priv = dev->dev_private; 189 drm_via_private_t *dev_priv = dev->dev_private;
190 drm_via_mem_t *mem = data; 190 drm_via_mem_t *mem = data;
191 struct via_memblock *obj; 191 struct via_memblock *obj;
192 int ret;
193 192
194 mutex_lock(&dev->struct_mutex); 193 mutex_lock(&dev->struct_mutex);
195 obj = idr_find(&dev_priv->object_idr, mem->index); 194 obj = idr_find(&dev_priv->object_idr, mem->index);
@@ -206,7 +205,7 @@ int via_mem_free(struct drm_device *dev, void *data, struct drm_file *file_priv)
206 205
207 DRM_DEBUG("free = 0x%lx\n", mem->index); 206 DRM_DEBUG("free = 0x%lx\n", mem->index);
208 207
209 return ret; 208 return 0;
210} 209}
211 210
212 211