Lines Matching defs:vcp

60         struct venus_comm *vcp = (struct venus_comm *) file->private_data;
63 poll_wait(file, &vcp->vc_waitq, wait);
64 mutex_lock(&vcp->vc_mutex);
65 if (!list_empty(&vcp->vc_pending))
67 mutex_unlock(&vcp->vc_mutex);
94 struct venus_comm *vcp = (struct venus_comm *) file->private_data;
133 error = coda_downcall(vcp, hdr.opcode, dcbuf, nbytes);
147 mutex_lock(&vcp->vc_mutex);
148 list_for_each(lh, &vcp->vc_processing) {
156 mutex_unlock(&vcp->vc_mutex);
208 struct venus_comm *vcp = (struct venus_comm *) file->private_data;
215 mutex_lock(&vcp->vc_mutex);
217 add_wait_queue(&vcp->vc_waitq, &wait);
220 while (list_empty(&vcp->vc_pending)) {
229 mutex_unlock(&vcp->vc_mutex);
231 mutex_lock(&vcp->vc_mutex);
235 remove_wait_queue(&vcp->vc_waitq, &wait);
240 req = list_entry(vcp->vc_pending.next, struct upc_req,uc_chain);
257 list_add_tail(&(req->uc_chain), &vcp->vc_processing);
264 mutex_unlock(&vcp->vc_mutex);
270 struct venus_comm *vcp;
284 vcp = &coda_comms[idx];
285 mutex_lock(&vcp->vc_mutex);
287 if (!vcp->vc_inuse) {
288 vcp->vc_inuse++;
290 INIT_LIST_HEAD(&vcp->vc_pending);
291 INIT_LIST_HEAD(&vcp->vc_processing);
292 init_waitqueue_head(&vcp->vc_waitq);
293 vcp->vc_sb = NULL;
294 vcp->vc_seq = 0;
296 file->private_data = vcp;
300 mutex_unlock(&vcp->vc_mutex);
307 struct venus_comm *vcp = (struct venus_comm *) file->private_data;
310 if (!vcp || !vcp->vc_inuse ) {
315 mutex_lock(&vcp->vc_mutex);
318 list_for_each_entry_safe(req, tmp, &vcp->vc_pending, uc_chain) {
331 list_for_each_entry_safe(req, tmp, &vcp->vc_processing, uc_chain) {
339 vcp->vc_inuse--;
340 mutex_unlock(&vcp->vc_mutex);