Lines Matching refs:path
10 * num_paths. If a path is stale and unused, we will send a single
11 * request to probe in case the path has improved. This situation
12 * generally arises if the path is so much worse than others that it
14 * multipath device is unused. If a path is stale and in use, limit the
15 * number of requests it can receive with the assumption that the path
25 #include "dm-path-selector.h"
56 struct dm_path *path;
188 * be considered different. That is, a path is
190 * is the path with higher service time. A threshold
237 static int hst_status(struct path_selector *ps, struct dm_path *path,
243 if (!path) {
248 pi = path->pscontext;
264 static int hst_add_path(struct path_selector *ps, struct dm_path *path,
275 * <repeat_count>: The number of I/Os before switching path.
288 /* allocate the path */
291 *error = "historical-service-time ps: Error allocating path context";
295 pi->path = path;
306 path->pscontext = pi;
316 static void hst_fail_path(struct path_selector *ps, struct dm_path *path)
319 struct path_info *pi = path->pscontext;
328 static int hst_reinstate_path(struct path_selector *ps, struct dm_path *path)
331 struct path_info *pi = path->pscontext;
389 * If an unloaded path is stale, choose it. If both paths are unloaded,
390 * choose path that is the most stale.
391 * (If one path is loaded, choose the other)
448 /* Move last used path to end (least preferred in case of ties) */
451 ret = best->path;
458 static int hst_start_io(struct path_selector *ps, struct dm_path *path,
461 struct path_info *pi = path->pscontext;
489 static int hst_end_io(struct path_selector *ps, struct dm_path *path,
492 struct path_info *pi = path->pscontext;
507 * On request end, mark path as fresh. If a path hasn't
510 * maximum requests on that path.
559 MODULE_DESCRIPTION(DM_NAME " measured service time oriented path selector");