Lines Matching refs:work
112 void ksmbd_conn_enqueue_request(struct ksmbd_work *work) in ksmbd_conn_enqueue_request() argument
114 struct ksmbd_conn *conn = work->conn; in ksmbd_conn_enqueue_request()
117 if (conn->ops->get_cmd_val(work) != SMB2_CANCEL_HE) in ksmbd_conn_enqueue_request()
123 list_add_tail(&work->request_entry, requests_queue); in ksmbd_conn_enqueue_request()
128 void ksmbd_conn_try_dequeue_request(struct ksmbd_work *work) in ksmbd_conn_try_dequeue_request() argument
130 struct ksmbd_conn *conn = work->conn; in ksmbd_conn_try_dequeue_request()
132 if (list_empty(&work->request_entry) && in ksmbd_conn_try_dequeue_request()
133 list_empty(&work->async_request_entry)) in ksmbd_conn_try_dequeue_request()
138 list_del_init(&work->request_entry); in ksmbd_conn_try_dequeue_request()
140 if (work->asynchronous) in ksmbd_conn_try_dequeue_request()
141 release_async_work(work); in ksmbd_conn_try_dequeue_request()
173 int ksmbd_conn_write(struct ksmbd_work *work) in ksmbd_conn_write() argument
175 struct ksmbd_conn *conn = work->conn; in ksmbd_conn_write()
178 if (!work->response_buf) { in ksmbd_conn_write()
183 if (work->send_no_response) in ksmbd_conn_write()
186 if (!work->iov_idx) in ksmbd_conn_write()
190 sent = conn->transport->ops->writev(conn->transport, work->iov, in ksmbd_conn_write()
191 work->iov_cnt, in ksmbd_conn_write()
192 get_rfc1002_len(work->iov[0].iov_base) + 4, in ksmbd_conn_write()
193 work->need_invalidate_rkey, in ksmbd_conn_write()
194 work->remote_key); in ksmbd_conn_write()