Hi all - This short series adds support for the btrfs ioctls. Its structures make heavy use of __u64 so rather than cast every single member, I added new PRI* macros to print them properly. It also uses 64-bit flags and defines values that are larger than can be described by a 32-bit variable, so I've converted xlat to use a 64-bit val field internally and added 64-bit versions to API functions as needed.
Thanks, Dmitry, for the review. Changes since v1: - Change addflags, printflags, and sprintflags to use unsigned int vals. - Introduce 64-bit variants for all three. - Convert all three to wrappers around the 64-bit versions - Use pointers to uint64_ts instead of casting ints for bsearch - Use SIZEOF_LONG instead of BITS_PER_LONG - Fix missing comma for ioctls that return a signed int value - Don't test for exiting(tcp) if we've already returned a nonzero value in entering mode - Use stdint types when defining structs - Don't define separate macros for testing structs - Add UUID_STRING_SIZE macro - Don't test for error if umove* will be called immediately afterward - Various style fixes - Don't assume btrfs.h will be available Thanks, -Jeff Jeff Mahoney (3): util: change type of struct xlat.val to uint64_t defs: define PRI__[uxs]64 to print __[su]64 values Add btrfs ioctl support. Makefile.am | 1 + btrfs.c | 1219 ++++++++++++++++++++++++++++++++++++ configure.ac | 8 + defs.h | 38 +- ioctl.c | 4 + util.c | 46 +- xlat/btrfs_balance_flags.in | 12 + xlat/btrfs_defrag_flags.in | 2 + xlat/btrfs_dev_replace_cmds.in | 3 + xlat/btrfs_dev_replace_results.in | 4 + xlat/btrfs_dev_replace_state.in | 5 + xlat/btrfs_dev_stats_flags.in | 1 + xlat/btrfs_dev_stats_values.in | 11 + xlat/btrfs_features_compat.in | 0 xlat/btrfs_features_compat_ro.in | 1 + xlat/btrfs_features_incompat.in | 10 + xlat/btrfs_key_types.in | 40 ++ xlat/btrfs_qgroup_ctl_cmds.in | 3 + xlat/btrfs_qgroup_inherit_flags.in | 1 + xlat/btrfs_qgroup_limit_flags.in | 6 + xlat/btrfs_qgroup_status_flags.in | 2 + xlat/btrfs_scrub_flags.in | 1 + xlat/btrfs_snap_flags_v2.in | 3 + xlat/btrfs_space_info_flags.in | 11 + xlat/btrfs_tree_objectids.in | 12 + 25 files changed, 1423 insertions(+), 21 deletions(-) create mode 100644 btrfs.c create mode 100644 xlat/btrfs_balance_flags.in create mode 100644 xlat/btrfs_defrag_flags.in create mode 100644 xlat/btrfs_dev_replace_cmds.in create mode 100644 xlat/btrfs_dev_replace_results.in create mode 100644 xlat/btrfs_dev_replace_state.in create mode 100644 xlat/btrfs_dev_stats_flags.in create mode 100644 xlat/btrfs_dev_stats_values.in create mode 100644 xlat/btrfs_features_compat.in create mode 100644 xlat/btrfs_features_compat_ro.in create mode 100644 xlat/btrfs_features_incompat.in create mode 100644 xlat/btrfs_key_types.in create mode 100644 xlat/btrfs_qgroup_ctl_cmds.in create mode 100644 xlat/btrfs_qgroup_inherit_flags.in create mode 100644 xlat/btrfs_qgroup_limit_flags.in create mode 100644 xlat/btrfs_qgroup_status_flags.in create mode 100644 xlat/btrfs_scrub_flags.in create mode 100644 xlat/btrfs_snap_flags_v2.in create mode 100644 xlat/btrfs_space_info_flags.in create mode 100644 xlat/btrfs_tree_objectids.in -- 1.8.5.6 ------------------------------------------------------------------------------ Transform Data into Opportunity. Accelerate data analysis in your applications with Intel Data Analytics Acceleration Library. Click to learn more. http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140 _______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel