summaryrefslogtreecommitdiff
path: root/drivers/staging/fsl_qbman/fsl_usdpaa.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/fsl_qbman/fsl_usdpaa.c')
-rw-r--r--drivers/staging/fsl_qbman/fsl_usdpaa.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/staging/fsl_qbman/fsl_usdpaa.c b/drivers/staging/fsl_qbman/fsl_usdpaa.c
index e31d709..5667a21 100644
--- a/drivers/staging/fsl_qbman/fsl_usdpaa.c
+++ b/drivers/staging/fsl_qbman/fsl_usdpaa.c
@@ -850,7 +850,7 @@ static long ioctl_dma_map(struct file *fp, struct ctx *ctx,
int ret = 0, k;
u32 largest_page, so_far = 0;
int frag_count = 0;
- unsigned long next_addr = PAGE_SIZE;
+ unsigned long next_addr = PAGE_SIZE, populate;
if (i->len && i->len % PAGE_SIZE)
return -EINVAL;
@@ -1007,7 +1007,8 @@ out:
USDPAA_DMA_FLAG_RDONLY ? 0
: PROT_WRITE),
MAP_SHARED,
- start_frag->pfn_base);
+ start_frag->pfn_base,
+ &populate);
up_write(&current->mm->mmap_sem);
if (longret & ~PAGE_MASK)
ret = (int)longret;
@@ -1144,12 +1145,12 @@ map_match:
static int portal_mmap(struct file *fp, struct resource *res, void **ptr)
{
- unsigned long longret = 0;
+ unsigned long longret = 0, populate;
down_write(&current->mm->mmap_sem);
longret = do_mmap_pgoff(fp, PAGE_SIZE, resource_size(res),
PROT_READ | PROT_WRITE, MAP_SHARED,
- res->start >> PAGE_SHIFT);
+ res->start >> PAGE_SHIFT, &populate);
up_write(&current->mm->mmap_sem);
if (longret & ~PAGE_MASK)