Commit 5d8e80d6 authored by Pavel Emelyanov's avatar Pavel Emelyanov

page-read: Remove get_pagemap method

Now it's obsoleted by the advance method.
Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
Acked-by: 's avatarMike Rapoport <rppt@linux.vnet.ibm.com>
parent 84f22ae1
...@@ -84,7 +84,7 @@ static int cr_dedup_one_pagemap(int id, int flags) ...@@ -84,7 +84,7 @@ static int cr_dedup_one_pagemap(int id, int flags)
goto exit; goto exit;
while (1) { while (1) {
ret = pr.get_pagemap(&pr); ret = pr.advance(&pr);
if (ret <= 0) if (ret <= 0)
goto exit; goto exit;
......
...@@ -42,11 +42,6 @@ ...@@ -42,11 +42,6 @@
*/ */
struct page_read { struct page_read {
/*
* Gets next vaddr:len pair to work on. The zero pagemaps are skipped.
* Pagemap entries should be returned in sorted order.
*/
int (*get_pagemap)(struct page_read *);
/* reads page from current pagemap */ /* reads page from current pagemap */
int (*read_pages)(struct page_read *, unsigned long vaddr, int nr, int (*read_pages)(struct page_read *, unsigned long vaddr, int nr,
void *, unsigned flags); void *, unsigned flags);
......
...@@ -705,7 +705,7 @@ static int restore_priv_vma_content(struct pstree_item *t) ...@@ -705,7 +705,7 @@ static int restore_priv_vma_content(struct pstree_item *t)
while (1) { while (1) {
unsigned long off, i, nr_pages; unsigned long off, i, nr_pages;
ret = pr.get_pagemap(&pr); ret = pr.advance(&pr);
if (ret <= 0) if (ret <= 0)
break; break;
......
...@@ -149,19 +149,6 @@ static int advance(struct page_read *pr) ...@@ -149,19 +149,6 @@ static int advance(struct page_read *pr)
return 1; return 1;
} }
static int get_pagemap(struct page_read *pr)
{
if (!advance(pr))
return 0;
if (pr->pe->in_parent && !pr->parent) {
pr_err("No parent for snapshot pagemap\n");
return -1;
}
return 1;
}
static void skip_pagemap_pages(struct page_read *pr, unsigned long len) static void skip_pagemap_pages(struct page_read *pr, unsigned long len)
{ {
if (!len) if (!len)
...@@ -222,6 +209,11 @@ static int read_parent_page(struct page_read *pr, unsigned long vaddr, ...@@ -222,6 +209,11 @@ static int read_parent_page(struct page_read *pr, unsigned long vaddr,
struct page_read *ppr = pr->parent; struct page_read *ppr = pr->parent;
int ret; int ret;
if (!ppr) {
pr_err("No parent for snapshot pagemap\n");
return -1;
}
/* /*
* Parent pagemap at this point entry may be shorter * Parent pagemap at this point entry may be shorter
* than the current vaddr:nr needs, so we have to * than the current vaddr:nr needs, so we have to
...@@ -626,7 +618,6 @@ int open_page_read_at(int dfd, int pid, struct page_read *pr, int pr_flags) ...@@ -626,7 +618,6 @@ int open_page_read_at(int dfd, int pid, struct page_read *pr, int pr_flags)
return -1; return -1;
} }
pr->get_pagemap = get_pagemap;
pr->read_pages = read_pagemap_page; pr->read_pages = read_pagemap_page;
pr->advance = advance; pr->advance = advance;
pr->close = close_page_read; pr->close = close_page_read;
......
...@@ -470,7 +470,7 @@ static int restore_shmem_content(void *addr, struct shmem_info *si) ...@@ -470,7 +470,7 @@ static int restore_shmem_content(void *addr, struct shmem_info *si)
unsigned long vaddr; unsigned long vaddr;
unsigned nr_pages; unsigned nr_pages;
ret = pr.get_pagemap(&pr); ret = pr.advance(&pr);
if (ret <= 0) if (ret <= 0)
break; break;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment