Lines Matching refs:call
138 static void yfs_check_req(struct afs_call *call, __be32 *bp) in yfs_check_req() argument
140 size_t len = (void *)bp - call->request; in yfs_check_req()
142 if (len > call->request_size) in yfs_check_req()
144 call->type->name, len, call->request_size); in yfs_check_req()
145 else if (len < call->request_size) in yfs_check_req()
147 call->type->name, len, call->request_size); in yfs_check_req()
174 struct afs_call *call, in xdr_decode_YFSFetchStatus() argument
220 afs_protocol_error(call, afs_eproto_bad_status); in xdr_decode_YFSFetchStatus()
228 struct afs_call *call, in xdr_decode_YFSCallBack() argument
235 cb_expiry = ktime_add(call->issue_time, xdr_to_u64(x->expiration_time) * 100); in xdr_decode_YFSCallBack()
328 static int yfs_deliver_status_and_volsync(struct afs_call *call) in yfs_deliver_status_and_volsync() argument
330 struct afs_operation *op = call->op; in yfs_deliver_status_and_volsync()
334 ret = afs_transfer_reply(call); in yfs_deliver_status_and_volsync()
338 bp = call->buffer; in yfs_deliver_status_and_volsync()
339 xdr_decode_YFSFetchStatus(&bp, call, &op->file[0].scb); in yfs_deliver_status_and_volsync()
349 static int yfs_deliver_fs_fetch_data64(struct afs_call *call) in yfs_deliver_fs_fetch_data64() argument
351 struct afs_operation *op = call->op; in yfs_deliver_fs_fetch_data64()
358 call->unmarshall, call->iov_len, iov_iter_count(call->iter), in yfs_deliver_fs_fetch_data64()
361 switch (call->unmarshall) { in yfs_deliver_fs_fetch_data64()
364 afs_extract_to_tmp64(call); in yfs_deliver_fs_fetch_data64()
365 call->unmarshall++; in yfs_deliver_fs_fetch_data64()
374 ret = afs_extract_data(call, true); in yfs_deliver_fs_fetch_data64()
378 req->actual_len = be64_to_cpu(call->tmp64); in yfs_deliver_fs_fetch_data64()
384 call->iter = req->iter; in yfs_deliver_fs_fetch_data64()
385 call->iov_len = min(req->actual_len, req->len); in yfs_deliver_fs_fetch_data64()
386 call->unmarshall++; in yfs_deliver_fs_fetch_data64()
392 iov_iter_count(call->iter), req->actual_len); in yfs_deliver_fs_fetch_data64()
394 ret = afs_extract_data(call, true); in yfs_deliver_fs_fetch_data64()
398 call->iter = &call->def_iter; in yfs_deliver_fs_fetch_data64()
403 afs_extract_discard(call, req->actual_len - req->len); in yfs_deliver_fs_fetch_data64()
404 call->unmarshall = 3; in yfs_deliver_fs_fetch_data64()
409 iov_iter_count(call->iter), req->actual_len - req->len); in yfs_deliver_fs_fetch_data64()
411 ret = afs_extract_data(call, true); in yfs_deliver_fs_fetch_data64()
416 call->unmarshall = 4; in yfs_deliver_fs_fetch_data64()
417 afs_extract_to_buf(call, in yfs_deliver_fs_fetch_data64()
425 ret = afs_extract_data(call, false); in yfs_deliver_fs_fetch_data64()
429 bp = call->buffer; in yfs_deliver_fs_fetch_data64()
430 xdr_decode_YFSFetchStatus(&bp, call, &vp->scb); in yfs_deliver_fs_fetch_data64()
431 xdr_decode_YFSCallBack(&bp, call, &vp->scb); in yfs_deliver_fs_fetch_data64()
437 call->unmarshall++; in yfs_deliver_fs_fetch_data64()
465 struct afs_call *call; in yfs_fs_fetch_data() local
472 call = afs_alloc_flat_call(op->net, &yfs_RXYFSFetchData64, in yfs_fs_fetch_data()
479 if (!call) in yfs_fs_fetch_data()
482 req->call_debug_id = call->debug_id; in yfs_fs_fetch_data()
485 bp = call->request; in yfs_fs_fetch_data()
491 yfs_check_req(call, bp); in yfs_fs_fetch_data()
493 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_fetch_data()
494 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_fetch_data()
500 static int yfs_deliver_fs_create_vnode(struct afs_call *call) in yfs_deliver_fs_create_vnode() argument
502 struct afs_operation *op = call->op; in yfs_deliver_fs_create_vnode()
508 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_create_vnode()
510 ret = afs_transfer_reply(call); in yfs_deliver_fs_create_vnode()
515 bp = call->buffer; in yfs_deliver_fs_create_vnode()
517 xdr_decode_YFSFetchStatus(&bp, call, &vp->scb); in yfs_deliver_fs_create_vnode()
518 xdr_decode_YFSFetchStatus(&bp, call, &dvp->scb); in yfs_deliver_fs_create_vnode()
519 xdr_decode_YFSCallBack(&bp, call, &vp->scb); in yfs_deliver_fs_create_vnode()
543 struct afs_call *call; in yfs_fs_create_file() local
561 call = afs_alloc_flat_call(op->net, &afs_RXFSCreateFile, reqsz, rplsz); in yfs_fs_create_file()
562 if (!call) in yfs_fs_create_file()
566 bp = call->request; in yfs_fs_create_file()
573 yfs_check_req(call, bp); in yfs_fs_create_file()
575 trace_afs_make_fs_call1(call, &dvp->fid, name); in yfs_fs_create_file()
576 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_create_file()
593 struct afs_call *call; in yfs_fs_make_dir() local
610 call = afs_alloc_flat_call(op->net, &yfs_RXFSMakeDir, reqsz, rplsz); in yfs_fs_make_dir()
611 if (!call) in yfs_fs_make_dir()
615 bp = call->request; in yfs_fs_make_dir()
621 yfs_check_req(call, bp); in yfs_fs_make_dir()
623 trace_afs_make_fs_call1(call, &dvp->fid, name); in yfs_fs_make_dir()
624 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_make_dir()
630 static int yfs_deliver_fs_remove_file2(struct afs_call *call) in yfs_deliver_fs_remove_file2() argument
632 struct afs_operation *op = call->op; in yfs_deliver_fs_remove_file2()
639 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_remove_file2()
641 ret = afs_transfer_reply(call); in yfs_deliver_fs_remove_file2()
645 bp = call->buffer; in yfs_deliver_fs_remove_file2()
646 xdr_decode_YFSFetchStatus(&bp, call, &dvp->scb); in yfs_deliver_fs_remove_file2()
648 xdr_decode_YFSFetchStatus(&bp, call, &vp->scb); in yfs_deliver_fs_remove_file2()
655 static void yfs_done_fs_remove_file2(struct afs_call *call) in yfs_done_fs_remove_file2() argument
657 if (call->error == -ECONNABORTED && in yfs_done_fs_remove_file2()
658 call->abort_code == RX_INVALID_OPERATION) { in yfs_done_fs_remove_file2()
659 set_bit(AFS_SERVER_FL_NO_RM2, &call->server->flags); in yfs_done_fs_remove_file2()
660 call->op->flags |= AFS_OPERATION_DOWNGRADE; in yfs_done_fs_remove_file2()
682 struct afs_call *call; in yfs_fs_remove_file2() local
687 call = afs_alloc_flat_call(op->net, &yfs_RXYFSRemoveFile2, in yfs_fs_remove_file2()
696 if (!call) in yfs_fs_remove_file2()
700 bp = call->request; in yfs_fs_remove_file2()
705 yfs_check_req(call, bp); in yfs_fs_remove_file2()
707 trace_afs_make_fs_call1(call, &dvp->fid, name); in yfs_fs_remove_file2()
708 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_remove_file2()
714 static int yfs_deliver_fs_remove(struct afs_call *call) in yfs_deliver_fs_remove() argument
716 struct afs_operation *op = call->op; in yfs_deliver_fs_remove()
721 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_remove()
723 ret = afs_transfer_reply(call); in yfs_deliver_fs_remove()
727 bp = call->buffer; in yfs_deliver_fs_remove()
728 xdr_decode_YFSFetchStatus(&bp, call, &dvp->scb); in yfs_deliver_fs_remove()
750 struct afs_call *call; in yfs_fs_remove_file() local
758 call = afs_alloc_flat_call(op->net, &yfs_RXYFSRemoveFile, in yfs_fs_remove_file()
765 if (!call) in yfs_fs_remove_file()
769 bp = call->request; in yfs_fs_remove_file()
774 yfs_check_req(call, bp); in yfs_fs_remove_file()
776 trace_afs_make_fs_call1(call, &dvp->fid, name); in yfs_fs_remove_file()
777 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_remove_file()
794 struct afs_call *call; in yfs_fs_remove_dir() local
799 call = afs_alloc_flat_call(op->net, &yfs_RXYFSRemoveDir, in yfs_fs_remove_dir()
806 if (!call) in yfs_fs_remove_dir()
810 bp = call->request; in yfs_fs_remove_dir()
815 yfs_check_req(call, bp); in yfs_fs_remove_dir()
817 trace_afs_make_fs_call1(call, &dvp->fid, name); in yfs_fs_remove_dir()
818 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_remove_dir()
824 static int yfs_deliver_fs_link(struct afs_call *call) in yfs_deliver_fs_link() argument
826 struct afs_operation *op = call->op; in yfs_deliver_fs_link()
832 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_link()
834 ret = afs_transfer_reply(call); in yfs_deliver_fs_link()
838 bp = call->buffer; in yfs_deliver_fs_link()
839 xdr_decode_YFSFetchStatus(&bp, call, &vp->scb); in yfs_deliver_fs_link()
840 xdr_decode_YFSFetchStatus(&bp, call, &dvp->scb); in yfs_deliver_fs_link()
864 struct afs_call *call; in yfs_fs_link() local
869 call = afs_alloc_flat_call(op->net, &yfs_RXYFSLink, in yfs_fs_link()
878 if (!call) in yfs_fs_link()
882 bp = call->request; in yfs_fs_link()
888 yfs_check_req(call, bp); in yfs_fs_link()
890 trace_afs_make_fs_call1(call, &vp->fid, name); in yfs_fs_link()
891 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_link()
897 static int yfs_deliver_fs_symlink(struct afs_call *call) in yfs_deliver_fs_symlink() argument
899 struct afs_operation *op = call->op; in yfs_deliver_fs_symlink()
905 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_symlink()
907 ret = afs_transfer_reply(call); in yfs_deliver_fs_symlink()
912 bp = call->buffer; in yfs_deliver_fs_symlink()
914 xdr_decode_YFSFetchStatus(&bp, call, &vp->scb); in yfs_deliver_fs_symlink()
915 xdr_decode_YFSFetchStatus(&bp, call, &dvp->scb); in yfs_deliver_fs_symlink()
939 struct afs_call *call; in yfs_fs_symlink() local
947 call = afs_alloc_flat_call(op->net, &yfs_RXYFSSymlink, in yfs_fs_symlink()
958 if (!call) in yfs_fs_symlink()
962 bp = call->request; in yfs_fs_symlink()
969 yfs_check_req(call, bp); in yfs_fs_symlink()
971 trace_afs_make_fs_call1(call, &dvp->fid, name); in yfs_fs_symlink()
972 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_symlink()
978 static int yfs_deliver_fs_rename(struct afs_call *call) in yfs_deliver_fs_rename() argument
980 struct afs_operation *op = call->op; in yfs_deliver_fs_rename()
986 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_rename()
988 ret = afs_transfer_reply(call); in yfs_deliver_fs_rename()
992 bp = call->buffer; in yfs_deliver_fs_rename()
996 xdr_decode_YFSFetchStatus(&bp, call, &orig_dvp->scb); in yfs_deliver_fs_rename()
997 xdr_decode_YFSFetchStatus(&bp, call, &new_dvp->scb); in yfs_deliver_fs_rename()
1022 struct afs_call *call; in yfs_fs_rename() local
1027 call = afs_alloc_flat_call(op->net, &yfs_RXYFSRename, in yfs_fs_rename()
1037 if (!call) in yfs_fs_rename()
1041 bp = call->request; in yfs_fs_rename()
1048 yfs_check_req(call, bp); in yfs_fs_rename()
1050 trace_afs_make_fs_call2(call, &orig_dvp->fid, orig_name, new_name); in yfs_fs_rename()
1051 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_rename()
1070 struct afs_call *call; in yfs_fs_store_data() local
1081 call = afs_alloc_flat_call(op->net, &yfs_RXYFSStoreData64, in yfs_fs_store_data()
1089 if (!call) in yfs_fs_store_data()
1092 call->write_iter = op->store.write_iter; in yfs_fs_store_data()
1095 bp = call->request; in yfs_fs_store_data()
1103 yfs_check_req(call, bp); in yfs_fs_store_data()
1105 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_store_data()
1106 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_store_data()
1133 struct afs_call *call; in yfs_fs_setattr_size() local
1140 call = afs_alloc_flat_call(op->net, &yfs_RXYFSStoreData64_as_Status, in yfs_fs_setattr_size()
1147 if (!call) in yfs_fs_setattr_size()
1151 bp = call->request; in yfs_fs_setattr_size()
1159 yfs_check_req(call, bp); in yfs_fs_setattr_size()
1161 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_setattr_size()
1162 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_setattr_size()
1172 struct afs_call *call; in yfs_fs_setattr() local
1182 call = afs_alloc_flat_call(op->net, &yfs_RXYFSStoreStatus, in yfs_fs_setattr()
1188 if (!call) in yfs_fs_setattr()
1192 bp = call->request; in yfs_fs_setattr()
1197 yfs_check_req(call, bp); in yfs_fs_setattr()
1199 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_setattr()
1200 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_setattr()
1206 static int yfs_deliver_fs_get_volume_status(struct afs_call *call) in yfs_deliver_fs_get_volume_status() argument
1208 struct afs_operation *op = call->op; in yfs_deliver_fs_get_volume_status()
1214 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_get_volume_status()
1216 switch (call->unmarshall) { in yfs_deliver_fs_get_volume_status()
1218 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1219 afs_extract_to_buf(call, sizeof(struct yfs_xdr_YFSFetchVolumeStatus)); in yfs_deliver_fs_get_volume_status()
1225 ret = afs_extract_data(call, true); in yfs_deliver_fs_get_volume_status()
1229 bp = call->buffer; in yfs_deliver_fs_get_volume_status()
1231 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1232 afs_extract_to_tmp(call); in yfs_deliver_fs_get_volume_status()
1237 ret = afs_extract_data(call, true); in yfs_deliver_fs_get_volume_status()
1241 call->count = ntohl(call->tmp); in yfs_deliver_fs_get_volume_status()
1242 _debug("volname length: %u", call->count); in yfs_deliver_fs_get_volume_status()
1243 if (call->count >= AFSNAMEMAX) in yfs_deliver_fs_get_volume_status()
1244 return afs_protocol_error(call, afs_eproto_volname_len); in yfs_deliver_fs_get_volume_status()
1245 size = (call->count + 3) & ~3; /* It's padded */ in yfs_deliver_fs_get_volume_status()
1246 afs_extract_to_buf(call, size); in yfs_deliver_fs_get_volume_status()
1247 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1253 ret = afs_extract_data(call, true); in yfs_deliver_fs_get_volume_status()
1257 p = call->buffer; in yfs_deliver_fs_get_volume_status()
1258 p[call->count] = 0; in yfs_deliver_fs_get_volume_status()
1260 afs_extract_to_tmp(call); in yfs_deliver_fs_get_volume_status()
1261 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1266 ret = afs_extract_data(call, true); in yfs_deliver_fs_get_volume_status()
1270 call->count = ntohl(call->tmp); in yfs_deliver_fs_get_volume_status()
1271 _debug("offline msg length: %u", call->count); in yfs_deliver_fs_get_volume_status()
1272 if (call->count >= AFSNAMEMAX) in yfs_deliver_fs_get_volume_status()
1273 return afs_protocol_error(call, afs_eproto_offline_msg_len); in yfs_deliver_fs_get_volume_status()
1274 size = (call->count + 3) & ~3; /* It's padded */ in yfs_deliver_fs_get_volume_status()
1275 afs_extract_to_buf(call, size); in yfs_deliver_fs_get_volume_status()
1276 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1282 ret = afs_extract_data(call, true); in yfs_deliver_fs_get_volume_status()
1286 p = call->buffer; in yfs_deliver_fs_get_volume_status()
1287 p[call->count] = 0; in yfs_deliver_fs_get_volume_status()
1290 afs_extract_to_tmp(call); in yfs_deliver_fs_get_volume_status()
1291 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1296 ret = afs_extract_data(call, true); in yfs_deliver_fs_get_volume_status()
1300 call->count = ntohl(call->tmp); in yfs_deliver_fs_get_volume_status()
1301 _debug("motd length: %u", call->count); in yfs_deliver_fs_get_volume_status()
1302 if (call->count >= AFSNAMEMAX) in yfs_deliver_fs_get_volume_status()
1303 return afs_protocol_error(call, afs_eproto_motd_len); in yfs_deliver_fs_get_volume_status()
1304 size = (call->count + 3) & ~3; /* It's padded */ in yfs_deliver_fs_get_volume_status()
1305 afs_extract_to_buf(call, size); in yfs_deliver_fs_get_volume_status()
1306 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1312 ret = afs_extract_data(call, false); in yfs_deliver_fs_get_volume_status()
1316 p = call->buffer; in yfs_deliver_fs_get_volume_status()
1317 p[call->count] = 0; in yfs_deliver_fs_get_volume_status()
1320 call->unmarshall++; in yfs_deliver_fs_get_volume_status()
1347 struct afs_call *call; in yfs_fs_get_volume_status() local
1352 call = afs_alloc_flat_call(op->net, &yfs_RXYFSGetVolumeStatus, in yfs_fs_get_volume_status()
1359 if (!call) in yfs_fs_get_volume_status()
1363 bp = call->request; in yfs_fs_get_volume_status()
1367 yfs_check_req(call, bp); in yfs_fs_get_volume_status()
1369 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_get_volume_status()
1370 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_get_volume_status()
1411 struct afs_call *call; in yfs_fs_set_lock() local
1416 call = afs_alloc_flat_call(op->net, &yfs_RXYFSSetLock, in yfs_fs_set_lock()
1422 if (!call) in yfs_fs_set_lock()
1426 bp = call->request; in yfs_fs_set_lock()
1431 yfs_check_req(call, bp); in yfs_fs_set_lock()
1433 trace_afs_make_fs_calli(call, &vp->fid, op->lock.type); in yfs_fs_set_lock()
1434 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_set_lock()
1443 struct afs_call *call; in yfs_fs_extend_lock() local
1448 call = afs_alloc_flat_call(op->net, &yfs_RXYFSExtendLock, in yfs_fs_extend_lock()
1453 if (!call) in yfs_fs_extend_lock()
1457 bp = call->request; in yfs_fs_extend_lock()
1461 yfs_check_req(call, bp); in yfs_fs_extend_lock()
1463 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_extend_lock()
1464 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_extend_lock()
1473 struct afs_call *call; in yfs_fs_release_lock() local
1478 call = afs_alloc_flat_call(op->net, &yfs_RXYFSReleaseLock, in yfs_fs_release_lock()
1483 if (!call) in yfs_fs_release_lock()
1487 bp = call->request; in yfs_fs_release_lock()
1491 yfs_check_req(call, bp); in yfs_fs_release_lock()
1493 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_release_lock()
1494 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_release_lock()
1500 static int yfs_deliver_fs_fetch_status(struct afs_call *call) in yfs_deliver_fs_fetch_status() argument
1502 struct afs_operation *op = call->op; in yfs_deliver_fs_fetch_status()
1507 ret = afs_transfer_reply(call); in yfs_deliver_fs_fetch_status()
1512 bp = call->buffer; in yfs_deliver_fs_fetch_status()
1513 xdr_decode_YFSFetchStatus(&bp, call, &vp->scb); in yfs_deliver_fs_fetch_status()
1514 xdr_decode_YFSCallBack(&bp, call, &vp->scb); in yfs_deliver_fs_fetch_status()
1537 struct afs_call *call; in yfs_fs_fetch_status() local
1543 call = afs_alloc_flat_call(op->net, &yfs_RXYFSFetchStatus, in yfs_fs_fetch_status()
1549 if (!call) in yfs_fs_fetch_status()
1553 bp = call->request; in yfs_fs_fetch_status()
1557 yfs_check_req(call, bp); in yfs_fs_fetch_status()
1559 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_fetch_status()
1560 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_fetch_status()
1566 static int yfs_deliver_fs_inline_bulk_status(struct afs_call *call) in yfs_deliver_fs_inline_bulk_status() argument
1568 struct afs_operation *op = call->op; in yfs_deliver_fs_inline_bulk_status()
1574 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_inline_bulk_status()
1576 switch (call->unmarshall) { in yfs_deliver_fs_inline_bulk_status()
1578 afs_extract_to_tmp(call); in yfs_deliver_fs_inline_bulk_status()
1579 call->unmarshall++; in yfs_deliver_fs_inline_bulk_status()
1585 ret = afs_extract_data(call, true); in yfs_deliver_fs_inline_bulk_status()
1589 tmp = ntohl(call->tmp); in yfs_deliver_fs_inline_bulk_status()
1592 return afs_protocol_error(call, afs_eproto_ibulkst_count); in yfs_deliver_fs_inline_bulk_status()
1594 call->count = 0; in yfs_deliver_fs_inline_bulk_status()
1595 call->unmarshall++; in yfs_deliver_fs_inline_bulk_status()
1597 afs_extract_to_buf(call, sizeof(struct yfs_xdr_YFSFetchStatus)); in yfs_deliver_fs_inline_bulk_status()
1601 _debug("extract status array %u", call->count); in yfs_deliver_fs_inline_bulk_status()
1602 ret = afs_extract_data(call, true); in yfs_deliver_fs_inline_bulk_status()
1606 switch (call->count) { in yfs_deliver_fs_inline_bulk_status()
1614 scb = &op->more_files[call->count - 2].scb; in yfs_deliver_fs_inline_bulk_status()
1618 bp = call->buffer; in yfs_deliver_fs_inline_bulk_status()
1619 xdr_decode_YFSFetchStatus(&bp, call, scb); in yfs_deliver_fs_inline_bulk_status()
1621 call->count++; in yfs_deliver_fs_inline_bulk_status()
1622 if (call->count < op->nr_files) in yfs_deliver_fs_inline_bulk_status()
1625 call->count = 0; in yfs_deliver_fs_inline_bulk_status()
1626 call->unmarshall++; in yfs_deliver_fs_inline_bulk_status()
1627 afs_extract_to_tmp(call); in yfs_deliver_fs_inline_bulk_status()
1633 ret = afs_extract_data(call, true); in yfs_deliver_fs_inline_bulk_status()
1637 tmp = ntohl(call->tmp); in yfs_deliver_fs_inline_bulk_status()
1640 return afs_protocol_error(call, afs_eproto_ibulkst_cb_count); in yfs_deliver_fs_inline_bulk_status()
1641 call->count = 0; in yfs_deliver_fs_inline_bulk_status()
1642 call->unmarshall++; in yfs_deliver_fs_inline_bulk_status()
1644 afs_extract_to_buf(call, sizeof(struct yfs_xdr_YFSCallBack)); in yfs_deliver_fs_inline_bulk_status()
1649 ret = afs_extract_data(call, true); in yfs_deliver_fs_inline_bulk_status()
1654 switch (call->count) { in yfs_deliver_fs_inline_bulk_status()
1662 scb = &op->more_files[call->count - 2].scb; in yfs_deliver_fs_inline_bulk_status()
1666 bp = call->buffer; in yfs_deliver_fs_inline_bulk_status()
1667 xdr_decode_YFSCallBack(&bp, call, scb); in yfs_deliver_fs_inline_bulk_status()
1668 call->count++; in yfs_deliver_fs_inline_bulk_status()
1669 if (call->count < op->nr_files) in yfs_deliver_fs_inline_bulk_status()
1672 afs_extract_to_buf(call, sizeof(struct yfs_xdr_YFSVolSync)); in yfs_deliver_fs_inline_bulk_status()
1673 call->unmarshall++; in yfs_deliver_fs_inline_bulk_status()
1677 ret = afs_extract_data(call, false); in yfs_deliver_fs_inline_bulk_status()
1681 bp = call->buffer; in yfs_deliver_fs_inline_bulk_status()
1684 call->unmarshall++; in yfs_deliver_fs_inline_bulk_status()
1712 struct afs_call *call; in yfs_fs_inline_bulk_status() local
1719 call = afs_alloc_flat_call(op->net, &yfs_RXYFSInlineBulkStatus, in yfs_fs_inline_bulk_status()
1725 if (!call) in yfs_fs_inline_bulk_status()
1729 bp = call->request; in yfs_fs_inline_bulk_status()
1737 yfs_check_req(call, bp); in yfs_fs_inline_bulk_status()
1739 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_inline_bulk_status()
1740 afs_make_op_call(op, call, GFP_NOFS); in yfs_fs_inline_bulk_status()
1746 static int yfs_deliver_fs_fetch_opaque_acl(struct afs_call *call) in yfs_deliver_fs_fetch_opaque_acl() argument
1748 struct afs_operation *op = call->op; in yfs_deliver_fs_fetch_opaque_acl()
1756 _enter("{%u}", call->unmarshall); in yfs_deliver_fs_fetch_opaque_acl()
1758 switch (call->unmarshall) { in yfs_deliver_fs_fetch_opaque_acl()
1760 afs_extract_to_tmp(call); in yfs_deliver_fs_fetch_opaque_acl()
1761 call->unmarshall++; in yfs_deliver_fs_fetch_opaque_acl()
1766 ret = afs_extract_data(call, true); in yfs_deliver_fs_fetch_opaque_acl()
1770 size = call->count2 = ntohl(call->tmp); in yfs_deliver_fs_fetch_opaque_acl()
1778 acl->size = call->count2; in yfs_deliver_fs_fetch_opaque_acl()
1779 afs_extract_begin(call, acl->data, size); in yfs_deliver_fs_fetch_opaque_acl()
1781 afs_extract_discard(call, size); in yfs_deliver_fs_fetch_opaque_acl()
1783 call->unmarshall++; in yfs_deliver_fs_fetch_opaque_acl()
1788 ret = afs_extract_data(call, true); in yfs_deliver_fs_fetch_opaque_acl()
1792 afs_extract_to_tmp(call); in yfs_deliver_fs_fetch_opaque_acl()
1793 call->unmarshall++; in yfs_deliver_fs_fetch_opaque_acl()
1798 ret = afs_extract_data(call, true); in yfs_deliver_fs_fetch_opaque_acl()
1802 size = call->count2 = ntohl(call->tmp); in yfs_deliver_fs_fetch_opaque_acl()
1810 acl->size = call->count2; in yfs_deliver_fs_fetch_opaque_acl()
1811 afs_extract_begin(call, acl->data, size); in yfs_deliver_fs_fetch_opaque_acl()
1813 afs_extract_discard(call, size); in yfs_deliver_fs_fetch_opaque_acl()
1815 call->unmarshall++; in yfs_deliver_fs_fetch_opaque_acl()
1820 ret = afs_extract_data(call, true); in yfs_deliver_fs_fetch_opaque_acl()
1824 afs_extract_to_buf(call, in yfs_deliver_fs_fetch_opaque_acl()
1828 call->unmarshall++; in yfs_deliver_fs_fetch_opaque_acl()
1833 ret = afs_extract_data(call, false); in yfs_deliver_fs_fetch_opaque_acl()
1837 bp = call->buffer; in yfs_deliver_fs_fetch_opaque_acl()
1840 xdr_decode_YFSFetchStatus(&bp, call, &vp->scb); in yfs_deliver_fs_fetch_opaque_acl()
1843 call->unmarshall++; in yfs_deliver_fs_fetch_opaque_acl()
1879 struct afs_call *call; in yfs_fs_fetch_opaque_acl() local
1885 call = afs_alloc_flat_call(op->net, &yfs_RXYFSFetchOpaqueACL, in yfs_fs_fetch_opaque_acl()
1891 if (!call) in yfs_fs_fetch_opaque_acl()
1895 bp = call->request; in yfs_fs_fetch_opaque_acl()
1899 yfs_check_req(call, bp); in yfs_fs_fetch_opaque_acl()
1901 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_fetch_opaque_acl()
1902 afs_make_op_call(op, call, GFP_KERNEL); in yfs_fs_fetch_opaque_acl()
1921 struct afs_call *call; in yfs_fs_store_opaque_acl2() local
1930 call = afs_alloc_flat_call(op->net, &yfs_RXYFSStoreOpaqueACL2, in yfs_fs_store_opaque_acl2()
1936 if (!call) in yfs_fs_store_opaque_acl2()
1940 bp = call->request; in yfs_fs_store_opaque_acl2()
1949 yfs_check_req(call, bp); in yfs_fs_store_opaque_acl2()
1951 trace_afs_make_fs_call(call, &vp->fid); in yfs_fs_store_opaque_acl2()
1952 afs_make_op_call(op, call, GFP_KERNEL); in yfs_fs_store_opaque_acl2()