Lines Matching refs:sess

19 ksmbd_tree_conn_connect(struct ksmbd_conn *conn, struct ksmbd_session *sess,  in ksmbd_tree_conn_connect()  argument
39 tree_conn->id = ksmbd_acquire_tree_conn_id(sess); in ksmbd_tree_conn_connect()
46 resp = ksmbd_ipc_tree_connect_request(sess, in ksmbd_tree_conn_connect()
74 tree_conn->user = sess->user; in ksmbd_tree_conn_connect()
81 ret = xa_err(xa_store(&sess->tree_conns, tree_conn->id, tree_conn, in ksmbd_tree_conn_connect()
92 ksmbd_release_tree_conn_id(sess, tree_conn->id); in ksmbd_tree_conn_connect()
111 int ksmbd_tree_conn_disconnect(struct ksmbd_session *sess, in ksmbd_tree_conn_disconnect() argument
116 write_lock(&sess->tree_conns_lock); in ksmbd_tree_conn_disconnect()
117 xa_erase(&sess->tree_conns, tree_conn->id); in ksmbd_tree_conn_disconnect()
118 write_unlock(&sess->tree_conns_lock); in ksmbd_tree_conn_disconnect()
124 ret = ksmbd_ipc_tree_disconnect_request(sess->id, tree_conn->id); in ksmbd_tree_conn_disconnect()
125 ksmbd_release_tree_conn_id(sess, tree_conn->id); in ksmbd_tree_conn_disconnect()
131 struct ksmbd_tree_connect *ksmbd_tree_conn_lookup(struct ksmbd_session *sess, in ksmbd_tree_conn_lookup() argument
136 read_lock(&sess->tree_conns_lock); in ksmbd_tree_conn_lookup()
137 tcon = xa_load(&sess->tree_conns, id); in ksmbd_tree_conn_lookup()
144 read_unlock(&sess->tree_conns_lock); in ksmbd_tree_conn_lookup()
149 int ksmbd_tree_conn_session_logoff(struct ksmbd_session *sess) in ksmbd_tree_conn_session_logoff() argument
155 if (!sess) in ksmbd_tree_conn_session_logoff()
158 xa_for_each(&sess->tree_conns, id, tc) { in ksmbd_tree_conn_session_logoff()
159 write_lock(&sess->tree_conns_lock); in ksmbd_tree_conn_session_logoff()
161 write_unlock(&sess->tree_conns_lock); in ksmbd_tree_conn_session_logoff()
166 write_unlock(&sess->tree_conns_lock); in ksmbd_tree_conn_session_logoff()
168 ret |= ksmbd_tree_conn_disconnect(sess, tc); in ksmbd_tree_conn_session_logoff()
170 xa_destroy(&sess->tree_conns); in ksmbd_tree_conn_session_logoff()