]> git.proxmox.com Git - ceph.git/blame - ceph/src/mds/cephfs_features.h
import 15.2.0 Octopus source
[ceph.git] / ceph / src / mds / cephfs_features.h
CommitLineData
11fdf7f2
TL
1// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2// vim: ts=8 sw=2 smarttab
3/*
4 * Ceph - scalable distributed file system
5 *
6
7 *
8 * This is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License version 2.1, as published by the Free Software
11 * Foundation. See file COPYING.
12 *
13 */
14
15#ifndef CEPHFS_FEATURES_H
16#define CEPHFS_FEATURES_H
17
9f95a23c
TL
18// When adding a new release, please update the "current" release below, add a
19// feature bit for that release, add that feature bit to CEPHFS_FEATURES_ALL,
20// and update Server::update_required_client_features(). This feature bit
21// is used to indicate that operator only wants clients from that release or
22// later to mount CephFS.
23#define CEPHFS_CURRENT_RELEASE CEPH_RELEASE_OCTOPUS
11fdf7f2
TL
24
25// The first 5 bits are reserved for old ceph releases.
26#define CEPHFS_FEATURE_JEWEL 5
27#define CEPHFS_FEATURE_KRAKEN 6
28#define CEPHFS_FEATURE_LUMINOUS 7
29#define CEPHFS_FEATURE_MIMIC 8
30#define CEPHFS_FEATURE_REPLY_ENCODING 9
31#define CEPHFS_FEATURE_RECLAIM_CLIENT 10
32#define CEPHFS_FEATURE_LAZY_CAP_WANTED 11
33#define CEPHFS_FEATURE_MULTI_RECONNECT 12
34#define CEPHFS_FEATURE_NAUTILUS 12
9f95a23c
TL
35#define CEPHFS_FEATURE_DELEG_INO 13
36#define CEPHFS_FEATURE_OCTOPUS 13
11fdf7f2
TL
37
38#define CEPHFS_FEATURES_ALL { \
39 0, 1, 2, 3, 4, \
40 CEPHFS_FEATURE_JEWEL, \
41 CEPHFS_FEATURE_KRAKEN, \
42 CEPHFS_FEATURE_LUMINOUS, \
43 CEPHFS_FEATURE_MIMIC, \
44 CEPHFS_FEATURE_REPLY_ENCODING, \
45 CEPHFS_FEATURE_RECLAIM_CLIENT, \
46 CEPHFS_FEATURE_LAZY_CAP_WANTED, \
47 CEPHFS_FEATURE_MULTI_RECONNECT, \
48 CEPHFS_FEATURE_NAUTILUS, \
9f95a23c
TL
49 CEPHFS_FEATURE_DELEG_INO, \
50 CEPHFS_FEATURE_OCTOPUS, \
11fdf7f2
TL
51}
52
53#define CEPHFS_FEATURES_MDS_SUPPORTED CEPHFS_FEATURES_ALL
54#define CEPHFS_FEATURES_MDS_REQUIRED {}
55
56#define CEPHFS_FEATURES_CLIENT_SUPPORTED CEPHFS_FEATURES_ALL
57#define CEPHFS_FEATURES_CLIENT_REQUIRED {}
58
59#endif