summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/msm/kgsl.c38
-rw-r--r--drivers/gpu/msm/kgsl.h2
-rw-r--r--drivers/gpu/msm/kgsl_iommu.c3
-rw-r--r--drivers/gpu/msm/kgsl_sharedmem.c2
-rw-r--r--drivers/gpu/msm/kgsl_sharedmem.h6
5 files changed, 17 insertions, 34 deletions
diff --git a/drivers/gpu/msm/kgsl.c b/drivers/gpu/msm/kgsl.c
index 10e139a9b00f..d5e96abdb8d5 100644
--- a/drivers/gpu/msm/kgsl.c
+++ b/drivers/gpu/msm/kgsl.c
@@ -2045,7 +2045,6 @@ static int kgsl_setup_anon_useraddr(struct kgsl_pagetable *pagetable,
entry->memdesc.pagetable = pagetable;
entry->memdesc.size = (uint64_t) size;
- entry->memdesc.mmapsize = (uint64_t) size;
entry->memdesc.useraddr = hostptr;
if (kgsl_memdesc_use_cpu_map(&entry->memdesc))
entry->memdesc.gpuaddr = (uint64_t) entry->memdesc.useraddr;
@@ -2410,7 +2409,6 @@ static int kgsl_setup_dma_buf(struct kgsl_device *device,
entry->priv_data = meta;
entry->memdesc.pagetable = pagetable;
entry->memdesc.size = 0;
- entry->memdesc.mmapsize = 0;
/* USE_CPU_MAP is not impemented for ION. */
entry->memdesc.flags &= ~((uint64_t) KGSL_MEMFLAGS_USE_CPU_MAP);
entry->memdesc.flags |= KGSL_MEMFLAGS_USERMEM_ION;
@@ -2444,7 +2442,6 @@ static int kgsl_setup_dma_buf(struct kgsl_device *device,
}
entry->memdesc.size = PAGE_ALIGN(entry->memdesc.size);
- entry->memdesc.mmapsize = PAGE_ALIGN(entry->memdesc.size);
out:
if (ret) {
@@ -2910,7 +2907,7 @@ static uint64_t kgsl_filter_cachemode(uint64_t flags)
static struct kgsl_mem_entry *gpumem_alloc_entry(
struct kgsl_device_private *dev_priv,
- uint64_t size, uint64_t mmapsize, uint64_t flags)
+ uint64_t size, uint64_t flags)
{
int ret;
struct kgsl_process_private *private = dev_priv->process_priv;
@@ -2952,17 +2949,10 @@ static struct kgsl_mem_entry *gpumem_alloc_entry(
KGSL_MEMALIGN_MASK;
}
- if (mmapsize < size)
- mmapsize = size;
-
/* For now only allow allocations up to 4G */
if (size == 0 || size > UINT_MAX)
return ERR_PTR(-EINVAL);
- /* Only allow a mmap size that we can actually mmap */
- if (mmapsize > UINT_MAX)
- return ERR_PTR(-EINVAL);
-
flags = kgsl_filter_cachemode(flags);
entry = kgsl_mem_entry_create();
@@ -2976,7 +2966,7 @@ static struct kgsl_mem_entry *gpumem_alloc_entry(
entry->memdesc.priv |= KGSL_MEMDESC_SECURE;
ret = kgsl_allocate_user(dev_priv->device, &entry->memdesc,
- private->pagetable, size, mmapsize, flags);
+ private->pagetable, size, flags);
if (ret != 0)
goto err;
@@ -3025,8 +3015,7 @@ long kgsl_ioctl_gpuobj_alloc(struct kgsl_device_private *dev_priv,
struct kgsl_gpuobj_alloc *param = data;
struct kgsl_mem_entry *entry;
- entry = gpumem_alloc_entry(dev_priv, param->size,
- param->va_len, param->flags);
+ entry = gpumem_alloc_entry(dev_priv, param->size, param->flags);
if (IS_ERR(entry))
return PTR_ERR(entry);
@@ -3035,7 +3024,7 @@ long kgsl_ioctl_gpuobj_alloc(struct kgsl_device_private *dev_priv,
param->size = entry->memdesc.size;
param->flags = entry->memdesc.flags;
- param->mmapsize = kgsl_memdesc_mmapsize(&entry->memdesc);
+ param->mmapsize = kgsl_memdesc_footprint(&entry->memdesc);
param->id = entry->id;
return 0;
@@ -3052,8 +3041,7 @@ long kgsl_ioctl_gpumem_alloc(struct kgsl_device_private *dev_priv,
flags &= ~((uint64_t) KGSL_MEMFLAGS_USE_CPU_MAP);
flags |= KGSL_MEMFLAGS_FORCE_32BIT;
- entry = gpumem_alloc_entry(dev_priv, (uint64_t) param->size,
- (uint64_t) param->size, flags);
+ entry = gpumem_alloc_entry(dev_priv, (uint64_t) param->size, flags);
if (IS_ERR(entry))
return PTR_ERR(entry);
@@ -3074,8 +3062,7 @@ long kgsl_ioctl_gpumem_alloc_id(struct kgsl_device_private *dev_priv,
flags |= KGSL_MEMFLAGS_FORCE_32BIT;
- entry = gpumem_alloc_entry(dev_priv, (uint64_t) param->size,
- (uint64_t) param->mmapsize, flags);
+ entry = gpumem_alloc_entry(dev_priv, (uint64_t) param->size, flags);
if (IS_ERR(entry))
return PTR_ERR(entry);
@@ -3083,8 +3070,7 @@ long kgsl_ioctl_gpumem_alloc_id(struct kgsl_device_private *dev_priv,
param->id = entry->id;
param->flags = (unsigned int) entry->memdesc.flags;
param->size = (size_t) entry->memdesc.size;
- param->mmapsize = (size_t)
- kgsl_memdesc_mmapsize(&entry->memdesc);
+ param->mmapsize = (size_t) kgsl_memdesc_footprint(&entry->memdesc);
param->gpuaddr = (unsigned long) entry->memdesc.gpuaddr;
return 0;
@@ -3121,7 +3107,7 @@ long kgsl_ioctl_gpumem_get_info(struct kgsl_device_private *dev_priv,
param->id = entry->id;
param->flags = (unsigned int) entry->memdesc.flags;
param->size = (size_t) entry->memdesc.size;
- param->mmapsize = (size_t) kgsl_memdesc_mmapsize(&entry->memdesc);
+ param->mmapsize = (size_t) kgsl_memdesc_footprint(&entry->memdesc);
param->useraddr = entry->memdesc.useraddr;
kgsl_mem_entry_put(entry);
@@ -3146,7 +3132,7 @@ long kgsl_ioctl_gpuobj_info(struct kgsl_device_private *dev_priv,
param->gpuaddr = entry->memdesc.gpuaddr;
param->flags = entry->memdesc.flags;
param->size = entry->memdesc.size;
- param->va_len = kgsl_memdesc_mmapsize(&entry->memdesc);
+ param->va_len = kgsl_memdesc_footprint(&entry->memdesc);
param->va_addr = (uint64_t) entry->memdesc.useraddr;
kgsl_mem_entry_put(entry);
@@ -3369,15 +3355,15 @@ get_mmap_entry(struct kgsl_process_private *private,
}
if (kgsl_memdesc_use_cpu_map(&entry->memdesc)) {
- if (len != kgsl_memdesc_mmapsize(&entry->memdesc)) {
+ if (len != kgsl_memdesc_footprint(&entry->memdesc)) {
ret = -ERANGE;
goto err_put;
}
- } else if (len != kgsl_memdesc_mmapsize(&entry->memdesc) &&
+ } else if (len != kgsl_memdesc_footprint(&entry->memdesc) &&
len != entry->memdesc.size) {
/*
* If cpu_map != gpumap then user can map either the
- * mmapsize or the entry size
+ * footprint or the entry size
*/
ret = -ERANGE;
goto err_put;
diff --git a/drivers/gpu/msm/kgsl.h b/drivers/gpu/msm/kgsl.h
index bc0ae2bac915..f675c4446081 100644
--- a/drivers/gpu/msm/kgsl.h
+++ b/drivers/gpu/msm/kgsl.h
@@ -147,7 +147,6 @@ struct kgsl_memdesc_ops {
* @gpuaddr: GPU virtual address
* @physaddr: Physical address of the memory object
* @size: Size of the memory object
- * @mmapsize: Total size of the object in VM (including guard)
* @priv: Internal flags and settings
* @sgt: Scatter gather table for allocated pages
* @ops: Function hooks for the memdesc memory type
@@ -164,7 +163,6 @@ struct kgsl_memdesc {
uint64_t gpuaddr;
phys_addr_t physaddr;
uint64_t size;
- uint64_t mmapsize;
unsigned int priv;
struct sg_table *sgt;
struct kgsl_memdesc_ops *ops;
diff --git a/drivers/gpu/msm/kgsl_iommu.c b/drivers/gpu/msm/kgsl_iommu.c
index 4ae007432717..1d9bc378affb 100644
--- a/drivers/gpu/msm/kgsl_iommu.c
+++ b/drivers/gpu/msm/kgsl_iommu.c
@@ -1200,8 +1200,7 @@ static int _iommu_map_guard_page(struct kgsl_pagetable *pt,
if (!kgsl_secure_guard_page_memdesc.sgt) {
if (kgsl_allocate_user(KGSL_MMU_DEVICE(pt->mmu),
&kgsl_secure_guard_page_memdesc, pt,
- sgp_size, sgp_size,
- KGSL_MEMFLAGS_SECURE)) {
+ sgp_size, KGSL_MEMFLAGS_SECURE)) {
KGSL_CORE_ERR(
"Secure guard page alloc failed\n");
return -ENOMEM;
diff --git a/drivers/gpu/msm/kgsl_sharedmem.c b/drivers/gpu/msm/kgsl_sharedmem.c
index 3ee782e96f6c..8bf0a243066e 100644
--- a/drivers/gpu/msm/kgsl_sharedmem.c
+++ b/drivers/gpu/msm/kgsl_sharedmem.c
@@ -336,7 +336,7 @@ static int kgsl_allocate_secure(struct kgsl_device *device,
int kgsl_allocate_user(struct kgsl_device *device,
struct kgsl_memdesc *memdesc,
struct kgsl_pagetable *pagetable,
- uint64_t size, uint64_t mmapsize, uint64_t flags)
+ uint64_t size, uint64_t flags)
{
int ret;
diff --git a/drivers/gpu/msm/kgsl_sharedmem.h b/drivers/gpu/msm/kgsl_sharedmem.h
index b4895500bcff..151217523759 100644
--- a/drivers/gpu/msm/kgsl_sharedmem.h
+++ b/drivers/gpu/msm/kgsl_sharedmem.h
@@ -67,7 +67,7 @@ void kgsl_sharedmem_uninit_sysfs(void);
int kgsl_allocate_user(struct kgsl_device *device,
struct kgsl_memdesc *memdesc,
struct kgsl_pagetable *pagetable,
- uint64_t size, uint64_t mmapsize, uint64_t flags);
+ uint64_t size, uint64_t flags);
void kgsl_get_memory_usage(char *str, size_t len, uint64_t memflags);
@@ -226,7 +226,7 @@ kgsl_memdesc_use_cpu_map(const struct kgsl_memdesc *memdesc)
}
/*
- * kgsl_memdesc_mmapsize - get the size of the mmap region
+ * kgsl_memdesc_footprint - get the size of the mmap region
* @memdesc - the memdesc
*
* The entire memdesc must be mapped. Additionally if the
@@ -235,7 +235,7 @@ kgsl_memdesc_use_cpu_map(const struct kgsl_memdesc *memdesc)
* match up.
*/
static inline uint64_t
-kgsl_memdesc_mmapsize(const struct kgsl_memdesc *memdesc)
+kgsl_memdesc_footprint(const struct kgsl_memdesc *memdesc)
{
uint64_t size = memdesc->size;
if (kgsl_memdesc_has_guard_page(memdesc))