Lines Matching full:transport
16 * transport's wait list. At the same time, if a reply is expected,
20 * pending requests for that transport. If a matching XID is found, the
38 * Transport switch API copyright (C) 2005, Chuck Lever <cel@netapp.com>
90 * xprt_register_transport - register a transport implementation
91 * @transport: transport to register
93 * If a transport implementation is loaded as a kernel module, it can
97 * 0: transport successfully registered
98 * -EEXIST: transport already registered
99 * -EINVAL: transport module being unloaded
101 int xprt_register_transport(struct xprt_class *transport) in xprt_register_transport() argument
109 /* don't register the same transport class twice */ in xprt_register_transport()
110 if (t->ident == transport->ident) in xprt_register_transport()
114 list_add_tail(&transport->list, &xprt_list); in xprt_register_transport()
115 printk(KERN_INFO "RPC: Registered %s transport module.\n", in xprt_register_transport()
116 transport->name); in xprt_register_transport()
126 * xprt_unregister_transport - unregister a transport implementation
127 * @transport: transport to unregister
130 * 0: transport successfully unregistered
131 * -ENOENT: transport never registered
133 int xprt_unregister_transport(struct xprt_class *transport) in xprt_unregister_transport() argument
141 if (t == transport) { in xprt_unregister_transport()
143 "RPC: Unregistered %s transport module.\n", in xprt_unregister_transport()
144 transport->name); in xprt_unregister_transport()
145 list_del_init(&transport->list); in xprt_unregister_transport()
225 * xprt_find_transport_ident - convert a netid into a transport identifier
226 * @netid: transport to load
229 * > 0: transport identifier
230 * -ENOENT: transport module not available
259 * @task: task that is requesting access to the transport
260 * @xprt: pointer to the target transport
263 * transport connects from colliding with writes. No congestion control
323 * @task: task that is requesting access to the transport
327 * woken up and given access to the transport.
414 * xprt_release_xprt - allow other requests to use a transport
415 * @xprt: transport with other tasks potentially waiting
416 * @task: task that is releasing access to the transport
431 * xprt_release_xprt_cong - allow other requests to use a transport
432 * @xprt: transport with other tasks potentially waiting
433 * @task: task that is releasing access to the transport
436 * transport if the transport's congestion window allows it.
494 * @xprt: pointer to transport
548 * xprt_adjust_cwnd - adjust transport congestion window
553 * The transport code maintains an estimate on the maximum number of out-
588 * xprt_wake_pending_tasks - wake all tasks on a transport's pending queue
589 * @xprt: transport with waiting tasks
603 * xprt_wait_for_buffer_space - wait for transport output buffer to clear
604 * @xprt: transport
629 * xprt_write_space - wake the task waiting for transport output buffer space
630 * @xprt: transport with waiting tasks
748 * xprt_disconnect_done - mark a transport as disconnected
749 * @xprt: transport to flag for disconnect
766 * @xprt: transport to disconnect
779 * xprt_force_disconnect - force a transport to disconnect
780 * @xprt: transport to disconnect
811 * xprt_conditional_disconnect - force a transport to disconnect
812 * @xprt: transport to disconnect
816 * the current transport 'connection cookie'. It ensures that we don't
914 * xprt_connect - schedule a transport connect operation
960 * @xprt: transport instance
976 * @xprt: transport instance
1061 * @xprt: transport on which the original request was transmitted
1092 * xprt_pin_rqst - Pin a request on the transport receive list
1105 * xprt_unpin_rqst - Unpin a request on the transport receive list
1209 * @copied: actual number of bytes received from the transport
1250 * Set a request's retransmit timeout based on the transport's
1460 * xprt_request_prepare - prepare an encoded request for transport
1463 * Calls into the transport layer to do whatever is needed to prepare
1488 * xprt_prepare_transmit - reserve the transport before sending a request
1517 * xprt_request_transmit - send an RPC request on a transport
1519 * @snd_task: RPC task that owns the transport lock
1593 * xprt_transmit - send an RPC request on a transport
1596 * Attempts to drain the transmit queue. On exit, either the transport
1901 * If the transport is marked as being congested, or if no more
1902 * slots are available, place the task on the transport's
1922 * If no more slots are available, place the task on the transport's
2031 * xprt_create_transport - create an RPC transport
2032 * @args: rpc transport creation arguments
2042 dprintk("RPC: transport (%d) not supported\n", args->ident); in xprt_create_transport()
2095 * Tear down transport state and free the rpc_xprt in xprt_destroy_cb()
2101 * xprt_destroy - destroy an RPC transport, killing off all requests.
2102 * @xprt: transport to destroy
2108 * Exclude transport connect/disconnect handlers and autoclose in xprt_destroy()
2128 * xprt_get - return a reference to an RPC transport.
2129 * @xprt: pointer to the transport
2141 * xprt_put - release a reference to an RPC transport.
2142 * @xprt: pointer to the transport