aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux
diff options
context:
space:
mode:
authorJeff Mahoney <jeffm@suse.com>2016-04-01 16:14:27 -0400
committerDavid Sterba <dsterba@suse.com>2016-04-28 05:06:41 -0400
commit04cd01dffbf9be14ccc51595280c8dc8c318a9c9 (patch)
treea248e78e57431c2ebac90fd30cae02111d4b124f /include/uapi/linux
parent18db9ac644badcb948a623791e599672edade6dd (diff)
btrfs: uapi/linux/btrfs.h migration, move balance flags
The BTRFS_BALANCE_* flags are used by struct btrfs_ioctl_balance_args.flags and btrfs_ioctl_balance_args.{data,meta,sys}.flags in the BTRFS_IOC_BALANCE ioctl. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Reviewed-by: Liu Bo <bo.li.liu@oracle.com> Reviewed-by: Josef Bacik <jbacik@fb.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'include/uapi/linux')
-rw-r--r--include/uapi/linux/btrfs.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/include/uapi/linux/btrfs.h b/include/uapi/linux/btrfs.h
index de98717386ee..abae362d4ec7 100644
--- a/include/uapi/linux/btrfs.h
+++ b/include/uapi/linux/btrfs.h
@@ -317,6 +317,70 @@ struct btrfs_balance_progress {
317 __u64 completed; /* # of chunks relocated so far */ 317 __u64 completed; /* # of chunks relocated so far */
318}; 318};
319 319
320/*
321 * flags definition for balance
322 *
323 * Restriper's general type filter
324 *
325 * Used by:
326 * btrfs_ioctl_balance_args.flags
327 * btrfs_balance_control.flags (internal)
328 */
329#define BTRFS_BALANCE_DATA (1ULL << 0)
330#define BTRFS_BALANCE_SYSTEM (1ULL << 1)
331#define BTRFS_BALANCE_METADATA (1ULL << 2)
332
333#define BTRFS_BALANCE_TYPE_MASK (BTRFS_BALANCE_DATA | \
334 BTRFS_BALANCE_SYSTEM | \
335 BTRFS_BALANCE_METADATA)
336
337#define BTRFS_BALANCE_FORCE (1ULL << 3)
338#define BTRFS_BALANCE_RESUME (1ULL << 4)
339
340/*
341 * flags definitions for per-type balance args
342 *
343 * Balance filters
344 *
345 * Used by:
346 * struct btrfs_balance_args
347 */
348#define BTRFS_BALANCE_ARGS_PROFILES (1ULL << 0)
349#define BTRFS_BALANCE_ARGS_USAGE (1ULL << 1)
350#define BTRFS_BALANCE_ARGS_DEVID (1ULL << 2)
351#define BTRFS_BALANCE_ARGS_DRANGE (1ULL << 3)
352#define BTRFS_BALANCE_ARGS_VRANGE (1ULL << 4)
353#define BTRFS_BALANCE_ARGS_LIMIT (1ULL << 5)
354#define BTRFS_BALANCE_ARGS_LIMIT_RANGE (1ULL << 6)
355#define BTRFS_BALANCE_ARGS_STRIPES_RANGE (1ULL << 7)
356#define BTRFS_BALANCE_ARGS_USAGE_RANGE (1ULL << 10)
357
358#define BTRFS_BALANCE_ARGS_MASK \
359 (BTRFS_BALANCE_ARGS_PROFILES | \
360 BTRFS_BALANCE_ARGS_USAGE | \
361 BTRFS_BALANCE_ARGS_DEVID | \
362 BTRFS_BALANCE_ARGS_DRANGE | \
363 BTRFS_BALANCE_ARGS_VRANGE | \
364 BTRFS_BALANCE_ARGS_LIMIT | \
365 BTRFS_BALANCE_ARGS_LIMIT_RANGE | \
366 BTRFS_BALANCE_ARGS_STRIPES_RANGE | \
367 BTRFS_BALANCE_ARGS_USAGE_RANGE)
368
369/*
370 * Profile changing flags. When SOFT is set we won't relocate chunk if
371 * it already has the target profile (even though it may be
372 * half-filled).
373 */
374#define BTRFS_BALANCE_ARGS_CONVERT (1ULL << 8)
375#define BTRFS_BALANCE_ARGS_SOFT (1ULL << 9)
376
377
378/*
379 * flags definition for balance state
380 *
381 * Used by:
382 * struct btrfs_ioctl_balance_args.state
383 */
320#define BTRFS_BALANCE_STATE_RUNNING (1ULL << 0) 384#define BTRFS_BALANCE_STATE_RUNNING (1ULL << 0)
321#define BTRFS_BALANCE_STATE_PAUSE_REQ (1ULL << 1) 385#define BTRFS_BALANCE_STATE_PAUSE_REQ (1ULL << 1)
322#define BTRFS_BALANCE_STATE_CANCEL_REQ (1ULL << 2) 386#define BTRFS_BALANCE_STATE_CANCEL_REQ (1ULL << 2)