diff options
author | Andreas Gruenbacher <agruen@linbit.com> | 2011-08-30 09:38:04 -0400 |
---|---|---|
committer | Philipp Reisner <philipp.reisner@linbit.com> | 2014-02-17 10:50:45 -0500 |
commit | e33b32de04f6c247b9d57621f5bdb48b3c2cadb3 (patch) | |
tree | 44adfd8362aa378a3148883ddb85f574fab8b26e | |
parent | 6db7e50a8a40d2210544b4a09f3d4988127c20ad (diff) |
drbd: Get rid of first_peer_device() in handle_write_conflicts()
Signed-off-by: Andreas Gruenbacher <agruen@linbit.com>
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
-rw-r--r-- | drivers/block/drbd/drbd_receiver.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c index e5e227f9d84e..4fa7e0e8c2f5 100644 --- a/drivers/block/drbd/drbd_receiver.c +++ b/drivers/block/drbd/drbd_receiver.c | |||
@@ -2065,7 +2065,7 @@ static void fail_postponed_requests(struct drbd_device *device, sector_t sector, | |||
2065 | static int handle_write_conflicts(struct drbd_device *device, | 2065 | static int handle_write_conflicts(struct drbd_device *device, |
2066 | struct drbd_peer_request *peer_req) | 2066 | struct drbd_peer_request *peer_req) |
2067 | { | 2067 | { |
2068 | struct drbd_connection *connection = first_peer_device(device)->connection; | 2068 | struct drbd_connection *connection = peer_req->peer_device->connection; |
2069 | bool resolve_conflicts = test_bit(RESOLVE_CONFLICTS, &connection->flags); | 2069 | bool resolve_conflicts = test_bit(RESOLVE_CONFLICTS, &connection->flags); |
2070 | sector_t sector = peer_req->i.sector; | 2070 | sector_t sector = peer_req->i.sector; |
2071 | const unsigned int size = peer_req->i.size; | 2071 | const unsigned int size = peer_req->i.size; |
@@ -2119,7 +2119,7 @@ static int handle_write_conflicts(struct drbd_device *device, | |||
2119 | peer_req->w.cb = superseded ? e_send_superseded : | 2119 | peer_req->w.cb = superseded ? e_send_superseded : |
2120 | e_send_retry_write; | 2120 | e_send_retry_write; |
2121 | list_add_tail(&peer_req->w.list, &device->done_ee); | 2121 | list_add_tail(&peer_req->w.list, &device->done_ee); |
2122 | wake_asender(first_peer_device(device)->connection); | 2122 | wake_asender(connection); |
2123 | 2123 | ||
2124 | err = -ENOENT; | 2124 | err = -ENOENT; |
2125 | goto out; | 2125 | goto out; |
@@ -2148,9 +2148,7 @@ static int handle_write_conflicts(struct drbd_device *device, | |||
2148 | */ | 2148 | */ |
2149 | err = drbd_wait_misc(device, &req->i); | 2149 | err = drbd_wait_misc(device, &req->i); |
2150 | if (err) { | 2150 | if (err) { |
2151 | _conn_request_state(first_peer_device(device)->connection, | 2151 | _conn_request_state(connection, NS(conn, C_TIMEOUT), CS_HARD); |
2152 | NS(conn, C_TIMEOUT), | ||
2153 | CS_HARD); | ||
2154 | fail_postponed_requests(device, sector, size); | 2152 | fail_postponed_requests(device, sector, size); |
2155 | goto out; | 2153 | goto out; |
2156 | } | 2154 | } |