diff options
author | Lars Ellenberg <lars.ellenberg@linbit.com> | 2014-04-23 06:15:35 -0400 |
---|---|---|
committer | Philipp Reisner <philipp.reisner@linbit.com> | 2014-07-10 12:35:08 -0400 |
commit | b9ed7080d7d29112c898c64bad778b84eec0ed2d (patch) | |
tree | fe2f27854645ec6c51ca71a149590e567f3bbbd4 /drivers/block/drbd | |
parent | 41d9f7cd5ba8a488fbc96350141c70c5c01bf8e6 (diff) |
drbd: consistently use list_add_tail for peer_request tracking
Keep the epoch entry lists (active_ee, read_ee, sync_ee, ...)
consistently "oldest first". That way finding the oldest not yet
successfully processed request is simply list_first_entry_or_null.
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block/drbd')
-rw-r--r-- | drivers/block/drbd/drbd_receiver.c | 4 | ||||
-rw-r--r-- | drivers/block/drbd/drbd_worker.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c index 3a3c4893ea26..db5c58042734 100644 --- a/drivers/block/drbd/drbd_receiver.c +++ b/drivers/block/drbd/drbd_receiver.c | |||
@@ -1777,7 +1777,7 @@ static int recv_resync_read(struct drbd_peer_device *peer_device, sector_t secto | |||
1777 | peer_req->w.cb = e_end_resync_block; | 1777 | peer_req->w.cb = e_end_resync_block; |
1778 | 1778 | ||
1779 | spin_lock_irq(&device->resource->req_lock); | 1779 | spin_lock_irq(&device->resource->req_lock); |
1780 | list_add(&peer_req->w.list, &device->sync_ee); | 1780 | list_add_tail(&peer_req->w.list, &device->sync_ee); |
1781 | spin_unlock_irq(&device->resource->req_lock); | 1781 | spin_unlock_irq(&device->resource->req_lock); |
1782 | 1782 | ||
1783 | atomic_add(pi->size >> 9, &device->rs_sect_ev); | 1783 | atomic_add(pi->size >> 9, &device->rs_sect_ev); |
@@ -2341,7 +2341,7 @@ static int receive_Data(struct drbd_connection *connection, struct packet_info * | |||
2341 | * active_ee to become empty in drbd_submit_peer_request(); | 2341 | * active_ee to become empty in drbd_submit_peer_request(); |
2342 | * better not add ourselves here. */ | 2342 | * better not add ourselves here. */ |
2343 | if ((peer_req->flags & EE_IS_TRIM_USE_ZEROOUT) == 0) | 2343 | if ((peer_req->flags & EE_IS_TRIM_USE_ZEROOUT) == 0) |
2344 | list_add(&peer_req->w.list, &device->active_ee); | 2344 | list_add_tail(&peer_req->w.list, &device->active_ee); |
2345 | spin_unlock_irq(&device->resource->req_lock); | 2345 | spin_unlock_irq(&device->resource->req_lock); |
2346 | 2346 | ||
2347 | if (device->state.conn == C_SYNC_TARGET) | 2347 | if (device->state.conn == C_SYNC_TARGET) |
diff --git a/drivers/block/drbd/drbd_worker.c b/drivers/block/drbd/drbd_worker.c index 49b88731b349..ad57129289b5 100644 --- a/drivers/block/drbd/drbd_worker.c +++ b/drivers/block/drbd/drbd_worker.c | |||
@@ -410,7 +410,7 @@ static int read_for_csum(struct drbd_peer_device *peer_device, sector_t sector, | |||
410 | 410 | ||
411 | peer_req->w.cb = w_e_send_csum; | 411 | peer_req->w.cb = w_e_send_csum; |
412 | spin_lock_irq(&device->resource->req_lock); | 412 | spin_lock_irq(&device->resource->req_lock); |
413 | list_add(&peer_req->w.list, &device->read_ee); | 413 | list_add_tail(&peer_req->w.list, &device->read_ee); |
414 | spin_unlock_irq(&device->resource->req_lock); | 414 | spin_unlock_irq(&device->resource->req_lock); |
415 | 415 | ||
416 | atomic_add(size >> 9, &device->rs_sect_ev); | 416 | atomic_add(size >> 9, &device->rs_sect_ev); |