Lines Matching refs:call

145 	rxrpc_notify_new_call_t	notify_new_call; /* Func to notify of new call */
146 rxrpc_discard_new_call_t discard_new_call; /* Func to discard a new call */
149 spinlock_t incoming_lock; /* Incoming call vs service shutdown lock */
156 struct rb_root calls; /* User ID -> call mapping */
182 u32 callNumber; /* call ID (0 for connection-level packets) */
183 u32 seq; /* sequence number of pkt in call stream */
256 struct rxrpc_txbuf *(*alloc_txbuf)(struct rxrpc_call *call, size_t remaining, gfp_t gfp);
264 /* Free crypto request on a call */
392 RXRPC_CALL_REMOTELY_ABORTED, /* - call aborted by peer */
393 RXRPC_CALL_LOCALLY_ABORTED, /* - call aborted locally on error or close */
394 RXRPC_CALL_LOCAL_ERROR, /* - call failed due to local error */
395 RXRPC_CALL_NETWORK_ERROR, /* - call terminated by network error */
474 struct rxrpc_net *rxnet; /* Network namespace to which call belongs */
486 struct rxrpc_call *call; /* Active call */
487 unsigned int call_debug_id; /* call->debug_id */
488 u32 call_id; /* ID of current call */
490 u32 last_call; /* ID of last call */
550 * Flags in call->flags.
553 RXRPC_CALL_RELEASED, /* call has been released - no more message to userspace */
555 RXRPC_CALL_IS_SERVICE, /* Call is service call */
556 RXRPC_CALL_EXPOSED, /* The call was exposed to the world */
563 RXRPC_CALL_RX_HEARD, /* The peer responded at least once to this call */
564 RXRPC_CALL_DISCONNECTED, /* The call has been disconnected */
565 RXRPC_CALL_KERNEL, /* The call was made by the kernel */
566 RXRPC_CALL_UPGRADE, /* Service upgrade was requested for the call */
567 RXRPC_CALL_EXCLUSIVE, /* The call uses a once-only connection */
573 * Events that can be raised on a call.
577 RXRPC_CALL_EV_INITIAL_PING, /* Send initial ping for a new service call */
581 * The states that a call can be in.
595 RXRPC_CALL_COMPLETE, /* - call complete */
611 * RxRPC call definition
616 struct rxrpc_connection *conn; /* connection carrying call */
621 struct rxrpc_net *rxnet; /* Network namespace to which call belongs */
633 ktime_t expect_term_by; /* When we expect call termination by */
640 struct list_head link; /* link in master call list */
651 unsigned long user_call_ID; /* user-defined call ID */
661 enum rxrpc_call_state _state; /* Current state of call (needs barrier) */
665 enum rxrpc_interruptibility interruptibility; /* At what point call may be interrupted */
666 u32 call_id; /* call ID on connection */
692 rxrpc_serial_t rx_serial; /* Highest serial received for this call */
767 RXRPC_CMD_REJECT_BUSY, /* [server] reject a call as busy */
773 unsigned long user_call_ID; /* User's call ID */
777 u32 normal; /* Max time since last call packet (msec) */
780 bool kernel; /* T if kernel is making the call */
781 enum rxrpc_interruptibility interruptibility; /* How is interruptible is the call? */
785 struct rxrpc_call_params call;
788 bool exclusive; /* Shared or exclusive call */
796 struct list_head call_link; /* Link in call->tx_sendmsg/tx_buffer */
865 void rxrpc_propose_ping(struct rxrpc_call *call, u32 serial,
870 void rxrpc_resend(struct rxrpc_call *call, struct sk_buff *ack_skb);
872 bool rxrpc_input_call_event(struct rxrpc_call *call, struct sk_buff *skb);
881 void rxrpc_poke_call(struct rxrpc_call *call, enum rxrpc_call_poke_trace what);
888 void rxrpc_start_call_timer(struct rxrpc_call *call);
900 static inline bool rxrpc_is_service_call(const struct rxrpc_call *call)
902 return test_bit(RXRPC_CALL_IS_SERVICE, &call->flags);
905 static inline bool rxrpc_is_client_call(const struct rxrpc_call *call)
907 return !rxrpc_is_service_call(call);
913 bool rxrpc_set_call_completion(struct rxrpc_call *call,
917 bool rxrpc_call_completed(struct rxrpc_call *call);
918 bool rxrpc_abort_call(struct rxrpc_call *call, rxrpc_seq_t seq,
920 void rxrpc_prefail_call(struct rxrpc_call *call, enum rxrpc_call_completion compl,
923 static inline void rxrpc_set_call_state(struct rxrpc_call *call,
927 smp_store_release(&call->_state, state);
928 wake_up(&call->waitq);
931 static inline enum rxrpc_call_state __rxrpc_call_state(const struct rxrpc_call *call)
933 return call->_state; /* Only inside I/O thread */
936 static inline bool __rxrpc_call_is_complete(const struct rxrpc_call *call)
938 return __rxrpc_call_state(call) == RXRPC_CALL_COMPLETE;
941 static inline enum rxrpc_call_state rxrpc_call_state(const struct rxrpc_call *call)
944 return smp_load_acquire(&call->_state);
947 static inline bool rxrpc_call_is_complete(const struct rxrpc_call *call)
949 return rxrpc_call_state(call) == RXRPC_CALL_COMPLETE;
952 static inline bool rxrpc_call_has_failed(const struct rxrpc_call *call)
954 return rxrpc_call_is_complete(call) && call->completion != RXRPC_CALL_SUCCEEDED;
967 int rxrpc_look_up_bundle(struct rxrpc_call *call, gfp_t gfp);
1152 void rxrpc_send_ACK(struct rxrpc_call *call, u8 ack_reason,
1158 void rxrpc_transmit_one(struct rxrpc_call *call, struct rxrpc_txbuf *txb);
1197 * Abort a call due to a protocol error.
1199 static inline int rxrpc_abort_eproto(struct rxrpc_call *call,
1206 rxrpc_abort_call(call, sp->hdr.seq, abort_code, -EPROTO, why);
1241 bool rxrpc_propose_abort(struct rxrpc_call *call, s32 abort_code, int error,
1287 struct rxrpc_txbuf *rxrpc_alloc_data_txbuf(struct rxrpc_call *call, size_t data_size,
1289 struct rxrpc_txbuf *rxrpc_alloc_ack_txbuf(struct rxrpc_call *call, size_t sack_size);