Print this page
XXXX introduce drv_sectohz

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/io/ib/clients/rds/rdsib_ep.c
          +++ new/usr/src/uts/common/io/ib/clients/rds/rdsib_ep.c
↓ open down ↓ 764 lines elided ↑ open up ↑
 765  765              (sp->session_state == RDS_SESSION_STATE_FINI) ||
 766  766              (sp->session_state == RDS_SESSION_STATE_PASSIVE_CLOSING));
 767  767  
 768  768          rw_enter(&sp->session_lock, RW_READER);
 769  769          RDS_DPRINTF2("rds_destroy_session", "SP(%p) State: %d", sp,
 770  770              sp->session_state);
 771  771          while (!((sp->session_state == RDS_SESSION_STATE_CLOSED) ||
 772  772              (sp->session_state == RDS_SESSION_STATE_FAILED) ||
 773  773              (sp->session_state == RDS_SESSION_STATE_FINI))) {
 774  774                  rw_exit(&sp->session_lock);
 775      -                delay(drv_usectohz(1000000));
      775 +                delay(drv_sectohz(1));
 776  776                  rw_enter(&sp->session_lock, RW_READER);
 777  777                  RDS_DPRINTF2("rds_destroy_session", "SP(%p) State: %d WAITING "
 778  778                      "ON SESSION", sp, sp->session_state);
 779  779          }
 780  780          rw_exit(&sp->session_lock);
 781  781  
 782  782          /* data channel */
 783  783          ep = &sp->session_dataep;
 784  784  
 785  785          /* send pool locks */
↓ open down ↓ 70 lines elided ↑ open up ↑
 856  856  
 857  857          /*
 858  858           * The session is in ERROR state but close both channels
 859  859           * for a clean start.
 860  860           */
 861  861          if (sp_state == RDS_SESSION_STATE_ERROR) {
 862  862                  rds_session_close(sp, IBT_BLOCKING, 1);
 863  863          }
 864  864  
 865  865          /* wait 1 sec before re-connecting */
 866      -        delay(drv_usectohz(1000000));
      866 +        delay(drv_sectohz(1));
 867  867  
 868  868          do {
 869  869                  ibt_ip_path_attr_t      ipattr;
 870  870                  ibt_ip_addr_t           dstip;
 871  871  
 872  872                  /* The ipaddr should be in the network order */
 873  873                  myip = sp->session_myip;
 874  874                  remip = sp->session_remip;
 875  875                  ret = rds_sc_path_lookup(&myip, &remip);
 876  876                  if (ret == 0) {
↓ open down ↓ 23 lines elided ↑ open up ↑
 900  900                          lgid = sp->session_pinfo.
 901  901                              pi_prim_cep_path.cep_adds_vect.av_sgid;
 902  902                          rgid = sp->session_pinfo.
 903  903                              pi_prim_cep_path.cep_adds_vect.av_dgid;
 904  904                          break;
 905  905                  }
 906  906  
 907  907                  RDS_DPRINTF2(LABEL, "ibt_get_ip_paths failed, ret: %d ", ret);
 908  908  
 909  909                  /* wait 1 sec before re-trying */
 910      -                delay(drv_usectohz(1000000));
      910 +                delay(drv_sectohz(1));
 911  911                  cnt++;
 912  912          } while (cnt < 5);
 913  913  
 914  914          if (ret != IBT_SUCCESS) {
 915  915                  rw_enter(&sp->session_lock, RW_WRITER);
 916  916                  if (sp->session_type == RDS_SESSION_ACTIVE) {
 917  917                          rds_session_fini(sp);
 918  918                          sp->session_state = RDS_SESSION_STATE_FAILED;
 919  919                          sp->session_failover = 0;
 920  920                          RDS_DPRINTF3("rds_failover_session",
↓ open down ↓ 187 lines elided ↑ open up ↑
1108 1108  {
1109 1109          rds_session_t *sp, *spnextp;
1110 1110  
1111 1111          RDS_DPRINTF2("rds_close_sessions", "Enter");
1112 1112  
1113 1113          /* wait until all the buffers are freed by the sockets */
1114 1114          while (RDS_GET_RXPKTS_PEND() != 0) {
1115 1115                  /* wait one second and try again */
1116 1116                  RDS_DPRINTF2("rds_close_sessions", "waiting on "
1117 1117                      "pending packets", RDS_GET_RXPKTS_PEND());
1118      -                delay(drv_usectohz(1000000));
     1118 +                delay(drv_sectohz(1));
1119 1119          }
1120 1120          RDS_DPRINTF2("rds_close_sessions", "No more RX packets pending");
1121 1121  
1122 1122          /* close all the sessions */
1123 1123          rw_enter(&rdsib_statep->rds_sessionlock, RW_WRITER);
1124 1124          sp = rdsib_statep->rds_sessionlistp;
1125 1125          while (sp) {
1126 1126                  rw_enter(&sp->session_lock, RW_WRITER);
1127 1127                  RDS_DPRINTF2("rds_close_sessions", "SP(%p) State: %d", sp,
1128 1128                      sp->session_state);
↓ open down ↓ 1196 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX