* Note: don't forget to add new options to btrfs_show_options()
  */
 enum {
-       BTRFS_MOUNT_NODATASUM                   = (1UL << 0),
-       BTRFS_MOUNT_NODATACOW                   = (1UL << 1),
-       BTRFS_MOUNT_NOBARRIER                   = (1UL << 2),
-       BTRFS_MOUNT_SSD                         = (1UL << 3),
-       BTRFS_MOUNT_DEGRADED                    = (1UL << 4),
-       BTRFS_MOUNT_COMPRESS                    = (1UL << 5),
-       BTRFS_MOUNT_NOTREELOG                   = (1UL << 6),
-       BTRFS_MOUNT_FLUSHONCOMMIT               = (1UL << 7),
-       BTRFS_MOUNT_SSD_SPREAD                  = (1UL << 8),
-       BTRFS_MOUNT_NOSSD                       = (1UL << 9),
-       BTRFS_MOUNT_DISCARD_SYNC                = (1UL << 10),
-       BTRFS_MOUNT_FORCE_COMPRESS              = (1UL << 11),
-       BTRFS_MOUNT_SPACE_CACHE                 = (1UL << 12),
-       BTRFS_MOUNT_CLEAR_CACHE                 = (1UL << 13),
-       BTRFS_MOUNT_USER_SUBVOL_RM_ALLOWED      = (1UL << 14),
-       BTRFS_MOUNT_ENOSPC_DEBUG                = (1UL << 15),
-       BTRFS_MOUNT_AUTO_DEFRAG                 = (1UL << 16),
-       BTRFS_MOUNT_USEBACKUPROOT               = (1UL << 17),
-       BTRFS_MOUNT_SKIP_BALANCE                = (1UL << 18),
-       BTRFS_MOUNT_PANIC_ON_FATAL_ERROR        = (1UL << 19),
-       BTRFS_MOUNT_RESCAN_UUID_TREE            = (1UL << 20),
-       BTRFS_MOUNT_FRAGMENT_DATA               = (1UL << 21),
-       BTRFS_MOUNT_FRAGMENT_METADATA           = (1UL << 22),
-       BTRFS_MOUNT_FREE_SPACE_TREE             = (1UL << 23),
-       BTRFS_MOUNT_NOLOGREPLAY                 = (1UL << 24),
-       BTRFS_MOUNT_REF_VERIFY                  = (1UL << 25),
-       BTRFS_MOUNT_DISCARD_ASYNC               = (1UL << 26),
-       BTRFS_MOUNT_IGNOREBADROOTS              = (1UL << 27),
-       BTRFS_MOUNT_IGNOREDATACSUMS             = (1UL << 28),
-       BTRFS_MOUNT_NODISCARD                   = (1UL << 29),
-       BTRFS_MOUNT_NOSPACECACHE                = (1UL << 30),
-       BTRFS_MOUNT_IGNOREMETACSUMS             = (1UL << 31),
+       BTRFS_MOUNT_NODATASUM                   = (1ULL << 0),
+       BTRFS_MOUNT_NODATACOW                   = (1ULL << 1),
+       BTRFS_MOUNT_NOBARRIER                   = (1ULL << 2),
+       BTRFS_MOUNT_SSD                         = (1ULL << 3),
+       BTRFS_MOUNT_DEGRADED                    = (1ULL << 4),
+       BTRFS_MOUNT_COMPRESS                    = (1ULL << 5),
+       BTRFS_MOUNT_NOTREELOG                   = (1ULL << 6),
+       BTRFS_MOUNT_FLUSHONCOMMIT               = (1ULL << 7),
+       BTRFS_MOUNT_SSD_SPREAD                  = (1ULL << 8),
+       BTRFS_MOUNT_NOSSD                       = (1ULL << 9),
+       BTRFS_MOUNT_DISCARD_SYNC                = (1ULL << 10),
+       BTRFS_MOUNT_FORCE_COMPRESS              = (1ULL << 11),
+       BTRFS_MOUNT_SPACE_CACHE                 = (1ULL << 12),
+       BTRFS_MOUNT_CLEAR_CACHE                 = (1ULL << 13),
+       BTRFS_MOUNT_USER_SUBVOL_RM_ALLOWED      = (1ULL << 14),
+       BTRFS_MOUNT_ENOSPC_DEBUG                = (1ULL << 15),
+       BTRFS_MOUNT_AUTO_DEFRAG                 = (1ULL << 16),
+       BTRFS_MOUNT_USEBACKUPROOT               = (1ULL << 17),
+       BTRFS_MOUNT_SKIP_BALANCE                = (1ULL << 18),
+       BTRFS_MOUNT_PANIC_ON_FATAL_ERROR        = (1ULL << 19),
+       BTRFS_MOUNT_RESCAN_UUID_TREE            = (1ULL << 20),
+       BTRFS_MOUNT_FRAGMENT_DATA               = (1ULL << 21),
+       BTRFS_MOUNT_FRAGMENT_METADATA           = (1ULL << 22),
+       BTRFS_MOUNT_FREE_SPACE_TREE             = (1ULL << 23),
+       BTRFS_MOUNT_NOLOGREPLAY                 = (1ULL << 24),
+       BTRFS_MOUNT_REF_VERIFY                  = (1ULL << 25),
+       BTRFS_MOUNT_DISCARD_ASYNC               = (1ULL << 26),
+       BTRFS_MOUNT_IGNOREBADROOTS              = (1ULL << 27),
+       BTRFS_MOUNT_IGNOREDATACSUMS             = (1ULL << 28),
+       BTRFS_MOUNT_NODISCARD                   = (1ULL << 29),
+       BTRFS_MOUNT_NOSPACECACHE                = (1ULL << 30),
+       BTRFS_MOUNT_IGNOREMETACSUMS             = (1ULL << 31),
        BTRFS_MOUNT_IGNORESUPERFLAGS            = (1ULL << 32),
 };
 
         * required instead of the faster short fsync log commits
         */
        u64 last_trans_log_full_commit;
-       unsigned long mount_opt;
+       unsigned long long mount_opt;
 
        unsigned long compress_type:4;
        unsigned int compress_level;
 
        u32 commit_interval;
        u32 metadata_ratio;
        u32 thread_pool_size;
-       unsigned long mount_opt;
+       unsigned long long mount_opt;
        unsigned long compress_type:4;
        unsigned int compress_level;
        refcount_t refs;
 }
 
 static bool check_ro_option(const struct btrfs_fs_info *fs_info,
-                           unsigned long mount_opt, unsigned long opt,
+                           unsigned long long mount_opt, unsigned long long opt,
                            const char *opt_name)
 {
        if (mount_opt & opt) {
        return false;
 }
 
-bool btrfs_check_options(const struct btrfs_fs_info *info, unsigned long *mount_opt,
+bool btrfs_check_options(const struct btrfs_fs_info *info,
+                        unsigned long long *mount_opt,
                         unsigned long flags)
 {
        bool ret = true;
 }
 
 static inline void btrfs_remount_begin(struct btrfs_fs_info *fs_info,
-                                      unsigned long old_opts, int flags)
+                                      unsigned long long old_opts, int flags)
 {
        if (btrfs_raw_test_opt(old_opts, AUTO_DEFRAG) &&
            (!btrfs_raw_test_opt(fs_info->mount_opt, AUTO_DEFRAG) ||
 }
 
 static inline void btrfs_remount_cleanup(struct btrfs_fs_info *fs_info,
-                                        unsigned long old_opts)
+                                        unsigned long long old_opts)
 {
        const bool cache_opt = btrfs_test_opt(fs_info, SPACE_CACHE);