Commit 5bf45a3d authored by Mikulas Patocka's avatar Mikulas Patocka Committed by Alasdair G Kergon

dm kcopyd: remove nr_pages field from job structure

The nr_pages field in struct kcopyd_job is only used temporarily in
run_pages_job() to count the number of required pages.
We can use a local variable instead.
Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
Signed-off-by: default avatarAlasdair G Kergon <agk@redhat.com>
parent 4622afb3
...@@ -224,7 +224,6 @@ struct kcopyd_job { ...@@ -224,7 +224,6 @@ struct kcopyd_job {
unsigned int num_dests; unsigned int num_dests;
struct dm_io_region dests[DM_KCOPYD_MAX_REGIONS]; struct dm_io_region dests[DM_KCOPYD_MAX_REGIONS];
unsigned int nr_pages;
struct page_list *pages; struct page_list *pages;
/* /*
...@@ -396,9 +395,9 @@ static int run_io_job(struct kcopyd_job *job) ...@@ -396,9 +395,9 @@ static int run_io_job(struct kcopyd_job *job)
static int run_pages_job(struct kcopyd_job *job) static int run_pages_job(struct kcopyd_job *job)
{ {
int r; int r;
unsigned nr_pages = dm_div_up(job->dests[0].count, PAGE_SIZE >> 9);
job->nr_pages = dm_div_up(job->dests[0].count, PAGE_SIZE >> 9); r = kcopyd_get_pages(job->kc, nr_pages, &job->pages);
r = kcopyd_get_pages(job->kc, job->nr_pages, &job->pages);
if (!r) { if (!r) {
/* this job is ready for io */ /* this job is ready for io */
push(&job->kc->io_jobs, job); push(&job->kc->io_jobs, job);
...@@ -600,7 +599,6 @@ int dm_kcopyd_copy(struct dm_kcopyd_client *kc, struct dm_io_region *from, ...@@ -600,7 +599,6 @@ int dm_kcopyd_copy(struct dm_kcopyd_client *kc, struct dm_io_region *from,
job->num_dests = num_dests; job->num_dests = num_dests;
memcpy(&job->dests, dests, sizeof(*dests) * num_dests); memcpy(&job->dests, dests, sizeof(*dests) * num_dests);
job->nr_pages = 0;
job->pages = NULL; job->pages = NULL;
job->fn = fn; job->fn = fn;
......
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