Lines Matching refs:dpolicy
1156 struct discard_policy *dpolicy, in __init_discard_policy() argument
1162 dpolicy->type = discard_type; in __init_discard_policy()
1163 dpolicy->sync = true; in __init_discard_policy()
1164 dpolicy->ordered = false; in __init_discard_policy()
1165 dpolicy->granularity = granularity; in __init_discard_policy()
1167 dpolicy->max_requests = dcc->max_discard_request; in __init_discard_policy()
1168 dpolicy->io_aware_gran = dcc->discard_io_aware_gran; in __init_discard_policy()
1169 dpolicy->timeout = false; in __init_discard_policy()
1172 dpolicy->min_interval = dcc->min_discard_issue_time; in __init_discard_policy()
1173 dpolicy->mid_interval = dcc->mid_discard_issue_time; in __init_discard_policy()
1174 dpolicy->max_interval = dcc->max_discard_issue_time; in __init_discard_policy()
1175 dpolicy->io_aware = true; in __init_discard_policy()
1176 dpolicy->sync = false; in __init_discard_policy()
1177 dpolicy->ordered = true; in __init_discard_policy()
1179 dpolicy->granularity = MIN_DISCARD_GRANULARITY; in __init_discard_policy()
1181 dpolicy->max_interval = in __init_discard_policy()
1185 dpolicy->min_interval = dcc->min_discard_issue_time; in __init_discard_policy()
1186 dpolicy->mid_interval = dcc->mid_discard_issue_time; in __init_discard_policy()
1187 dpolicy->max_interval = dcc->max_discard_issue_time; in __init_discard_policy()
1188 dpolicy->io_aware = false; in __init_discard_policy()
1190 dpolicy->io_aware = false; in __init_discard_policy()
1192 dpolicy->io_aware = false; in __init_discard_policy()
1194 dpolicy->granularity = MIN_DISCARD_GRANULARITY; in __init_discard_policy()
1195 dpolicy->timeout = true; in __init_discard_policy()
1243 struct discard_policy *dpolicy, in __submit_discard_cmd() argument
1250 struct list_head *wait_list = (dpolicy->type == DPOLICY_FSTRIM) ? in __submit_discard_cmd()
1252 blk_opf_t flag = dpolicy->sync ? REQ_SYNC : 0; in __submit_discard_cmd()
1286 while (total_len && *issued < dpolicy->max_requests && !err) { in __submit_discard_cmd()
1297 if (*issued == dpolicy->max_requests) in __submit_discard_cmd()
1555 struct discard_policy *dpolicy, int *issued) in __issue_discard_cmd_orderly() argument
1579 if (dpolicy->io_aware && !is_idle(sbi, DISCARD_TIME)) { in __issue_discard_cmd_orderly()
1585 err = __submit_discard_cmd(sbi, dpolicy, dc, issued); in __issue_discard_cmd_orderly()
1587 if (*issued >= dpolicy->max_requests) in __issue_discard_cmd_orderly()
1607 struct discard_policy *dpolicy);
1610 struct discard_policy *dpolicy) in __issue_discard_cmd() argument
1619 if (dpolicy->timeout) in __issue_discard_cmd()
1625 if (dpolicy->timeout && in __issue_discard_cmd()
1629 if (i + 1 < dpolicy->granularity) in __issue_discard_cmd()
1632 if (i + 1 < dcc->max_ordered_discard && dpolicy->ordered) { in __issue_discard_cmd()
1633 __issue_discard_cmd_orderly(sbi, dpolicy, &issued); in __issue_discard_cmd()
1648 if (dpolicy->timeout && in __issue_discard_cmd()
1652 if (dpolicy->io_aware && i < dpolicy->io_aware_gran && in __issue_discard_cmd()
1658 __submit_discard_cmd(sbi, dpolicy, dc, &issued); in __issue_discard_cmd()
1660 if (issued >= dpolicy->max_requests) in __issue_discard_cmd()
1667 if (issued >= dpolicy->max_requests || io_interrupted) in __issue_discard_cmd()
1671 if (dpolicy->type == DPOLICY_UMOUNT && issued) { in __issue_discard_cmd()
1672 __wait_all_discard_cmd(sbi, dpolicy); in __issue_discard_cmd()
1730 struct discard_policy *dpolicy, in __wait_discard_cmd_range() argument
1734 struct list_head *wait_list = (dpolicy->type == DPOLICY_FSTRIM) ? in __wait_discard_cmd_range()
1747 if (iter->di.len < dpolicy->granularity) in __wait_discard_cmd_range()
1771 struct discard_policy *dpolicy) in __wait_all_discard_cmd() argument
1776 if (dpolicy) in __wait_all_discard_cmd()
1777 return __wait_discard_cmd_range(sbi, dpolicy, 0, UINT_MAX); in __wait_all_discard_cmd()
1856 struct discard_policy dpolicy; in f2fs_issue_discard_timeout() local
1862 __init_discard_policy(sbi, &dpolicy, DPOLICY_UMOUNT, in f2fs_issue_discard_timeout()
1864 __issue_discard_cmd(sbi, &dpolicy); in f2fs_issue_discard_timeout()
1879 struct discard_policy dpolicy; in issue_discard_thread() local
1893 __init_discard_policy(sbi, &dpolicy, DPOLICY_FORCE, in issue_discard_thread()
1896 __init_discard_policy(sbi, &dpolicy, DPOLICY_BG, in issue_discard_thread()
1914 wait_ms = dpolicy.max_interval; in issue_discard_thread()
1920 issued = __issue_discard_cmd(sbi, &dpolicy); in issue_discard_thread()
1922 __wait_all_discard_cmd(sbi, &dpolicy); in issue_discard_thread()
1923 wait_ms = dpolicy.min_interval; in issue_discard_thread()
1927 wait_ms = dpolicy.mid_interval; in issue_discard_thread()
1929 wait_ms = dpolicy.max_interval; in issue_discard_thread()
1932 wait_ms = dpolicy.max_interval; in issue_discard_thread()
3143 struct discard_policy *dpolicy, in __issue_discard_cmd_range() argument
3172 if (dc->di.len < dpolicy->granularity) in __issue_discard_cmd_range()
3180 err = __submit_discard_cmd(sbi, dpolicy, dc, &issued); in __issue_discard_cmd_range()
3182 if (issued >= dpolicy->max_requests) { in __issue_discard_cmd_range()
3217 struct discard_policy dpolicy; in f2fs_trim_fs() local
3269 __init_discard_policy(sbi, &dpolicy, DPOLICY_FSTRIM, cpc.trim_minlen); in f2fs_trim_fs()
3270 trimmed = __issue_discard_cmd_range(sbi, &dpolicy, in f2fs_trim_fs()
3273 trimmed += __wait_discard_cmd_range(sbi, &dpolicy, in f2fs_trim_fs()