Lines Matching refs:call
238 static int afs_deliver_fs_fetch_status(struct afs_call *call, in afs_deliver_fs_fetch_status() argument
241 struct afs_vnode *vnode = call->reply; in afs_deliver_fs_fetch_status()
246 afs_transfer_reply(call, skb); in afs_deliver_fs_fetch_status()
250 if (call->reply_size != call->reply_max) in afs_deliver_fs_fetch_status()
254 bp = call->buffer; in afs_deliver_fs_fetch_status()
257 if (call->reply2) in afs_deliver_fs_fetch_status()
258 xdr_decode_AFSVolSync(&bp, call->reply2); in afs_deliver_fs_fetch_status()
283 struct afs_call *call; in afs_fs_fetch_file_status() local
289 call = afs_alloc_flat_call(&afs_RXFSFetchStatus, 16, (21 + 3 + 6) * 4); in afs_fs_fetch_file_status()
290 if (!call) in afs_fs_fetch_file_status()
293 call->key = key; in afs_fs_fetch_file_status()
294 call->reply = vnode; in afs_fs_fetch_file_status()
295 call->reply2 = volsync; in afs_fs_fetch_file_status()
296 call->service_id = FS_SERVICE; in afs_fs_fetch_file_status()
297 call->port = htons(AFS_FS_PORT); in afs_fs_fetch_file_status()
300 bp = call->request; in afs_fs_fetch_file_status()
306 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_fetch_file_status()
312 static int afs_deliver_fs_fetch_data(struct afs_call *call, in afs_deliver_fs_fetch_data() argument
315 struct afs_vnode *vnode = call->reply; in afs_deliver_fs_fetch_data()
321 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_fetch_data()
323 switch (call->unmarshall) { in afs_deliver_fs_fetch_data()
325 call->offset = 0; in afs_deliver_fs_fetch_data()
326 call->unmarshall++; in afs_deliver_fs_fetch_data()
327 if (call->operation_ID != FSFETCHDATA64) { in afs_deliver_fs_fetch_data()
328 call->unmarshall++; in afs_deliver_fs_fetch_data()
337 ret = afs_extract_data(call, skb, last, &call->tmp, 4); in afs_deliver_fs_fetch_data()
344 call->count = ntohl(call->tmp); in afs_deliver_fs_fetch_data()
345 _debug("DATA length MSW: %u", call->count); in afs_deliver_fs_fetch_data()
346 if (call->count > 0) in afs_deliver_fs_fetch_data()
348 call->offset = 0; in afs_deliver_fs_fetch_data()
349 call->unmarshall++; in afs_deliver_fs_fetch_data()
355 ret = afs_extract_data(call, skb, last, &call->tmp, 4); in afs_deliver_fs_fetch_data()
362 call->count = ntohl(call->tmp); in afs_deliver_fs_fetch_data()
363 _debug("DATA length: %u", call->count); in afs_deliver_fs_fetch_data()
364 if (call->count > PAGE_SIZE) in afs_deliver_fs_fetch_data()
366 call->offset = 0; in afs_deliver_fs_fetch_data()
367 call->unmarshall++; in afs_deliver_fs_fetch_data()
372 if (call->count > 0) { in afs_deliver_fs_fetch_data()
373 page = call->reply3; in afs_deliver_fs_fetch_data()
375 ret = afs_extract_data(call, skb, last, buffer, in afs_deliver_fs_fetch_data()
376 call->count); in afs_deliver_fs_fetch_data()
385 call->offset = 0; in afs_deliver_fs_fetch_data()
386 call->unmarshall++; in afs_deliver_fs_fetch_data()
390 ret = afs_extract_data(call, skb, last, call->buffer, in afs_deliver_fs_fetch_data()
398 bp = call->buffer; in afs_deliver_fs_fetch_data()
401 if (call->reply2) in afs_deliver_fs_fetch_data()
402 xdr_decode_AFSVolSync(&bp, call->reply2); in afs_deliver_fs_fetch_data()
404 call->offset = 0; in afs_deliver_fs_fetch_data()
405 call->unmarshall++; in afs_deliver_fs_fetch_data()
417 if (call->count < PAGE_SIZE) { in afs_deliver_fs_fetch_data()
419 page = call->reply3; in afs_deliver_fs_fetch_data()
421 memset(buffer + call->count, 0, PAGE_SIZE - call->count); in afs_deliver_fs_fetch_data()
456 struct afs_call *call; in afs_fs_fetch_data64() local
463 call = afs_alloc_flat_call(&afs_RXFSFetchData64, 32, (21 + 3 + 6) * 4); in afs_fs_fetch_data64()
464 if (!call) in afs_fs_fetch_data64()
467 call->key = key; in afs_fs_fetch_data64()
468 call->reply = vnode; in afs_fs_fetch_data64()
469 call->reply2 = NULL; /* volsync */ in afs_fs_fetch_data64()
470 call->reply3 = buffer; in afs_fs_fetch_data64()
471 call->service_id = FS_SERVICE; in afs_fs_fetch_data64()
472 call->port = htons(AFS_FS_PORT); in afs_fs_fetch_data64()
473 call->operation_ID = FSFETCHDATA64; in afs_fs_fetch_data64()
476 bp = call->request; in afs_fs_fetch_data64()
486 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_fetch_data64()
499 struct afs_call *call; in afs_fs_fetch_data() local
508 call = afs_alloc_flat_call(&afs_RXFSFetchData, 24, (21 + 3 + 6) * 4); in afs_fs_fetch_data()
509 if (!call) in afs_fs_fetch_data()
512 call->key = key; in afs_fs_fetch_data()
513 call->reply = vnode; in afs_fs_fetch_data()
514 call->reply2 = NULL; /* volsync */ in afs_fs_fetch_data()
515 call->reply3 = buffer; in afs_fs_fetch_data()
516 call->service_id = FS_SERVICE; in afs_fs_fetch_data()
517 call->port = htons(AFS_FS_PORT); in afs_fs_fetch_data()
518 call->operation_ID = FSFETCHDATA; in afs_fs_fetch_data()
521 bp = call->request; in afs_fs_fetch_data()
529 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_fetch_data()
535 static int afs_deliver_fs_give_up_callbacks(struct afs_call *call, in afs_deliver_fs_give_up_callbacks() argument
562 struct afs_call *call; in afs_fs_give_up_callbacks() local
579 call = afs_alloc_flat_call(&afs_RXFSGiveUpCallBacks, in afs_fs_give_up_callbacks()
581 if (!call) in afs_fs_give_up_callbacks()
584 call->service_id = FS_SERVICE; in afs_fs_give_up_callbacks()
585 call->port = htons(AFS_FS_PORT); in afs_fs_give_up_callbacks()
588 bp = call->request; in afs_fs_give_up_callbacks()
614 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_give_up_callbacks()
620 static int afs_deliver_fs_create_vnode(struct afs_call *call, in afs_deliver_fs_create_vnode() argument
623 struct afs_vnode *vnode = call->reply; in afs_deliver_fs_create_vnode()
626 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_create_vnode()
628 afs_transfer_reply(call, skb); in afs_deliver_fs_create_vnode()
632 if (call->reply_size != call->reply_max) in afs_deliver_fs_create_vnode()
636 bp = call->buffer; in afs_deliver_fs_create_vnode()
637 xdr_decode_AFSFid(&bp, call->reply2); in afs_deliver_fs_create_vnode()
638 xdr_decode_AFSFetchStatus(&bp, call->reply3, NULL, NULL); in afs_deliver_fs_create_vnode()
640 xdr_decode_AFSCallBack_raw(&bp, call->reply4); in afs_deliver_fs_create_vnode()
670 struct afs_call *call; in afs_fs_create() local
680 call = afs_alloc_flat_call(&afs_RXFSCreateXXXX, reqsz, in afs_fs_create()
682 if (!call) in afs_fs_create()
685 call->key = key; in afs_fs_create()
686 call->reply = vnode; in afs_fs_create()
687 call->reply2 = newfid; in afs_fs_create()
688 call->reply3 = newstatus; in afs_fs_create()
689 call->reply4 = newcb; in afs_fs_create()
690 call->service_id = FS_SERVICE; in afs_fs_create()
691 call->port = htons(AFS_FS_PORT); in afs_fs_create()
694 bp = call->request; in afs_fs_create()
713 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_create()
719 static int afs_deliver_fs_remove(struct afs_call *call, in afs_deliver_fs_remove() argument
722 struct afs_vnode *vnode = call->reply; in afs_deliver_fs_remove()
725 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_remove()
727 afs_transfer_reply(call, skb); in afs_deliver_fs_remove()
731 if (call->reply_size != call->reply_max) in afs_deliver_fs_remove()
735 bp = call->buffer; in afs_deliver_fs_remove()
763 struct afs_call *call; in afs_fs_remove() local
773 call = afs_alloc_flat_call(&afs_RXFSRemoveXXXX, reqsz, (21 + 6) * 4); in afs_fs_remove()
774 if (!call) in afs_fs_remove()
777 call->key = key; in afs_fs_remove()
778 call->reply = vnode; in afs_fs_remove()
779 call->service_id = FS_SERVICE; in afs_fs_remove()
780 call->port = htons(AFS_FS_PORT); in afs_fs_remove()
783 bp = call->request; in afs_fs_remove()
796 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_remove()
802 static int afs_deliver_fs_link(struct afs_call *call, in afs_deliver_fs_link() argument
805 struct afs_vnode *dvnode = call->reply, *vnode = call->reply2; in afs_deliver_fs_link()
808 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_link()
810 afs_transfer_reply(call, skb); in afs_deliver_fs_link()
814 if (call->reply_size != call->reply_max) in afs_deliver_fs_link()
818 bp = call->buffer; in afs_deliver_fs_link()
847 struct afs_call *call; in afs_fs_link() local
857 call = afs_alloc_flat_call(&afs_RXFSLink, reqsz, (21 + 21 + 6) * 4); in afs_fs_link()
858 if (!call) in afs_fs_link()
861 call->key = key; in afs_fs_link()
862 call->reply = dvnode; in afs_fs_link()
863 call->reply2 = vnode; in afs_fs_link()
864 call->service_id = FS_SERVICE; in afs_fs_link()
865 call->port = htons(AFS_FS_PORT); in afs_fs_link()
868 bp = call->request; in afs_fs_link()
884 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_link()
890 static int afs_deliver_fs_symlink(struct afs_call *call, in afs_deliver_fs_symlink() argument
893 struct afs_vnode *vnode = call->reply; in afs_deliver_fs_symlink()
896 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_symlink()
898 afs_transfer_reply(call, skb); in afs_deliver_fs_symlink()
902 if (call->reply_size != call->reply_max) in afs_deliver_fs_symlink()
906 bp = call->buffer; in afs_deliver_fs_symlink()
907 xdr_decode_AFSFid(&bp, call->reply2); in afs_deliver_fs_symlink()
908 xdr_decode_AFSFetchStatus(&bp, call->reply3, NULL, NULL); in afs_deliver_fs_symlink()
938 struct afs_call *call; in afs_fs_symlink() local
952 call = afs_alloc_flat_call(&afs_RXFSSymlink, reqsz, in afs_fs_symlink()
954 if (!call) in afs_fs_symlink()
957 call->key = key; in afs_fs_symlink()
958 call->reply = vnode; in afs_fs_symlink()
959 call->reply2 = newfid; in afs_fs_symlink()
960 call->reply3 = newstatus; in afs_fs_symlink()
961 call->service_id = FS_SERVICE; in afs_fs_symlink()
962 call->port = htons(AFS_FS_PORT); in afs_fs_symlink()
965 bp = call->request; in afs_fs_symlink()
991 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_symlink()
997 static int afs_deliver_fs_rename(struct afs_call *call, in afs_deliver_fs_rename() argument
1000 struct afs_vnode *orig_dvnode = call->reply, *new_dvnode = call->reply2; in afs_deliver_fs_rename()
1003 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_rename()
1005 afs_transfer_reply(call, skb); in afs_deliver_fs_rename()
1009 if (call->reply_size != call->reply_max) in afs_deliver_fs_rename()
1013 bp = call->buffer; in afs_deliver_fs_rename()
1045 struct afs_call *call; in afs_fs_rename() local
1062 call = afs_alloc_flat_call(&afs_RXFSRename, reqsz, (21 + 21 + 6) * 4); in afs_fs_rename()
1063 if (!call) in afs_fs_rename()
1066 call->key = key; in afs_fs_rename()
1067 call->reply = orig_dvnode; in afs_fs_rename()
1068 call->reply2 = new_dvnode; in afs_fs_rename()
1069 call->service_id = FS_SERVICE; in afs_fs_rename()
1070 call->port = htons(AFS_FS_PORT); in afs_fs_rename()
1073 bp = call->request; in afs_fs_rename()
1097 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_rename()
1103 static int afs_deliver_fs_store_data(struct afs_call *call, in afs_deliver_fs_store_data() argument
1106 struct afs_vnode *vnode = call->reply; in afs_deliver_fs_store_data()
1111 afs_transfer_reply(call, skb); in afs_deliver_fs_store_data()
1117 if (call->reply_size != call->reply_max) { in afs_deliver_fs_store_data()
1119 call->reply_size, call->reply_max); in afs_deliver_fs_store_data()
1124 bp = call->buffer; in afs_deliver_fs_store_data()
1126 &call->store_version); in afs_deliver_fs_store_data()
1129 afs_pages_written_back(vnode, call); in afs_deliver_fs_store_data()
1163 struct afs_call *call; in afs_fs_store_data64() local
1169 call = afs_alloc_flat_call(&afs_RXFSStoreData64, in afs_fs_store_data64()
1172 if (!call) in afs_fs_store_data64()
1175 call->wb = wb; in afs_fs_store_data64()
1176 call->key = wb->key; in afs_fs_store_data64()
1177 call->reply = vnode; in afs_fs_store_data64()
1178 call->service_id = FS_SERVICE; in afs_fs_store_data64()
1179 call->port = htons(AFS_FS_PORT); in afs_fs_store_data64()
1180 call->mapping = vnode->vfs_inode.i_mapping; in afs_fs_store_data64()
1181 call->first = first; in afs_fs_store_data64()
1182 call->last = last; in afs_fs_store_data64()
1183 call->first_offset = offset; in afs_fs_store_data64()
1184 call->last_to = to; in afs_fs_store_data64()
1185 call->send_pages = true; in afs_fs_store_data64()
1186 call->store_version = vnode->status.data_version + 1; in afs_fs_store_data64()
1189 bp = call->request; in afs_fs_store_data64()
1209 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_store_data64()
1221 struct afs_call *call; in afs_fs_store_data() local
1246 call = afs_alloc_flat_call(&afs_RXFSStoreData, in afs_fs_store_data()
1249 if (!call) in afs_fs_store_data()
1252 call->wb = wb; in afs_fs_store_data()
1253 call->key = wb->key; in afs_fs_store_data()
1254 call->reply = vnode; in afs_fs_store_data()
1255 call->service_id = FS_SERVICE; in afs_fs_store_data()
1256 call->port = htons(AFS_FS_PORT); in afs_fs_store_data()
1257 call->mapping = vnode->vfs_inode.i_mapping; in afs_fs_store_data()
1258 call->first = first; in afs_fs_store_data()
1259 call->last = last; in afs_fs_store_data()
1260 call->first_offset = offset; in afs_fs_store_data()
1261 call->last_to = to; in afs_fs_store_data()
1262 call->send_pages = true; in afs_fs_store_data()
1263 call->store_version = vnode->status.data_version + 1; in afs_fs_store_data()
1266 bp = call->request; in afs_fs_store_data()
1283 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_store_data()
1289 static int afs_deliver_fs_store_status(struct afs_call *call, in afs_deliver_fs_store_status() argument
1293 struct afs_vnode *vnode = call->reply; in afs_deliver_fs_store_status()
1298 afs_transfer_reply(call, skb); in afs_deliver_fs_store_status()
1304 if (call->reply_size != call->reply_max) { in afs_deliver_fs_store_status()
1306 call->reply_size, call->reply_max); in afs_deliver_fs_store_status()
1312 if (call->operation_ID == FSSTOREDATA) in afs_deliver_fs_store_status()
1313 store_version = &call->store_version; in afs_deliver_fs_store_status()
1315 bp = call->buffer; in afs_deliver_fs_store_status()
1355 struct afs_call *call; in afs_fs_setattr_size64() local
1363 call = afs_alloc_flat_call(&afs_RXFSStoreData64_as_Status, in afs_fs_setattr_size64()
1366 if (!call) in afs_fs_setattr_size64()
1369 call->key = key; in afs_fs_setattr_size64()
1370 call->reply = vnode; in afs_fs_setattr_size64()
1371 call->service_id = FS_SERVICE; in afs_fs_setattr_size64()
1372 call->port = htons(AFS_FS_PORT); in afs_fs_setattr_size64()
1373 call->store_version = vnode->status.data_version + 1; in afs_fs_setattr_size64()
1374 call->operation_ID = FSSTOREDATA; in afs_fs_setattr_size64()
1377 bp = call->request; in afs_fs_setattr_size64()
1392 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_setattr_size64()
1403 struct afs_call *call; in afs_fs_setattr_size() local
1414 call = afs_alloc_flat_call(&afs_RXFSStoreData_as_Status, in afs_fs_setattr_size()
1417 if (!call) in afs_fs_setattr_size()
1420 call->key = key; in afs_fs_setattr_size()
1421 call->reply = vnode; in afs_fs_setattr_size()
1422 call->service_id = FS_SERVICE; in afs_fs_setattr_size()
1423 call->port = htons(AFS_FS_PORT); in afs_fs_setattr_size()
1424 call->store_version = vnode->status.data_version + 1; in afs_fs_setattr_size()
1425 call->operation_ID = FSSTOREDATA; in afs_fs_setattr_size()
1428 bp = call->request; in afs_fs_setattr_size()
1440 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_setattr_size()
1451 struct afs_call *call; in afs_fs_setattr() local
1461 call = afs_alloc_flat_call(&afs_RXFSStoreStatus, in afs_fs_setattr()
1464 if (!call) in afs_fs_setattr()
1467 call->key = key; in afs_fs_setattr()
1468 call->reply = vnode; in afs_fs_setattr()
1469 call->service_id = FS_SERVICE; in afs_fs_setattr()
1470 call->port = htons(AFS_FS_PORT); in afs_fs_setattr()
1471 call->operation_ID = FSSTORESTATUS; in afs_fs_setattr()
1474 bp = call->request; in afs_fs_setattr()
1482 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_setattr()
1488 static int afs_deliver_fs_get_volume_status(struct afs_call *call, in afs_deliver_fs_get_volume_status() argument
1495 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_get_volume_status()
1497 switch (call->unmarshall) { in afs_deliver_fs_get_volume_status()
1499 call->offset = 0; in afs_deliver_fs_get_volume_status()
1500 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1505 ret = afs_extract_data(call, skb, last, call->buffer, in afs_deliver_fs_get_volume_status()
1513 bp = call->buffer; in afs_deliver_fs_get_volume_status()
1514 xdr_decode_AFSFetchVolumeStatus(&bp, call->reply2); in afs_deliver_fs_get_volume_status()
1515 call->offset = 0; in afs_deliver_fs_get_volume_status()
1516 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1520 ret = afs_extract_data(call, skb, last, &call->tmp, 4); in afs_deliver_fs_get_volume_status()
1527 call->count = ntohl(call->tmp); in afs_deliver_fs_get_volume_status()
1528 _debug("volname length: %u", call->count); in afs_deliver_fs_get_volume_status()
1529 if (call->count >= AFSNAMEMAX) in afs_deliver_fs_get_volume_status()
1531 call->offset = 0; in afs_deliver_fs_get_volume_status()
1532 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1537 if (call->count > 0) { in afs_deliver_fs_get_volume_status()
1538 ret = afs_extract_data(call, skb, last, call->reply3, in afs_deliver_fs_get_volume_status()
1539 call->count); in afs_deliver_fs_get_volume_status()
1547 p = call->reply3; in afs_deliver_fs_get_volume_status()
1548 p[call->count] = 0; in afs_deliver_fs_get_volume_status()
1551 call->offset = 0; in afs_deliver_fs_get_volume_status()
1552 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1555 if ((call->count & 3) == 0) { in afs_deliver_fs_get_volume_status()
1556 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1559 call->count = 4 - (call->count & 3); in afs_deliver_fs_get_volume_status()
1562 ret = afs_extract_data(call, skb, last, call->buffer, in afs_deliver_fs_get_volume_status()
1563 call->count); in afs_deliver_fs_get_volume_status()
1570 call->offset = 0; in afs_deliver_fs_get_volume_status()
1571 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1576 ret = afs_extract_data(call, skb, last, &call->tmp, 4); in afs_deliver_fs_get_volume_status()
1583 call->count = ntohl(call->tmp); in afs_deliver_fs_get_volume_status()
1584 _debug("offline msg length: %u", call->count); in afs_deliver_fs_get_volume_status()
1585 if (call->count >= AFSNAMEMAX) in afs_deliver_fs_get_volume_status()
1587 call->offset = 0; in afs_deliver_fs_get_volume_status()
1588 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1593 if (call->count > 0) { in afs_deliver_fs_get_volume_status()
1594 ret = afs_extract_data(call, skb, last, call->reply3, in afs_deliver_fs_get_volume_status()
1595 call->count); in afs_deliver_fs_get_volume_status()
1603 p = call->reply3; in afs_deliver_fs_get_volume_status()
1604 p[call->count] = 0; in afs_deliver_fs_get_volume_status()
1607 call->offset = 0; in afs_deliver_fs_get_volume_status()
1608 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1611 if ((call->count & 3) == 0) { in afs_deliver_fs_get_volume_status()
1612 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1615 call->count = 4 - (call->count & 3); in afs_deliver_fs_get_volume_status()
1618 ret = afs_extract_data(call, skb, last, call->buffer, in afs_deliver_fs_get_volume_status()
1619 call->count); in afs_deliver_fs_get_volume_status()
1626 call->offset = 0; in afs_deliver_fs_get_volume_status()
1627 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1632 ret = afs_extract_data(call, skb, last, &call->tmp, 4); in afs_deliver_fs_get_volume_status()
1639 call->count = ntohl(call->tmp); in afs_deliver_fs_get_volume_status()
1640 _debug("motd length: %u", call->count); in afs_deliver_fs_get_volume_status()
1641 if (call->count >= AFSNAMEMAX) in afs_deliver_fs_get_volume_status()
1643 call->offset = 0; in afs_deliver_fs_get_volume_status()
1644 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1649 if (call->count > 0) { in afs_deliver_fs_get_volume_status()
1650 ret = afs_extract_data(call, skb, last, call->reply3, in afs_deliver_fs_get_volume_status()
1651 call->count); in afs_deliver_fs_get_volume_status()
1659 p = call->reply3; in afs_deliver_fs_get_volume_status()
1660 p[call->count] = 0; in afs_deliver_fs_get_volume_status()
1663 call->offset = 0; in afs_deliver_fs_get_volume_status()
1664 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1667 if ((call->count & 3) == 0) { in afs_deliver_fs_get_volume_status()
1668 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1671 call->count = 4 - (call->count & 3); in afs_deliver_fs_get_volume_status()
1674 ret = afs_extract_data(call, skb, last, call->buffer, in afs_deliver_fs_get_volume_status()
1675 call->count); in afs_deliver_fs_get_volume_status()
1682 call->offset = 0; in afs_deliver_fs_get_volume_status()
1683 call->unmarshall++; in afs_deliver_fs_get_volume_status()
1703 static void afs_get_volume_status_call_destructor(struct afs_call *call) in afs_get_volume_status_call_destructor() argument
1705 kfree(call->reply3); in afs_get_volume_status_call_destructor()
1706 call->reply3 = NULL; in afs_get_volume_status_call_destructor()
1707 afs_flat_call_destructor(call); in afs_get_volume_status_call_destructor()
1729 struct afs_call *call; in afs_fs_get_volume_status() local
1739 call = afs_alloc_flat_call(&afs_RXFSGetVolumeStatus, 2 * 4, 12 * 4); in afs_fs_get_volume_status()
1740 if (!call) { in afs_fs_get_volume_status()
1745 call->key = key; in afs_fs_get_volume_status()
1746 call->reply = vnode; in afs_fs_get_volume_status()
1747 call->reply2 = vs; in afs_fs_get_volume_status()
1748 call->reply3 = tmpbuf; in afs_fs_get_volume_status()
1749 call->service_id = FS_SERVICE; in afs_fs_get_volume_status()
1750 call->port = htons(AFS_FS_PORT); in afs_fs_get_volume_status()
1753 bp = call->request; in afs_fs_get_volume_status()
1757 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_get_volume_status()
1763 static int afs_deliver_fs_xxxx_lock(struct afs_call *call, in afs_deliver_fs_xxxx_lock() argument
1768 _enter("{%u},{%u},%d", call->unmarshall, skb->len, last); in afs_deliver_fs_xxxx_lock()
1770 afs_transfer_reply(call, skb); in afs_deliver_fs_xxxx_lock()
1774 if (call->reply_size != call->reply_max) in afs_deliver_fs_xxxx_lock()
1778 bp = call->buffer; in afs_deliver_fs_xxxx_lock()
1824 struct afs_call *call; in afs_fs_set_lock() local
1829 call = afs_alloc_flat_call(&afs_RXFSSetLock, 5 * 4, 6 * 4); in afs_fs_set_lock()
1830 if (!call) in afs_fs_set_lock()
1833 call->key = key; in afs_fs_set_lock()
1834 call->reply = vnode; in afs_fs_set_lock()
1835 call->service_id = FS_SERVICE; in afs_fs_set_lock()
1836 call->port = htons(AFS_FS_PORT); in afs_fs_set_lock()
1839 bp = call->request; in afs_fs_set_lock()
1846 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_set_lock()
1857 struct afs_call *call; in afs_fs_extend_lock() local
1862 call = afs_alloc_flat_call(&afs_RXFSExtendLock, 4 * 4, 6 * 4); in afs_fs_extend_lock()
1863 if (!call) in afs_fs_extend_lock()
1866 call->key = key; in afs_fs_extend_lock()
1867 call->reply = vnode; in afs_fs_extend_lock()
1868 call->service_id = FS_SERVICE; in afs_fs_extend_lock()
1869 call->port = htons(AFS_FS_PORT); in afs_fs_extend_lock()
1872 bp = call->request; in afs_fs_extend_lock()
1878 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_extend_lock()
1889 struct afs_call *call; in afs_fs_release_lock() local
1894 call = afs_alloc_flat_call(&afs_RXFSReleaseLock, 4 * 4, 6 * 4); in afs_fs_release_lock()
1895 if (!call) in afs_fs_release_lock()
1898 call->key = key; in afs_fs_release_lock()
1899 call->reply = vnode; in afs_fs_release_lock()
1900 call->service_id = FS_SERVICE; in afs_fs_release_lock()
1901 call->port = htons(AFS_FS_PORT); in afs_fs_release_lock()
1904 bp = call->request; in afs_fs_release_lock()
1910 return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode); in afs_fs_release_lock()