Loading drivers/gpu/msm/kgsl.c +10 −14 Original line number Diff line number Diff line Loading @@ -3002,7 +3002,7 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, long ret = 0; bool full_flush = false; uint64_t size = 0; int i, count = 0; int i; void __user *ptr; if (param->count == 0 || param->count > 128) Loading @@ -3014,8 +3014,8 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, entries = kcalloc(param->count, sizeof(*entries), GFP_KERNEL); if (entries == NULL) { ret = -ENOMEM; goto out; kfree(objs); return -ENOMEM; } ptr = to_user_ptr(param->objs); Loading @@ -3032,8 +3032,6 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, if (entries[i] == NULL) continue; count++; if (!(objs[i].op & KGSL_GPUMEM_CACHE_RANGE)) size += entries[i]->memdesc.size; else if (objs[i].offset < entries[i]->memdesc.size) Loading @@ -3042,25 +3040,23 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, full_flush = check_full_flush(size, objs[i].op); if (full_flush) { trace_kgsl_mem_sync_full_cache(i, size); break; goto out; } ptr += sizeof(*objs); } if (!full_flush) { for (i = 0; !ret && i < param->count; i++) if (entries[i]) ret = _kgsl_gpumem_sync_cache(entries[i], objs[i].offset, objs[i].length, objs[i].op); } out: for (i = 0; i < param->count; i++) if (entries[i]) kgsl_mem_entry_put(entries[i]); out: kfree(entries); kfree(objs); Loading Loading
drivers/gpu/msm/kgsl.c +10 −14 Original line number Diff line number Diff line Loading @@ -3002,7 +3002,7 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, long ret = 0; bool full_flush = false; uint64_t size = 0; int i, count = 0; int i; void __user *ptr; if (param->count == 0 || param->count > 128) Loading @@ -3014,8 +3014,8 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, entries = kcalloc(param->count, sizeof(*entries), GFP_KERNEL); if (entries == NULL) { ret = -ENOMEM; goto out; kfree(objs); return -ENOMEM; } ptr = to_user_ptr(param->objs); Loading @@ -3032,8 +3032,6 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, if (entries[i] == NULL) continue; count++; if (!(objs[i].op & KGSL_GPUMEM_CACHE_RANGE)) size += entries[i]->memdesc.size; else if (objs[i].offset < entries[i]->memdesc.size) Loading @@ -3042,25 +3040,23 @@ long kgsl_ioctl_gpuobj_sync(struct kgsl_device_private *dev_priv, full_flush = check_full_flush(size, objs[i].op); if (full_flush) { trace_kgsl_mem_sync_full_cache(i, size); break; goto out; } ptr += sizeof(*objs); } if (!full_flush) { for (i = 0; !ret && i < param->count; i++) if (entries[i]) ret = _kgsl_gpumem_sync_cache(entries[i], objs[i].offset, objs[i].length, objs[i].op); } out: for (i = 0; i < param->count; i++) if (entries[i]) kgsl_mem_entry_put(entries[i]); out: kfree(entries); kfree(objs); Loading