diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-01-08 16:42:27 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-01-09 07:11:39 -0500 |
commit | b5215ef1a877cd81a2558f3ddbcf784671a27588 (patch) | |
tree | 9bef1f5e9814906da9144ff8dc62006bc9e163cb | |
parent | f0afb5d443748ee91a34e3a13cb454b0047be9ec (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.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/via/via_mm.c | 3 |
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 | ||
199 | static int sis_fb_alloc(struct drm_device *dev, void *data, | 198 | static 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 | ||