]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/sunrpc/xprt.c
tcp: Restore ordering of TCP options for the sake of inter-operability
[linux-2.6-omap-h63xx.git] / net / sunrpc / xprt.c
index e1770f7ba0b3ec8a9e1d861ff8a2b950000fc8bb..29e401bb612ecf62edfa8f71a3e44f2583837b5c 100644 (file)
@@ -108,13 +108,10 @@ int xprt_register_transport(struct xprt_class *transport)
                        goto out;
        }
 
-       result = -EINVAL;
-       if (try_module_get(THIS_MODULE)) {
-               list_add_tail(&transport->list, &xprt_list);
-               printk(KERN_INFO "RPC: Registered %s transport module.\n",
-                       transport->name);
-               result = 0;
-       }
+       list_add_tail(&transport->list, &xprt_list);
+       printk(KERN_INFO "RPC: Registered %s transport module.\n",
+              transport->name);
+       result = 0;
 
 out:
        spin_unlock(&xprt_list_lock);
@@ -143,7 +140,6 @@ int xprt_unregister_transport(struct xprt_class *transport)
                                "RPC: Unregistered %s transport module.\n",
                                transport->name);
                        list_del_init(&transport->list);
-                       module_put(THIS_MODULE);
                        goto out;
                }
        }
@@ -690,7 +686,7 @@ static void xprt_connect_status(struct rpc_task *task)
 {
        struct rpc_xprt *xprt = task->tk_xprt;
 
-       if (task->tk_status >= 0) {
+       if (task->tk_status == 0) {
                xprt->stat.connect_count++;
                xprt->stat.connect_time += (long)jiffies - xprt->stat.connect_start;
                dprintk("RPC: %5u xprt_connect_status: connection established\n",
@@ -699,12 +695,6 @@ static void xprt_connect_status(struct rpc_task *task)
        }
 
        switch (task->tk_status) {
-       case -ECONNREFUSED:
-       case -ECONNRESET:
-               dprintk("RPC: %5u xprt_connect_status: server %s refused "
-                               "connection\n", task->tk_pid,
-                               task->tk_client->cl_server);
-               break;
        case -ENOTCONN:
                dprintk("RPC: %5u xprt_connect_status: connection broken\n",
                                task->tk_pid);
@@ -878,6 +868,7 @@ void xprt_transmit(struct rpc_task *task)
                return;
 
        req->rq_connect_cookie = xprt->connect_cookie;
+       req->rq_xtime = jiffies;
        status = xprt->ops->send_request(task);
        if (status == 0) {
                dprintk("RPC: %5u xmit complete\n", task->tk_pid);