Lines Matching defs:path
9 * Throughput oriented path selector.
13 #include "dm-path-selector.h"
33 struct dm_path *path;
83 static int st_status(struct path_selector *ps, struct dm_path *path,
89 if (!path)
92 pi = path->pscontext;
112 static int st_add_path(struct path_selector *ps, struct dm_path *path,
124 * <repeat_count>: The number of I/Os before switching path.
127 * the path among all paths in the path-group.
130 * If '0' is given, the path isn't selected while
155 /* allocate the path */
158 *error = "service-time ps: Error allocating path context";
162 pi->path = path;
167 path->pscontext = pi;
176 static void st_fail_path(struct path_selector *ps, struct dm_path *path)
179 struct path_info *pi = path->pscontext;
187 static int st_reinstate_path(struct path_selector *ps, struct dm_path *path)
190 struct path_info *pi = path->pscontext;
224 * Case 1: Both have same throughput value. Choose less loaded path.
230 * Case 2a: Both have same load. Choose higher throughput path.
231 * Case 2b: One path has no throughput value. Choose the other one.
238 * Case 3: Calculate service time. Choose faster path.
272 * Case 4: Service time is equal. Choose higher throughput path.
298 ret = best->path;
304 static int st_start_io(struct path_selector *ps, struct dm_path *path,
307 struct path_info *pi = path->pscontext;
314 static int st_end_io(struct path_selector *ps, struct dm_path *path,
317 struct path_info *pi = path->pscontext;
363 MODULE_DESCRIPTION(DM_NAME " throughput oriented path selector");