diff options
| author | Mikulas Patocka <mpatocka@redhat.com> | 2009-04-02 14:55:36 -0400 |
|---|---|---|
| committer | Alasdair G Kergon <agk@redhat.com> | 2009-04-02 14:55:36 -0400 |
| commit | 143773965b4677bd72dbbf71f52bea0df2ed4e18 (patch) | |
| tree | 42cbaca9b881d1e84d555d9ced120f4e78babc9a | |
| parent | 99c75e3130cff0c869c657ee97fb4a68958eeffc (diff) | |
dm: remove unnecessary work queue type field
Remove "type" field from struct dm_wq_req because we no longer need it
to have more than one value.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
| -rw-r--r-- | drivers/md/dm.c | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 8d40f27cce89..bbc7ecf6cf04 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c | |||
| @@ -100,9 +100,6 @@ union map_info *dm_get_mapinfo(struct bio *bio) | |||
| 100 | * Work processed by per-device workqueue. | 100 | * Work processed by per-device workqueue. |
| 101 | */ | 101 | */ |
| 102 | struct dm_wq_req { | 102 | struct dm_wq_req { |
| 103 | enum { | ||
| 104 | DM_WQ_FLUSH_DEFERRED, | ||
| 105 | } type; | ||
| 106 | struct work_struct work; | 103 | struct work_struct work; |
| 107 | struct mapped_device *md; | 104 | struct mapped_device *md; |
| 108 | void *context; | 105 | void *context; |
| @@ -1434,32 +1431,24 @@ static void dm_wq_work(struct work_struct *work) | |||
| 1434 | struct mapped_device *md = req->md; | 1431 | struct mapped_device *md = req->md; |
| 1435 | 1432 | ||
| 1436 | down_write(&md->io_lock); | 1433 | down_write(&md->io_lock); |
| 1437 | switch (req->type) { | 1434 | __flush_deferred_io(md); |
| 1438 | case DM_WQ_FLUSH_DEFERRED: | ||
| 1439 | __flush_deferred_io(md); | ||
| 1440 | break; | ||
| 1441 | default: | ||
| 1442 | DMERR("dm_wq_work: unrecognised work type %d", req->type); | ||
| 1443 | BUG(); | ||
| 1444 | } | ||
| 1445 | up_write(&md->io_lock); | 1435 | up_write(&md->io_lock); |
| 1446 | } | 1436 | } |
| 1447 | 1437 | ||
| 1448 | static void dm_wq_queue(struct mapped_device *md, int type, void *context, | 1438 | static void dm_wq_queue(struct mapped_device *md, void *context, |
| 1449 | struct dm_wq_req *req) | 1439 | struct dm_wq_req *req) |
| 1450 | { | 1440 | { |
| 1451 | req->type = type; | ||
| 1452 | req->md = md; | 1441 | req->md = md; |
| 1453 | req->context = context; | 1442 | req->context = context; |
| 1454 | INIT_WORK(&req->work, dm_wq_work); | 1443 | INIT_WORK(&req->work, dm_wq_work); |
| 1455 | queue_work(md->wq, &req->work); | 1444 | queue_work(md->wq, &req->work); |
| 1456 | } | 1445 | } |
| 1457 | 1446 | ||
| 1458 | static void dm_queue_flush(struct mapped_device *md, int type, void *context) | 1447 | static void dm_queue_flush(struct mapped_device *md, void *context) |
| 1459 | { | 1448 | { |
| 1460 | struct dm_wq_req req; | 1449 | struct dm_wq_req req; |
| 1461 | 1450 | ||
| 1462 | dm_wq_queue(md, type, context, &req); | 1451 | dm_wq_queue(md, context, &req); |
| 1463 | flush_workqueue(md->wq); | 1452 | flush_workqueue(md->wq); |
| 1464 | } | 1453 | } |
| 1465 | 1454 | ||
| @@ -1605,7 +1594,7 @@ int dm_suspend(struct mapped_device *md, unsigned suspend_flags) | |||
| 1605 | 1594 | ||
| 1606 | /* were we interrupted ? */ | 1595 | /* were we interrupted ? */ |
| 1607 | if (r < 0) { | 1596 | if (r < 0) { |
| 1608 | dm_queue_flush(md, DM_WQ_FLUSH_DEFERRED, NULL); | 1597 | dm_queue_flush(md, NULL); |
| 1609 | 1598 | ||
| 1610 | unlock_fs(md); | 1599 | unlock_fs(md); |
| 1611 | goto out; /* pushback list is already flushed, so skip flush */ | 1600 | goto out; /* pushback list is already flushed, so skip flush */ |
| @@ -1645,7 +1634,7 @@ int dm_resume(struct mapped_device *md) | |||
| 1645 | if (r) | 1634 | if (r) |
| 1646 | goto out; | 1635 | goto out; |
| 1647 | 1636 | ||
| 1648 | dm_queue_flush(md, DM_WQ_FLUSH_DEFERRED, NULL); | 1637 | dm_queue_flush(md, NULL); |
| 1649 | 1638 | ||
| 1650 | unlock_fs(md); | 1639 | unlock_fs(md); |
| 1651 | 1640 | ||
