diff options
author | Lars Ellenberg <lars.ellenberg@linbit.com> | 2014-03-20 14:04:35 +0100 |
---|---|---|
committer | Philipp Reisner <philipp.reisner@linbit.com> | 2014-07-10 18:35:02 +0200 |
commit | 0c066bc39e56a60785b32d6e43aa6659fb3793ab (patch) | |
tree | 770eb7ceaccce2c4e8c4689ef690b10641e28217 /drivers/block/drbd/drbd_req.c | |
parent | drbd: application writes may set-in-sync in protocol != C (diff) | |
download | linux-0c066bc39e56a60785b32d6e43aa6659fb3793ab.tar.xz linux-0c066bc39e56a60785b32d6e43aa6659fb3793ab.zip |
drbd: short-circuit in maybe_pull_ahead
If we already "pulled ahead", we can short-circuit,
and avoid logging the same messages over and over again.
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block/drbd/drbd_req.c')
-rw-r--r-- | drivers/block/drbd/drbd_req.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/block/drbd/drbd_req.c b/drivers/block/drbd/drbd_req.c index f07a724998ea..3824d5c737e6 100644 --- a/drivers/block/drbd/drbd_req.c +++ b/drivers/block/drbd/drbd_req.c @@ -899,6 +899,9 @@ static void maybe_pull_ahead(struct drbd_device *device) connection->agreed_pro_version < 96) return; + if (on_congestion == OC_PULL_AHEAD && device->state.conn == C_AHEAD) + return; /* nothing to do ... */ + /* If I don't even have good local storage, we can not reasonably try * to pull ahead of the peer. We also need the local reference to make * sure device->act_log is there. |