Lines Matching refs:work

101 void ksmbd_conn_enqueue_request(struct ksmbd_work *work)  in ksmbd_conn_enqueue_request()  argument
103 struct ksmbd_conn *conn = work->conn; in ksmbd_conn_enqueue_request()
106 if (conn->ops->get_cmd_val(work) != SMB2_CANCEL_HE) { in ksmbd_conn_enqueue_request()
108 work->syncronous = true; in ksmbd_conn_enqueue_request()
114 list_add_tail(&work->request_entry, requests_queue); in ksmbd_conn_enqueue_request()
119 int ksmbd_conn_try_dequeue_request(struct ksmbd_work *work) in ksmbd_conn_try_dequeue_request() argument
121 struct ksmbd_conn *conn = work->conn; in ksmbd_conn_try_dequeue_request()
124 if (list_empty(&work->request_entry) && in ksmbd_conn_try_dequeue_request()
125 list_empty(&work->async_request_entry)) in ksmbd_conn_try_dequeue_request()
128 if (!work->multiRsp) in ksmbd_conn_try_dequeue_request()
131 if (!work->multiRsp) { in ksmbd_conn_try_dequeue_request()
132 list_del_init(&work->request_entry); in ksmbd_conn_try_dequeue_request()
133 if (work->syncronous == false) in ksmbd_conn_try_dequeue_request()
134 list_del_init(&work->async_request_entry); in ksmbd_conn_try_dequeue_request()
158 int ksmbd_conn_write(struct ksmbd_work *work) in ksmbd_conn_write() argument
160 struct ksmbd_conn *conn = work->conn; in ksmbd_conn_write()
166 ksmbd_conn_try_dequeue_request(work); in ksmbd_conn_write()
167 if (!work->response_buf) { in ksmbd_conn_write()
172 if (work->tr_buf) { in ksmbd_conn_write()
173 iov[iov_idx] = (struct kvec) { work->tr_buf, in ksmbd_conn_write()
178 if (work->aux_payload_sz) { in ksmbd_conn_write()
179 iov[iov_idx] = (struct kvec) { work->response_buf, work->resp_hdr_sz }; in ksmbd_conn_write()
181 iov[iov_idx] = (struct kvec) { work->aux_payload_buf, work->aux_payload_sz }; in ksmbd_conn_write()
184 if (work->tr_buf) in ksmbd_conn_write()
185 iov[iov_idx].iov_len = work->resp_hdr_sz; in ksmbd_conn_write()
187 iov[iov_idx].iov_len = get_rfc1002_len(work->response_buf) + 4; in ksmbd_conn_write()
188 iov[iov_idx].iov_base = work->response_buf; in ksmbd_conn_write()
195 work->need_invalidate_rkey, in ksmbd_conn_write()
196 work->remote_key); in ksmbd_conn_write()