History

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.

Jeff Mahoney committed 10 years ago

Commit 04cd01d1 parent 18db9ac2 files · +64 −46Browse files

Showing the changes to include/uapi (1 of 2 files). Show all

Unified · Split

include/uapi/linux/btrfs.h+64−0
@@ -317,6 +317,70 @@ struct btrfs_balance_progress { · 316 unmodified lines
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)