From: Mikulas Patocka 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: Mikulas Patocka Signed-off-by: Alasdair G Kergon --- drivers/md/dm-kcopyd.c | 6 ++---- drivers/md/dm-kcopyd.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) Index: linux-3.0/drivers/md/dm-kcopyd.c =================================================================== --- linux-3.0.orig/drivers/md/dm-kcopyd.c +++ linux-3.0/drivers/md/dm-kcopyd.c @@ -224,7 +224,6 @@ struct kcopyd_job { unsigned int num_dests; struct dm_io_region dests[DM_KCOPYD_MAX_REGIONS]; - unsigned int nr_pages; struct page_list *pages; /* @@ -396,9 +395,9 @@ static int run_io_job(struct kcopyd_job static int run_pages_job(struct kcopyd_job *job) { 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, job->nr_pages, &job->pages); + r = kcopyd_get_pages(job->kc, nr_pages, &job->pages); if (!r) { /* this job is ready for io */ push(&job->kc->io_jobs, job); @@ -600,7 +599,6 @@ int dm_kcopyd_copy(struct dm_kcopyd_clie job->num_dests = num_dests; memcpy(&job->dests, dests, sizeof(*dests) * num_dests); - job->nr_pages = 0; job->pages = NULL; job->fn = fn;