Lines Matching refs:ns
37 union drbd_state ns; member
53 union drbd_state ns, enum chg_state_flags flags);
56 static enum drbd_state_rv is_valid_transition(union drbd_state os, union drbd_state ns);
58 union drbd_state ns, enum sanitize_state_warnings *warn);
238 union drbd_state os, union drbd_state ns) in cl_wide_st_chg() argument
240 return (os.conn >= C_CONNECTED && ns.conn >= C_CONNECTED && in cl_wide_st_chg()
241 ((os.role != R_PRIMARY && ns.role == R_PRIMARY) || in cl_wide_st_chg()
242 (os.conn != C_STARTING_SYNC_T && ns.conn == C_STARTING_SYNC_T) || in cl_wide_st_chg()
243 (os.conn != C_STARTING_SYNC_S && ns.conn == C_STARTING_SYNC_S) || in cl_wide_st_chg()
244 (os.disk != D_FAILED && ns.disk == D_FAILED))) || in cl_wide_st_chg()
245 (os.conn >= C_CONNECTED && ns.conn == C_DISCONNECTING) || in cl_wide_st_chg()
246 (os.conn == C_CONNECTED && ns.conn == C_VERIFY_S) || in cl_wide_st_chg()
247 (os.conn == C_CONNECTED && ns.conn == C_WF_REPORT_PARAMS); in cl_wide_st_chg()
253 union drbd_state ns; in apply_mask_val() local
254 ns.i = (os.i & ~mask.i) | val.i; in apply_mask_val()
255 return ns; in apply_mask_val()
263 union drbd_state ns; in drbd_change_state() local
267 ns = apply_mask_val(drbd_read_state(device), mask, val); in drbd_change_state()
268 rv = _drbd_set_state(device, ns, f, NULL); in drbd_change_state()
290 union drbd_state os, ns; in _req_st_cond() local
302 ns = sanitize_state(device, os, apply_mask_val(os, mask, val), NULL); in _req_st_cond()
303 rv = is_valid_transition(os, ns); in _req_st_cond()
307 if (!cl_wide_st_chg(device, os, ns)) in _req_st_cond()
310 rv = is_valid_state(device, ns); in _req_st_cond()
312 rv = is_valid_soft_transition(os, ns, first_peer_device(device)->connection); in _req_st_cond()
338 union drbd_state os, ns; in drbd_req_state() local
348 ns = sanitize_state(device, os, apply_mask_val(os, mask, val), NULL); in drbd_req_state()
349 rv = is_valid_transition(os, ns); in drbd_req_state()
355 if (cl_wide_st_chg(device, os, ns)) { in drbd_req_state()
356 rv = is_valid_state(device, ns); in drbd_req_state()
358 rv = is_valid_soft_transition(os, ns, first_peer_device(device)->connection); in drbd_req_state()
363 print_st_err(device, os, ns, rv); in drbd_req_state()
370 print_st_err(device, os, ns, rv); in drbd_req_state()
379 print_st_err(device, os, ns, rv); in drbd_req_state()
383 ns = apply_mask_val(drbd_read_state(device), mask, val); in drbd_req_state()
384 rv = _drbd_set_state(device, ns, f, &done); in drbd_req_state()
386 rv = _drbd_set_state(device, ns, f, &done); in drbd_req_state()
441 static void print_st(struct drbd_device *device, const char *name, union drbd_state ns) in print_st() argument
445 drbd_conn_str(ns.conn), in print_st()
446 drbd_role_str(ns.role), in print_st()
447 drbd_role_str(ns.peer), in print_st()
448 drbd_disk_str(ns.disk), in print_st()
449 drbd_disk_str(ns.pdsk), in print_st()
450 is_susp(ns) ? 's' : 'r', in print_st()
451 ns.aftr_isp ? 'a' : '-', in print_st()
452 ns.peer_isp ? 'p' : '-', in print_st()
453 ns.user_isp ? 'u' : '-', in print_st()
454 ns.susp_fen ? 'F' : '-', in print_st()
455 ns.susp_nod ? 'N' : '-' in print_st()
460 union drbd_state ns, enum drbd_state_rv err) in print_st_err() argument
466 print_st(device, "wanted", ns); in print_st_err()
469 static long print_state_change(char *pb, union drbd_state os, union drbd_state ns, in print_state_change() argument
476 if (ns.role != os.role && flags & CS_DC_ROLE) in print_state_change()
479 drbd_role_str(ns.role)); in print_state_change()
480 if (ns.peer != os.peer && flags & CS_DC_PEER) in print_state_change()
483 drbd_role_str(ns.peer)); in print_state_change()
484 if (ns.conn != os.conn && flags & CS_DC_CONN) in print_state_change()
487 drbd_conn_str(ns.conn)); in print_state_change()
488 if (ns.disk != os.disk && flags & CS_DC_DISK) in print_state_change()
491 drbd_disk_str(ns.disk)); in print_state_change()
492 if (ns.pdsk != os.pdsk && flags & CS_DC_PDSK) in print_state_change()
495 drbd_disk_str(ns.pdsk)); in print_state_change()
500 …tic void drbd_pr_state_change(struct drbd_device *device, union drbd_state os, union drbd_state ns, in drbd_pr_state_change() argument
506 pbp += print_state_change(pbp, os, ns, flags ^ CS_DC_MASK); in drbd_pr_state_change()
508 if (ns.aftr_isp != os.aftr_isp) in drbd_pr_state_change()
511 ns.aftr_isp); in drbd_pr_state_change()
512 if (ns.peer_isp != os.peer_isp) in drbd_pr_state_change()
515 ns.peer_isp); in drbd_pr_state_change()
516 if (ns.user_isp != os.user_isp) in drbd_pr_state_change()
519 ns.user_isp); in drbd_pr_state_change()
525 … conn_pr_state_change(struct drbd_connection *connection, union drbd_state os, union drbd_state ns, in conn_pr_state_change() argument
531 pbp += print_state_change(pbp, os, ns, flags); in conn_pr_state_change()
533 if (is_susp(ns) != is_susp(os) && flags & CS_DC_SUSP) in conn_pr_state_change()
536 is_susp(ns)); in conn_pr_state_change()
549 is_valid_state(struct drbd_device *device, union drbd_state ns) in is_valid_state() argument
566 if (!nc->two_primaries && ns.role == R_PRIMARY) { in is_valid_state()
567 if (ns.peer == R_PRIMARY) in is_valid_state()
576 else if (ns.role == R_SECONDARY && device->open_cnt) in is_valid_state()
579 else if (ns.role == R_PRIMARY && ns.conn < C_CONNECTED && ns.disk < D_UP_TO_DATE) in is_valid_state()
583 ns.role == R_PRIMARY && ns.conn < C_CONNECTED && ns.pdsk >= D_UNKNOWN) in is_valid_state()
586 else if (ns.role == R_PRIMARY && ns.disk <= D_INCONSISTENT && ns.pdsk <= D_INCONSISTENT) in is_valid_state()
589 else if (ns.conn > C_CONNECTED && ns.disk < D_INCONSISTENT) in is_valid_state()
592 else if (ns.conn > C_CONNECTED && ns.pdsk < D_INCONSISTENT) in is_valid_state()
595 else if (ns.conn > C_CONNECTED && ns.disk < D_UP_TO_DATE && ns.pdsk < D_UP_TO_DATE) in is_valid_state()
598 else if ((ns.conn == C_CONNECTED || in is_valid_state()
599 ns.conn == C_WF_BITMAP_S || in is_valid_state()
600 ns.conn == C_SYNC_SOURCE || in is_valid_state()
601 ns.conn == C_PAUSED_SYNC_S) && in is_valid_state()
602 ns.disk == D_OUTDATED) in is_valid_state()
605 else if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) && in is_valid_state()
609 else if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) && in is_valid_state()
613 else if (ns.role == R_PRIMARY && ns.disk < D_UP_TO_DATE && ns.pdsk < D_UP_TO_DATE) in is_valid_state()
616 else if ((ns.conn == C_STARTING_SYNC_S || ns.conn == C_STARTING_SYNC_T) && in is_valid_state()
617 ns.pdsk == D_UNKNOWN) in is_valid_state()
620 else if (ns.conn >= C_CONNECTED && ns.pdsk == D_UNKNOWN) in is_valid_state()
637 is_valid_soft_transition(union drbd_state os, union drbd_state ns, struct drbd_connection *connecti… in is_valid_soft_transition() argument
641 if ((ns.conn == C_STARTING_SYNC_T || ns.conn == C_STARTING_SYNC_S) && in is_valid_soft_transition()
645 if (ns.conn == C_DISCONNECTING && os.conn == C_STANDALONE) in is_valid_soft_transition()
648 if (ns.disk > D_ATTACHING && os.disk == D_DISKLESS) in is_valid_soft_transition()
651 if (ns.conn == C_WF_CONNECTION && os.conn < C_UNCONNECTED) in is_valid_soft_transition()
654 if (ns.disk == D_OUTDATED && os.disk < D_OUTDATED && os.disk != D_ATTACHING) in is_valid_soft_transition()
657 if (ns.conn == C_DISCONNECTING && os.conn == C_UNCONNECTED) in is_valid_soft_transition()
663 !((ns.conn == C_WF_REPORT_PARAMS && os.conn == C_WF_CONNECTION) || in is_valid_soft_transition()
664 (ns.conn >= C_CONNECTED && os.conn == C_WF_REPORT_PARAMS))) in is_valid_soft_transition()
667 if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) && os.conn < C_CONNECTED) in is_valid_soft_transition()
670 if ((ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T) && in is_valid_soft_transition()
671 ns.conn != os.conn && os.conn > C_CONNECTED) in is_valid_soft_transition()
674 if ((ns.conn == C_STARTING_SYNC_S || ns.conn == C_STARTING_SYNC_T) && in is_valid_soft_transition()
678 if ((ns.conn == C_SYNC_TARGET || ns.conn == C_SYNC_SOURCE) in is_valid_soft_transition()
682 if (ns.conn == C_DISCONNECTING && ns.pdsk == D_OUTDATED && in is_valid_soft_transition()
730 is_valid_transition(union drbd_state os, union drbd_state ns) in is_valid_transition() argument
734 rv = is_valid_conn_transition(os.conn, ns.conn); in is_valid_transition()
737 if (ns.disk == D_FAILED && os.disk == D_DISKLESS) in is_valid_transition()
769 union drbd_state ns, enum sanitize_state_warnings *warn) in sanitize_state() argument
786 if (ns.conn < C_CONNECTED) { in sanitize_state()
787 ns.peer_isp = 0; in sanitize_state()
788 ns.peer = R_UNKNOWN; in sanitize_state()
789 if (ns.pdsk > D_UNKNOWN || ns.pdsk < D_INCONSISTENT) in sanitize_state()
790 ns.pdsk = D_UNKNOWN; in sanitize_state()
794 if (ns.conn == C_STANDALONE && ns.disk == D_DISKLESS && ns.role == R_SECONDARY) in sanitize_state()
795 ns.aftr_isp = 0; in sanitize_state()
799 if (ns.conn > C_CONNECTED && (ns.disk <= D_FAILED || ns.pdsk <= D_FAILED)) { in sanitize_state()
801 *warn = ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T ? in sanitize_state()
803 ns.conn = C_CONNECTED; in sanitize_state()
807 if (ns.conn < C_CONNECTED && ns.disk == D_NEGOTIATING && in sanitize_state()
810 ns.disk = device->new_state_tmp.disk; in sanitize_state()
811 ns.pdsk = device->new_state_tmp.pdsk; in sanitize_state()
815 ns.disk = D_DISKLESS; in sanitize_state()
816 ns.pdsk = D_UNKNOWN; in sanitize_state()
822 if (ns.conn >= C_CONNECTED && ns.conn < C_AHEAD) { in sanitize_state()
823 if (ns.disk == D_CONSISTENT || ns.disk == D_OUTDATED) in sanitize_state()
824 ns.disk = D_UP_TO_DATE; in sanitize_state()
825 if (ns.pdsk == D_CONSISTENT || ns.pdsk == D_OUTDATED) in sanitize_state()
826 ns.pdsk = D_UP_TO_DATE; in sanitize_state()
834 switch ((enum drbd_conns)ns.conn) { in sanitize_state()
892 if (ns.disk > disk_max) in sanitize_state()
893 ns.disk = disk_max; in sanitize_state()
895 if (ns.disk < disk_min) { in sanitize_state()
898 ns.disk = disk_min; in sanitize_state()
900 if (ns.pdsk > pdsk_max) in sanitize_state()
901 ns.pdsk = pdsk_max; in sanitize_state()
903 if (ns.pdsk < pdsk_min) { in sanitize_state()
906 ns.pdsk = pdsk_min; in sanitize_state()
910 (ns.role == R_PRIMARY && ns.conn < C_CONNECTED && ns.pdsk > D_OUTDATED) && in sanitize_state()
912 ns.susp_fen = 1; /* Suspend IO while fence-peer handler runs (peer lost) */ in sanitize_state()
915 (ns.role == R_PRIMARY && ns.disk < D_UP_TO_DATE && ns.pdsk < D_UP_TO_DATE) && in sanitize_state()
917 ns.susp_nod = 1; /* Suspend IO while no data available (no accessible data available) */ in sanitize_state()
919 if (ns.aftr_isp || ns.peer_isp || ns.user_isp) { in sanitize_state()
920 if (ns.conn == C_SYNC_SOURCE) in sanitize_state()
921 ns.conn = C_PAUSED_SYNC_S; in sanitize_state()
922 if (ns.conn == C_SYNC_TARGET) in sanitize_state()
923 ns.conn = C_PAUSED_SYNC_T; in sanitize_state()
925 if (ns.conn == C_PAUSED_SYNC_S) in sanitize_state()
926 ns.conn = C_SYNC_SOURCE; in sanitize_state()
927 if (ns.conn == C_PAUSED_SYNC_T) in sanitize_state()
928 ns.conn = C_SYNC_TARGET; in sanitize_state()
931 return ns; in sanitize_state()
977 __drbd_set_state(struct drbd_device *device, union drbd_state ns, in __drbd_set_state() argument
989 ns = sanitize_state(device, os, ns, &ssw); in __drbd_set_state()
990 if (ns.i == os.i) in __drbd_set_state()
993 rv = is_valid_transition(os, ns); in __drbd_set_state()
1001 rv = is_valid_state(device, ns); in __drbd_set_state()
1007 rv = is_valid_soft_transition(os, ns, connection); in __drbd_set_state()
1009 rv = is_valid_soft_transition(os, ns, connection); in __drbd_set_state()
1014 print_st_err(device, os, ns, rv); in __drbd_set_state()
1020 drbd_pr_state_change(device, os, ns, flags); in __drbd_set_state()
1026 conn_pr_state_change(connection, os, ns, in __drbd_set_state()
1033 if ((os.disk != D_FAILED && ns.disk == D_FAILED) || in __drbd_set_state()
1034 (os.disk != D_DISKLESS && ns.disk == D_DISKLESS)) in __drbd_set_state()
1037 if (!is_sync_state(os.conn) && is_sync_state(ns.conn)) in __drbd_set_state()
1044 device->state.i = ns.i; in __drbd_set_state()
1045 device->resource->susp = ns.susp; in __drbd_set_state()
1046 device->resource->susp_nod = ns.susp_nod; in __drbd_set_state()
1047 device->resource->susp_fen = ns.susp_fen; in __drbd_set_state()
1052 drbd_should_do_remote((union drbd_dev_state)ns.i)) in __drbd_set_state()
1055 if (os.disk == D_ATTACHING && ns.disk >= D_NEGOTIATING) in __drbd_set_state()
1059 if (os.conn == C_WF_REPORT_PARAMS && ns.conn != C_WF_REPORT_PARAMS && in __drbd_set_state()
1072 ns.conn <= C_CONNECTED) { in __drbd_set_state()
1081 (ns.conn == C_SYNC_TARGET || ns.conn == C_SYNC_SOURCE)) { in __drbd_set_state()
1085 if (ns.conn == C_SYNC_TARGET) in __drbd_set_state()
1090 (ns.conn == C_PAUSED_SYNC_T || ns.conn == C_PAUSED_SYNC_S)) { in __drbd_set_state()
1096 (ns.conn == C_VERIFY_S || ns.conn == C_VERIFY_T)) { in __drbd_set_state()
1100 set_ov_position(device, ns.conn); in __drbd_set_state()
1113 if (ns.conn == C_VERIFY_S) { in __drbd_set_state()
1143 if (os.disk < D_CONSISTENT && ns.disk >= D_CONSISTENT) in __drbd_set_state()
1150 os.peer == R_SECONDARY && ns.peer == R_PRIMARY) in __drbd_set_state()
1154 if (os.conn != C_DISCONNECTING && ns.conn == C_DISCONNECTING) in __drbd_set_state()
1158 if (os.conn != C_STANDALONE && ns.conn == C_STANDALONE) in __drbd_set_state()
1163 ns.conn <= C_TEAR_DOWN && ns.conn >= C_TIMEOUT) in __drbd_set_state()
1167 if (os.conn < C_CONNECTED && ns.conn >= C_CONNECTED) { in __drbd_set_state()
1176 ns.disk > D_NEGOTIATING) in __drbd_set_state()
1182 ascw->ns = ns; in __drbd_set_state()
1202 after_state_ch(device, ascw->os, ascw->ns, ascw->flags); in w_after_state_ch()
1256 union drbd_state ns, enum chg_state_flags flags) in after_state_ch() argument
1265 sib.ns = ns; in after_state_ch()
1268 && (ns.disk == D_UP_TO_DATE && ns.pdsk == D_UP_TO_DATE)) { in after_state_ch()
1278 (ns.role == R_PRIMARY && ns.disk < D_UP_TO_DATE && ns.pdsk < D_UP_TO_DATE)) in after_state_ch()
1284 if (ns.susp_nod) { in after_state_ch()
1305 if (ns.susp_fen) { in after_state_ch()
1330 (ns.conn == C_SYNC_SOURCE || ns.conn == C_PAUSED_SYNC_S) && in after_state_ch()
1338 ns.pdsk > D_DISKLESS && ns.pdsk != D_UNKNOWN) { /* attach on the peer */ in after_state_ch()
1347 drbd_send_state(peer_device, ns); in after_state_ch()
1352 if (os.conn != C_WF_BITMAP_S && ns.conn == C_WF_BITMAP_S && in after_state_ch()
1362 && (ns.pdsk < D_INCONSISTENT || in after_state_ch()
1363 ns.pdsk == D_UNKNOWN || in after_state_ch()
1364 ns.pdsk == D_OUTDATED)) { in after_state_ch()
1366 if ((ns.role == R_PRIMARY || ns.peer == R_PRIMARY) && in after_state_ch()
1367 device->ldev->md.uuid[UI_BITMAP] == 0 && ns.disk >= D_UP_TO_DATE) { in after_state_ch()
1379 if (ns.pdsk < D_INCONSISTENT && get_ldev(device)) { in after_state_ch()
1380 if (os.peer == R_SECONDARY && ns.peer == R_PRIMARY && in after_state_ch()
1381 device->ldev->md.uuid[UI_BITMAP] == 0 && ns.disk >= D_UP_TO_DATE) { in after_state_ch()
1386 if (os.peer == R_PRIMARY && ns.peer == R_SECONDARY) in after_state_ch()
1398 if (os.role == R_PRIMARY && ns.role == R_SECONDARY && in after_state_ch()
1408 if (ns.conn >= C_CONNECTED && in after_state_ch()
1409 os.disk == D_ATTACHING && ns.disk == D_NEGOTIATING) { in after_state_ch()
1412 drbd_send_state(peer_device, ns); in after_state_ch()
1416 if (ns.conn >= C_CONNECTED && in after_state_ch()
1417 ((os.aftr_isp != ns.aftr_isp) || in after_state_ch()
1418 (os.user_isp != ns.user_isp))) in after_state_ch()
1419 drbd_send_state(peer_device, ns); in after_state_ch()
1423 (ns.aftr_isp || ns.peer_isp || ns.user_isp)) in after_state_ch()
1428 if (os.conn == C_WF_REPORT_PARAMS && ns.conn >= C_CONNECTED) in after_state_ch()
1429 drbd_send_state(peer_device, ns); in after_state_ch()
1431 if (os.conn != C_AHEAD && ns.conn == C_AHEAD) in after_state_ch()
1432 drbd_send_state(peer_device, ns); in after_state_ch()
1435 if ((os.conn != C_STARTING_SYNC_T && ns.conn == C_STARTING_SYNC_T) || in after_state_ch()
1436 (os.conn != C_STARTING_SYNC_S && ns.conn == C_STARTING_SYNC_S)) in after_state_ch()
1444 if (os.disk != D_FAILED && ns.disk == D_FAILED) { in after_state_ch()
1485 if (ns.conn >= C_CONNECTED) in after_state_ch()
1486 drbd_send_state(peer_device, ns); in after_state_ch()
1501 if (os.disk != D_DISKLESS && ns.disk == D_DISKLESS) { in after_state_ch()
1509 if (ns.conn >= C_CONNECTED) in after_state_ch()
1510 drbd_send_state(peer_device, ns); in after_state_ch()
1517 if (os.disk == D_UP_TO_DATE && ns.disk == D_INCONSISTENT && ns.conn >= C_CONNECTED) in after_state_ch()
1518 drbd_send_state(peer_device, ns); in after_state_ch()
1521 if (ns.disk > D_NEGOTIATING && ns.pdsk > D_NEGOTIATING && in after_state_ch()
1523 if (ns.conn == C_CONNECTED) in after_state_ch()
1528 if ((os.conn > C_CONNECTED && ns.conn <= C_CONNECTED) || in after_state_ch()
1529 (os.peer_isp && !ns.peer_isp) || in after_state_ch()
1530 (os.user_isp && !ns.user_isp)) in after_state_ch()
1535 if (os.disk < D_UP_TO_DATE && os.conn >= C_SYNC_SOURCE && ns.conn == C_CONNECTED) in after_state_ch()
1536 drbd_send_state(peer_device, ns); in after_state_ch()
1541 if (os.conn == C_VERIFY_S && ns.conn == C_CONNECTED in after_state_ch()
1543 drbd_send_state(peer_device, ns); in after_state_ch()
1552 if (os.conn > C_CONNECTED && ns.conn <= C_CONNECTED && get_ldev(device)) { in after_state_ch()
1558 if (ns.disk == D_DISKLESS && in after_state_ch()
1559 ns.conn == C_STANDALONE && in after_state_ch()
1560 ns.role == R_SECONDARY) { in after_state_ch()
1561 if (os.aftr_isp != ns.aftr_isp) in after_state_ch()
1687 union drbd_state ns, os; in conn_is_valid_transition() local
1695 ns = sanitize_state(device, os, apply_mask_val(os, mask, val), NULL); in conn_is_valid_transition()
1697 if (flags & CS_IGN_OUTD_FAIL && ns.disk == D_OUTDATED && os.disk < D_OUTDATED) in conn_is_valid_transition()
1698 ns.disk = os.disk; in conn_is_valid_transition()
1700 if (ns.i == os.i) in conn_is_valid_transition()
1703 rv = is_valid_transition(os, ns); in conn_is_valid_transition()
1706 rv = is_valid_state(device, ns); in conn_is_valid_transition()
1709 rv = is_valid_soft_transition(os, ns, connection); in conn_is_valid_transition()
1711 rv = is_valid_soft_transition(os, ns, connection); in conn_is_valid_transition()
1716 print_st_err(device, os, ns, rv); in conn_is_valid_transition()
1729 union drbd_state ns, os, ns_max = { }; in conn_set_state() local
1756 ns = apply_mask_val(os, mask, val); in conn_set_state()
1757 ns = sanitize_state(device, os, ns, NULL); in conn_set_state()
1759 if (flags & CS_IGN_OUTD_FAIL && ns.disk == D_OUTDATED && os.disk < D_OUTDATED) in conn_set_state()
1760 ns.disk = os.disk; in conn_set_state()
1762 rv = __drbd_set_state(device, ns, flags, NULL); in conn_set_state()
1766 ns.i = device->state.i; in conn_set_state()
1767 ns_max.role = max_role(ns.role, ns_max.role); in conn_set_state()
1768 ns_max.peer = max_role(ns.peer, ns_max.peer); in conn_set_state()
1769 ns_max.conn = max_t(enum drbd_conns, ns.conn, ns_max.conn); in conn_set_state()
1770 ns_max.disk = max_t(enum drbd_disk_state, ns.disk, ns_max.disk); in conn_set_state()
1771 ns_max.pdsk = max_t(enum drbd_disk_state, ns.pdsk, ns_max.pdsk); in conn_set_state()
1773 ns_min.role = min_role(ns.role, ns_min.role); in conn_set_state()
1774 ns_min.peer = min_role(ns.peer, ns_min.peer); in conn_set_state()
1775 ns_min.conn = min_t(enum drbd_conns, ns.conn, ns_min.conn); in conn_set_state()
1776 ns_min.disk = min_t(enum drbd_disk_state, ns.disk, ns_min.disk); in conn_set_state()
1777 ns_min.pdsk = min_t(enum drbd_disk_state, ns.pdsk, ns_min.pdsk); in conn_set_state()