Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1278992
| From | Fabian Frederick <fabf@skynet.be> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 05/21] drbd: rework is_valid_state() |
| Date | 2015-11-27 22:30 +0100 |
| Message-ID | <qzyKE-89k-39@gated-at.bofh.it> (permalink) |
| References | <qzyKC-89k-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Remove empty condition to avoid semantic warnings
Signed-off-by: Fabian Frederick <fabf@skynet.be>
---
drivers/block/drbd/drbd_state.c | 86 ++++++++++++++++++-----------------------
1 file changed, 38 insertions(+), 48 deletions(-)
diff --git a/drivers/block/drbd/drbd_state.c b/drivers/block/drbd/drbd_state.c
index 5a7ef78..a7631a3 100644
--- a/drivers/block/drbd/drbd_state.c
+++ b/drivers/block/drbd/drbd_state.c
@@ -813,54 +813,44 @@ is_valid_state(struct drbd_device *device, union drbd_state ns)
}
}
- if (rv <= 0)
- /* already found a reason to abort */;
- else if (ns.role == R_SECONDARY && device->open_cnt)
- rv = SS_DEVICE_IN_USE;
-
- else if (ns.role == R_PRIMARY && ns.conn < C_CONNECTED && ns.disk < D_UP_TO_DATE)
- rv = SS_NO_UP_TO_DATE_DISK;
-
- else if (fp >= FP_RESOURCE &&
- ns.role == R_PRIMARY && ns.conn < C_CONNECTED && ns.pdsk >= D_UNKNOWN)
- rv = SS_PRIMARY_NOP;
-
- else if (ns.role == R_PRIMARY && ns.disk <= D_INCONSISTENT && ns.pdsk <= D_INCONSISTENT)
- rv = SS_NO_UP_TO_DATE_DISK;
-
- else if (ns.conn > C_CONNECTED && ns.disk < D_INCONSISTENT)
- rv = SS_NO_LOCAL_DISK;
-
- else if (ns.conn > C_CONNECTED && ns.pdsk < D_INCONSISTENT)
- rv = SS_NO_REMOTE_DISK;
-
- else if (ns.conn > C_CONNECTED && ns.disk < D_UP_TO_DATE && ns.pdsk < D_UP_TO_DATE)
- rv = SS_NO_UP_TO_DATE_DISK;
-
- else if ((ns.conn == C_CONNECTED ||
- ns.conn == C_WF_BITMAP_S ||
- ns.conn == C_SYNC_SOURCE ||
- ns.conn == C_PAUSED_SYNC_S) &&
- ns.disk == D_OUTDATED)
- rv = SS_CONNECTED_OUTDATES;
-
- else if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) &&
- (nc->verify_alg[0] == 0))
- rv = SS_NO_VERIFY_ALG;
-
- else if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) &&
- first_peer_device(device)->connection->agreed_pro_version < 88)
- rv = SS_NOT_SUPPORTED;
-
- else if (ns.role == R_PRIMARY && ns.disk < D_UP_TO_DATE && ns.pdsk < D_UP_TO_DATE)
- rv = SS_NO_UP_TO_DATE_DISK;
-
- else if ((ns.conn == C_STARTING_SYNC_S || ns.conn == C_STARTING_SYNC_T) &&
- ns.pdsk == D_UNKNOWN)
- rv = SS_NEED_CONNECTION;
-
- else if (ns.conn >= C_CONNECTED && ns.pdsk == D_UNKNOWN)
- rv = SS_CONNECTED_OUTDATES;
+ if (rv > 0) {
+ if (ns.role == R_SECONDARY && device->open_cnt)
+ rv = SS_DEVICE_IN_USE;
+ else if (ns.role == R_PRIMARY && ns.conn < C_CONNECTED &&
+ ns.disk < D_UP_TO_DATE)
+ rv = SS_NO_UP_TO_DATE_DISK;
+ else if (fp >= FP_RESOURCE && ns.role == R_PRIMARY &&
+ ns.conn < C_CONNECTED && ns.pdsk >= D_UNKNOWN)
+ rv = SS_PRIMARY_NOP;
+ else if (ns.role == R_PRIMARY && ns.disk <= D_INCONSISTENT &&
+ ns.pdsk <= D_INCONSISTENT)
+ rv = SS_NO_UP_TO_DATE_DISK;
+ else if (ns.conn > C_CONNECTED && ns.disk < D_INCONSISTENT)
+ rv = SS_NO_LOCAL_DISK;
+ else if (ns.conn > C_CONNECTED && ns.pdsk < D_INCONSISTENT)
+ rv = SS_NO_REMOTE_DISK;
+ else if (ns.conn > C_CONNECTED && ns.disk < D_UP_TO_DATE &&
+ ns.pdsk < D_UP_TO_DATE)
+ rv = SS_NO_UP_TO_DATE_DISK;
+ else if ((ns.conn == C_CONNECTED || ns.conn == C_WF_BITMAP_S ||
+ ns.conn == C_SYNC_SOURCE ||
+ ns.conn == C_PAUSED_SYNC_S) && ns.disk == D_OUTDATED)
+ rv = SS_CONNECTED_OUTDATES;
+ else if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) &&
+ (nc->verify_alg[0] == 0))
+ rv = SS_NO_VERIFY_ALG;
+ else if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) &&
+ first_peer_device(device)->connection->agreed_pro_version < 88)
+ rv = SS_NOT_SUPPORTED;
+ else if (ns.role == R_PRIMARY && ns.disk < D_UP_TO_DATE &&
+ ns.pdsk < D_UP_TO_DATE)
+ rv = SS_NO_UP_TO_DATE_DISK;
+ else if ((ns.conn == C_STARTING_SYNC_S ||
+ ns.conn == C_STARTING_SYNC_T) && ns.pdsk == D_UNKNOWN)
+ rv = SS_NEED_CONNECTION;
+ else if (ns.conn >= C_CONNECTED && ns.pdsk == D_UNKNOWN)
+ rv = SS_CONNECTED_OUTDATES;
+ }
rcu_read_unlock();
--
2.1.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 00/21] drbd: clean-up patchset Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 02/21] drbd: simplify drbd_md_set_sector_offsets() Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 01/21] drbd: debugfs: constify drbd_version_fops Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 06/21] drbd: use const char * const for drbd strings Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 11/21] drbd: use | for bitmask combination Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 10/21] drbd: fix typo Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 17/21] drbd: use bool for growing Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 13/21] drbd: fix drbd_bm_init() comments Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 18/21] drbd: remove redundant declarations Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 14/21] drbd: clean-up receive_SyncParam() Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 15/21] drbd: introduce peer state union Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 12/21] drbd: use true/false for bool Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 19/21] drbd: remove bm_vk_free() Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 16/21] drbd: fix maybe_pull_ahead() locking comments Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 09/21] drbd: use bool for peer is_ states Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 03/21] drbd: use seq_put instead of seq_print where possible Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 05/21] drbd: rework is_valid_state() Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 07/21] drbd: kerneldoc warning fix in w_e_end_data_req() Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:30 +0100
[PATCH 21/21] drbd: replace if/BUG by BUG_ON Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
[PATCH 20/21] drbd: remove unused definitions Fabian Frederick <fabf@skynet.be> - 2015-11-27 22:40 +0100
csiph-web