Print this page
4463 NLM fails wrongly on clnt_control().

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/klm/nlm_rpc_handle.c
          +++ new/usr/src/uts/common/klm/nlm_rpc_handle.c
↓ open down ↓ 142 lines elided ↑ open up ↑
 143  143                   * Set the client's CLSET_NODELAYONERR option to true. The
 144  144                   * RPC clnt_call interface creates an artificial delay for
 145  145                   * certain call errors in order to prevent RPC consumers
 146  146                   * from getting into tight retry loops. Since this function is
 147  147                   * called by the NLM service routines we would like to avoid
 148  148                   * this artificial delay when possible. We do not retry if the
 149  149                   * NULL request fails so it is safe for us to turn this option
 150  150                   * on.
 151  151                   */
 152  152                  if (clnt_control(rpcp->nr_handle, CLSET_NODELAYONERR,
 153      -                    (char *)&clset)) {
      153 +                    (char *)&clset) == FALSE) {
 154  154                          NLM_ERR("Unable to set CLSET_NODELAYONERR\n");
 155  155                  }
 156  156          } else {
 157  157                  ret = clnt_tli_kinit(rpcp->nr_handle, &hostp->nh_knc,
 158  158                      &hostp->nh_addr, 0, NLM_RPC_RETRIES, CRED());
 159  159                  if (ret == 0) {
 160  160                          enum clnt_stat stat;
 161  161  
 162  162                          /*
 163  163                           * Check whether host's RPC binding is still
↓ open down ↓ 199 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX