summaryrefslogtreecommitdiffstats
path: root/drivers/md/kcopyd.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-19 19:17:56 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-19 19:17:56 -0700
commita5f08c1ce08f2d8ce9a0e3e35a4c32e875fb7225 (patch)
treea8ae5bbcfe14cbc083d163b664d5976b6a7dd3ba /drivers/md/kcopyd.c
parentc1cb8e48bddd9e16ef488ea5d50885908c5a4081 (diff)
parent80fd662683be5dc2a3b41b27e30942d5fd7b5d5c (diff)
downloadlinux-a5f08c1ce08f2d8ce9a0e3e35a4c32e875fb7225.tar.bz2
Merge master.kernel.org:/pub/scm/linux/kernel/git/agk/linux-2.6-dm
* master.kernel.org:/pub/scm/linux/kernel/git/agk/linux-2.6-dm: (29 commits) dm crypt: tidy pending dm mpath: send uevents dm: uevent generate events dm: add uevent to core dm: export name and uuid dm raid1: add mirror_set to struct mirror dm log: split suspend dm mpath: hp retry if not ready dm mpath: add hp handler dm mpath: add retry pg init dm crypt: tidy labels dm crypt: tidy whitespace dm crypt: add post processing queue dm crypt: use per device singlethread workqueues dm mpath: emc fix an error message dm: bio_list macro renaming dm io:ctl remove vmalloc void cast dm: tidy bio_io_error usage kcopyd use mutex instead of semaphore dm: use kzalloc ...
Diffstat (limited to 'drivers/md/kcopyd.c')
-rw-r--r--drivers/md/kcopyd.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/md/kcopyd.c b/drivers/md/kcopyd.c
index 7e052378c47e..f3831f31223e 100644
--- a/drivers/md/kcopyd.c
+++ b/drivers/md/kcopyd.c
@@ -198,7 +198,7 @@ struct kcopyd_job {
* These fields are only used if the job has been split
* into more manageable parts.
*/
- struct semaphore lock;
+ struct mutex lock;
atomic_t sub_jobs;
sector_t progress;
};
@@ -456,7 +456,7 @@ static void segment_complete(int read_err,
sector_t count = 0;
struct kcopyd_job *job = (struct kcopyd_job *) context;
- down(&job->lock);
+ mutex_lock(&job->lock);
/* update the error */
if (read_err)
@@ -480,7 +480,7 @@ static void segment_complete(int read_err,
job->progress += count;
}
}
- up(&job->lock);
+ mutex_unlock(&job->lock);
if (count) {
int i;
@@ -562,7 +562,7 @@ int kcopyd_copy(struct kcopyd_client *kc, struct io_region *from,
dispatch_job(job);
else {
- init_MUTEX(&job->lock);
+ mutex_init(&job->lock);
job->progress = 0;
split_job(job);
}