summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarter Cooper <ccooper@codeaurora.org>2016-04-29 09:21:03 -0600
committerJeevan Shriram <jshriram@codeaurora.org>2016-05-05 15:05:56 -0700
commit098cd2a90013ef430d6ee94adb35d797ad854ce4 (patch)
treec148759bf203ab4cb96dabf8b019f5db01fb7ddf
parentb7e6436cad55506bcaec2d8405b0891a0fd9d76c (diff)
msm: kgsl: Don't spam kmsg due to invalid IOCTL requests
When the IOCTL is called with invalid data, don't log to kmsg. The returned error code should be enough to tell the UMD what they did wrong. CRs-Fixed: 987074 Change-Id: Iae380e0f44dd53bee8ff4cec347a6b9a632b1f84 Signed-off-by: Carter Cooper <ccooper@codeaurora.org>
-rw-r--r--drivers/gpu/msm/kgsl.c64
1 files changed, 14 insertions, 50 deletions
diff --git a/drivers/gpu/msm/kgsl.c b/drivers/gpu/msm/kgsl.c
index f35e5fe190ac..51dc781b2bd4 100644
--- a/drivers/gpu/msm/kgsl.c
+++ b/drivers/gpu/msm/kgsl.c
@@ -1786,12 +1786,8 @@ long kgsl_ioctl_sharedmem_free(struct kgsl_device_private *dev_priv,
long ret;
entry = kgsl_sharedmem_find(private, (uint64_t) param->gpuaddr);
- if (entry == NULL) {
- KGSL_MEM_INFO(dev_priv->device,
- "Invalid GPU address 0x%016llx\n",
- (uint64_t) param->gpuaddr);
+ if (entry == NULL)
return -EINVAL;
- }
ret = gpumem_free_entry(entry);
kgsl_mem_entry_put(entry);
@@ -1808,11 +1804,8 @@ long kgsl_ioctl_gpumem_free_id(struct kgsl_device_private *dev_priv,
long ret;
entry = kgsl_sharedmem_find_id(private, param->id);
- if (entry == NULL) {
- KGSL_MEM_INFO(dev_priv->device,
- "Invalid GPU memory object ID %d\n", param->id);
+ if (entry == NULL)
return -EINVAL;
- }
ret = gpumem_free_entry(entry);
kgsl_mem_entry_put(entry);
@@ -1901,11 +1894,8 @@ long kgsl_ioctl_gpuobj_free(struct kgsl_device_private *dev_priv,
long ret;
entry = kgsl_sharedmem_find_id(private, param->id);
- if (entry == NULL) {
- KGSL_MEM_ERR(dev_priv->device,
- "Invalid GPU memory object ID %d\n", param->id);
+ if (entry == NULL)
return -EINVAL;
- }
/* If no event is specified then free immediately */
if (!(param->flags & KGSL_GPUOBJ_FREE_ON_EVENT))
@@ -1940,17 +1930,14 @@ long kgsl_ioctl_cmdstream_freememontimestamp_ctxtid(
entry = kgsl_sharedmem_find(dev_priv->process_priv,
(uint64_t) param->gpuaddr);
if (entry == NULL) {
- KGSL_MEM_ERR(dev_priv->device,
- "Invalid GPU address 0x%016llx\n",
- (uint64_t) param->gpuaddr);
- goto out;
+ kgsl_context_put(context);
+ return -EINVAL;
}
ret = gpumem_free_entry_on_timestamp(dev_priv->device, entry,
context, param->timestamp);
kgsl_mem_entry_put(entry);
-out:
kgsl_context_put(context);
return ret;
@@ -2554,7 +2541,6 @@ long kgsl_ioctl_map_user_mem(struct kgsl_device_private *dev_priv,
private->pagetable, entry, param->fd);
break;
default:
- KGSL_CORE_ERR("Invalid memory type: %x\n", memtype);
result = -EOPNOTSUPP;
break;
}
@@ -2564,10 +2550,6 @@ long kgsl_ioctl_map_user_mem(struct kgsl_device_private *dev_priv,
if ((param->flags & KGSL_MEMFLAGS_SECURE) &&
(entry->memdesc.size & mmu->secure_align_mask)) {
- KGSL_DRV_ERR(dev_priv->device,
- "Secure buffer size %lld not aligned to %x alignment",
- entry->memdesc.size,
- mmu->secure_align_mask + 1);
result = -EINVAL;
goto error_attach;
}
@@ -2669,24 +2651,13 @@ long kgsl_ioctl_gpumem_sync_cache(struct kgsl_device_private *dev_priv,
struct kgsl_mem_entry *entry = NULL;
long ret;
- if (param->id != 0) {
+ if (param->id != 0)
entry = kgsl_sharedmem_find_id(private, param->id);
- if (entry == NULL) {
- KGSL_MEM_INFO(dev_priv->device, "can't find id %d\n",
- param->id);
- return -EINVAL;
- }
- } else if (param->gpuaddr != 0) {
+ else if (param->gpuaddr != 0)
entry = kgsl_sharedmem_find(private, (uint64_t) param->gpuaddr);
- if (entry == NULL) {
- KGSL_MEM_INFO(dev_priv->device,
- "can't find gpuaddr 0x%08lX\n",
- param->gpuaddr);
- return -EINVAL;
- }
- } else {
+
+ if (entry == NULL)
return -EINVAL;
- }
ret = _kgsl_gpumem_sync_cache(entry, (uint64_t) param->offset,
(uint64_t) param->length, param->op);
@@ -2814,12 +2785,8 @@ long kgsl_ioctl_sharedmem_flush_cache(struct kgsl_device_private *dev_priv,
long ret;
entry = kgsl_sharedmem_find(private, (uint64_t) param->gpuaddr);
- if (entry == NULL) {
- KGSL_MEM_INFO(dev_priv->device,
- "can't find gpuaddr 0x%08lX\n",
- param->gpuaddr);
+ if (entry == NULL)
return -EINVAL;
- }
ret = _kgsl_gpumem_sync_cache(entry, 0, entry->memdesc.size,
KGSL_GPUMEM_CACHE_FLUSH);
@@ -3107,15 +3074,12 @@ long kgsl_ioctl_gpumem_get_info(struct kgsl_device_private *dev_priv,
struct kgsl_mem_entry *entry = NULL;
int result = 0;
- if (param->id != 0) {
+ if (param->id != 0)
entry = kgsl_sharedmem_find_id(private, param->id);
- if (entry == NULL)
- return -EINVAL;
- } else if (param->gpuaddr != 0) {
+ else if (param->gpuaddr != 0)
entry = kgsl_sharedmem_find(private, (uint64_t) param->gpuaddr);
- if (entry == NULL)
- return -EINVAL;
- } else
+
+ if (entry == NULL)
return -EINVAL;
/*