Lines Matching refs:task
41 static void ff_layout_read_record_layoutstats_done(struct rpc_task *task,
676 nfs4_ff_layout_stat_io_end_read(struct rpc_task *task, in nfs4_ff_layout_stat_io_end_read() argument
684 ktime_get(), task->tk_start); in nfs4_ff_layout_stat_io_end_read()
707 nfs4_ff_layout_stat_io_end_write(struct rpc_task *task, in nfs4_ff_layout_stat_io_end_write() argument
718 requested, completed, ktime_get(), task->tk_start); in nfs4_ff_layout_stat_io_end_write()
1013 struct rpc_task *task = &hdr->task; in ff_layout_reset_write() local
1020 hdr->task.tk_pid, in ff_layout_reset_write()
1033 hdr->task.tk_pid, in ff_layout_reset_write()
1043 task->tk_status = pnfs_write_done_resend_to_mds(hdr); in ff_layout_reset_write()
1061 struct rpc_task *task = &hdr->task; in ff_layout_reset_read() local
1069 hdr->task.tk_pid, in ff_layout_reset_read()
1079 task->tk_status = pnfs_read_done_resend_to_mds(hdr); in ff_layout_reset_read()
1083 static int ff_layout_async_handle_error_v4(struct rpc_task *task, in ff_layout_async_handle_error_v4() argument
1094 switch (task->tk_status) { in ff_layout_async_handle_error_v4()
1103 "flags 0x%x\n", __func__, task->tk_status, in ff_layout_async_handle_error_v4()
1105 nfs4_schedule_session_recovery(clp->cl_session, task->tk_status); in ff_layout_async_handle_error_v4()
1109 rpc_delay(task, FF_LAYOUT_POLL_RETRY_MAX); in ff_layout_async_handle_error_v4()
1121 task->tk_status); in ff_layout_async_handle_error_v4()
1143 task->tk_status); in ff_layout_async_handle_error_v4()
1153 task->tk_status); in ff_layout_async_handle_error_v4()
1156 task->tk_status = 0; in ff_layout_async_handle_error_v4()
1161 static int ff_layout_async_handle_error_v3(struct rpc_task *task, in ff_layout_async_handle_error_v3() argument
1167 switch (task->tk_status) { in ff_layout_async_handle_error_v3()
1181 task->tk_status); in ff_layout_async_handle_error_v3()
1188 task->tk_status = 0; in ff_layout_async_handle_error_v3()
1189 rpc_restart_call_prepare(task); in ff_layout_async_handle_error_v3()
1190 rpc_delay(task, NFS_JUKEBOX_RETRY_TIME); in ff_layout_async_handle_error_v3()
1194 static int ff_layout_async_handle_error(struct rpc_task *task, in ff_layout_async_handle_error() argument
1202 if (task->tk_status >= 0) { in ff_layout_async_handle_error()
1213 return ff_layout_async_handle_error_v3(task, lseg, idx); in ff_layout_async_handle_error()
1215 return ff_layout_async_handle_error_v4(task, state, clp, in ff_layout_async_handle_error()
1287 static int ff_layout_read_done_cb(struct rpc_task *task, in ff_layout_read_done_cb() argument
1292 if (task->tk_status < 0) { in ff_layout_read_done_cb()
1296 task->tk_status); in ff_layout_read_done_cb()
1300 err = ff_layout_async_handle_error(task, hdr->args.context->state, in ff_layout_read_done_cb()
1310 return task->tk_status; in ff_layout_read_done_cb()
1313 return task->tk_status; in ff_layout_read_done_cb()
1320 rpc_restart_call_prepare(task); in ff_layout_read_done_cb()
1352 static void ff_layout_read_record_layoutstats_start(struct rpc_task *task, in ff_layout_read_record_layoutstats_start() argument
1360 task->tk_start); in ff_layout_read_record_layoutstats_start()
1363 static void ff_layout_read_record_layoutstats_done(struct rpc_task *task, in ff_layout_read_record_layoutstats_done() argument
1368 nfs4_ff_layout_stat_io_end_read(task, in ff_layout_read_record_layoutstats_done()
1375 static int ff_layout_read_prepare_common(struct rpc_task *task, in ff_layout_read_prepare_common() argument
1379 rpc_exit(task, -EIO); in ff_layout_read_prepare_common()
1384 rpc_exit(task, -EAGAIN); in ff_layout_read_prepare_common()
1388 ff_layout_read_record_layoutstats_start(task, hdr); in ff_layout_read_prepare_common()
1397 static void ff_layout_read_prepare_v3(struct rpc_task *task, void *data) in ff_layout_read_prepare_v3() argument
1401 if (ff_layout_read_prepare_common(task, hdr)) in ff_layout_read_prepare_v3()
1404 rpc_call_start(task); in ff_layout_read_prepare_v3()
1407 static void ff_layout_read_prepare_v4(struct rpc_task *task, void *data) in ff_layout_read_prepare_v4() argument
1414 task)) in ff_layout_read_prepare_v4()
1417 ff_layout_read_prepare_common(task, hdr); in ff_layout_read_prepare_v4()
1420 static void ff_layout_read_call_done(struct rpc_task *task, void *data) in ff_layout_read_call_done() argument
1425 task->tk_status == 0) { in ff_layout_read_call_done()
1426 nfs4_sequence_done(task, &hdr->res.seq_res); in ff_layout_read_call_done()
1431 hdr->mds_ops->rpc_call_done(task, hdr); in ff_layout_read_call_done()
1434 static void ff_layout_read_count_stats(struct rpc_task *task, void *data) in ff_layout_read_count_stats() argument
1438 ff_layout_read_record_layoutstats_done(task, hdr); in ff_layout_read_count_stats()
1439 rpc_count_iostats_metrics(task, in ff_layout_read_count_stats()
1447 ff_layout_read_record_layoutstats_done(&hdr->task, hdr); in ff_layout_read_release()
1456 static int ff_layout_write_done_cb(struct rpc_task *task, in ff_layout_write_done_cb() argument
1462 if (task->tk_status < 0) { in ff_layout_write_done_cb()
1466 task->tk_status); in ff_layout_write_done_cb()
1470 err = ff_layout_async_handle_error(task, hdr->args.context->state, in ff_layout_write_done_cb()
1480 return task->tk_status; in ff_layout_write_done_cb()
1483 return task->tk_status; in ff_layout_write_done_cb()
1497 if (task->tk_status >= 0) in ff_layout_write_done_cb()
1503 static int ff_layout_commit_done_cb(struct rpc_task *task, in ff_layout_commit_done_cb() argument
1508 if (task->tk_status < 0) { in ff_layout_commit_done_cb()
1512 task->tk_status); in ff_layout_commit_done_cb()
1516 err = ff_layout_async_handle_error(task, NULL, data->ds_clp, in ff_layout_commit_done_cb()
1528 rpc_restart_call_prepare(task); in ff_layout_commit_done_cb()
1537 static void ff_layout_write_record_layoutstats_start(struct rpc_task *task, in ff_layout_write_record_layoutstats_start() argument
1545 task->tk_start); in ff_layout_write_record_layoutstats_start()
1548 static void ff_layout_write_record_layoutstats_done(struct rpc_task *task, in ff_layout_write_record_layoutstats_done() argument
1553 nfs4_ff_layout_stat_io_end_write(task, in ff_layout_write_record_layoutstats_done()
1560 static int ff_layout_write_prepare_common(struct rpc_task *task, in ff_layout_write_prepare_common() argument
1564 rpc_exit(task, -EIO); in ff_layout_write_prepare_common()
1569 rpc_exit(task, -EAGAIN); in ff_layout_write_prepare_common()
1573 ff_layout_write_record_layoutstats_start(task, hdr); in ff_layout_write_prepare_common()
1577 static void ff_layout_write_prepare_v3(struct rpc_task *task, void *data) in ff_layout_write_prepare_v3() argument
1581 if (ff_layout_write_prepare_common(task, hdr)) in ff_layout_write_prepare_v3()
1584 rpc_call_start(task); in ff_layout_write_prepare_v3()
1587 static void ff_layout_write_prepare_v4(struct rpc_task *task, void *data) in ff_layout_write_prepare_v4() argument
1594 task)) in ff_layout_write_prepare_v4()
1597 ff_layout_write_prepare_common(task, hdr); in ff_layout_write_prepare_v4()
1600 static void ff_layout_write_call_done(struct rpc_task *task, void *data) in ff_layout_write_call_done() argument
1605 task->tk_status == 0) { in ff_layout_write_call_done()
1606 nfs4_sequence_done(task, &hdr->res.seq_res); in ff_layout_write_call_done()
1611 hdr->mds_ops->rpc_call_done(task, hdr); in ff_layout_write_call_done()
1614 static void ff_layout_write_count_stats(struct rpc_task *task, void *data) in ff_layout_write_count_stats() argument
1618 ff_layout_write_record_layoutstats_done(task, hdr); in ff_layout_write_count_stats()
1619 rpc_count_iostats_metrics(task, in ff_layout_write_count_stats()
1627 ff_layout_write_record_layoutstats_done(&hdr->task, hdr); in ff_layout_write_release()
1636 static void ff_layout_commit_record_layoutstats_start(struct rpc_task *task, in ff_layout_commit_record_layoutstats_start() argument
1643 0, task->tk_start); in ff_layout_commit_record_layoutstats_start()
1646 static void ff_layout_commit_record_layoutstats_done(struct rpc_task *task, in ff_layout_commit_record_layoutstats_done() argument
1655 if (task->tk_status == 0) { in ff_layout_commit_record_layoutstats_done()
1659 nfs4_ff_layout_stat_io_end_write(task, in ff_layout_commit_record_layoutstats_done()
1665 static int ff_layout_commit_prepare_common(struct rpc_task *task, in ff_layout_commit_prepare_common() argument
1669 rpc_exit(task, -EAGAIN); in ff_layout_commit_prepare_common()
1673 ff_layout_commit_record_layoutstats_start(task, cdata); in ff_layout_commit_prepare_common()
1677 static void ff_layout_commit_prepare_v3(struct rpc_task *task, void *data) in ff_layout_commit_prepare_v3() argument
1679 if (ff_layout_commit_prepare_common(task, data)) in ff_layout_commit_prepare_v3()
1682 rpc_call_start(task); in ff_layout_commit_prepare_v3()
1685 static void ff_layout_commit_prepare_v4(struct rpc_task *task, void *data) in ff_layout_commit_prepare_v4() argument
1692 task)) in ff_layout_commit_prepare_v4()
1694 ff_layout_commit_prepare_common(task, data); in ff_layout_commit_prepare_v4()
1697 static void ff_layout_commit_done(struct rpc_task *task, void *data) in ff_layout_commit_done() argument
1699 pnfs_generic_write_commit_done(task, data); in ff_layout_commit_done()
1702 static void ff_layout_commit_count_stats(struct rpc_task *task, void *data) in ff_layout_commit_count_stats() argument
1706 ff_layout_commit_record_layoutstats_done(task, cdata); in ff_layout_commit_count_stats()
1707 rpc_count_iostats_metrics(task, in ff_layout_commit_count_stats()
1715 ff_layout_commit_record_layoutstats_done(&cdata->task, cdata); in ff_layout_commit_release()
1977 static bool ff_layout_match_rw(const struct rpc_task *task, in ff_layout_match_rw() argument
1984 static bool ff_layout_match_commit(const struct rpc_task *task, in ff_layout_match_commit() argument
1991 static bool ff_layout_match_io(const struct rpc_task *task, const void *data) in ff_layout_match_io() argument
1993 const struct rpc_call_ops *ops = task->tk_ops; in ff_layout_match_io()
1999 return ff_layout_match_rw(task, task->tk_calldata, data); in ff_layout_match_io()
2002 return ff_layout_match_commit(task, task->tk_calldata, data); in ff_layout_match_io()