clp->cl_cb_session = ses;
                args.bc_xprt = conn->cb_xprt;
                args.prognumber = clp->cl_cb_session->se_cb_prog;
-               args.protocol = XPRT_TRANSPORT_BC_TCP;
+               args.protocol = conn->cb_xprt->xpt_class->xcl_ident |
+                               XPRT_TRANSPORT_BC;
                args.authflavor = ses->se_cb_sec.flavor;
        }
        /* Create RPC client */
 
        struct svc_xprt_ops     *xcl_ops;
        struct list_head        xcl_list;
        u32                     xcl_max_payload;
+       int                     xcl_ident;
 };
 
 /*
 
        .xcl_owner = THIS_MODULE,
        .xcl_ops = &svc_udp_ops,
        .xcl_max_payload = RPCSVC_MAXPAYLOAD_UDP,
+       .xcl_ident = XPRT_TRANSPORT_UDP,
 };
 
 static void svc_udp_init(struct svc_sock *svsk, struct svc_serv *serv)
        .xcl_owner = THIS_MODULE,
        .xcl_ops = &svc_tcp_ops,
        .xcl_max_payload = RPCSVC_MAXPAYLOAD_TCP,
+       .xcl_ident = XPRT_TRANSPORT_TCP,
 };
 
 void svc_init_xprt_sock(void)
 
                }
        }
        spin_unlock(&xprt_list_lock);
-       printk(KERN_ERR "RPC: transport (%d) not supported\n", args->ident);
+       dprintk("RPC: transport (%d) not supported\n", args->ident);
        return ERR_PTR(-EIO);
 
 found:
 
        .xcl_owner = THIS_MODULE,
        .xcl_ops = &svc_rdma_ops,
        .xcl_max_payload = RPCSVC_MAXPAYLOAD_TCP,
+       .xcl_ident = XPRT_TRANSPORT_RDMA,
 };
 
 struct svc_rdma_op_ctxt *svc_rdma_get_context(struct svcxprt_rdma *xprt)