[SRU][Xenial][PATCH 0/6] Backport Ceph CRUSH_TUNABLES5 support

Billy Olsen billy.olsen at canonical.com
Wed Nov 1 20:37:47 UTC 2017

From: Billy Olsen <billy.olsen at gmail.com>

BugLink: https://bugs.launchpad.net/bugs/1728739

Attempting to use the kernel rbd driver to mount images from a
Jewel (Xenial) or Luminous (Artful & Pike Ubuntu Cloud Archive)
server causes the mount to fail. This is due to Ceph's addition
of new CRUSH_TUNABLES5 feature which is not understood by the
4.4 kernel client.

Backport the 5 original patches (clean cherry-picks) that added
CRUSH_TUNABLES5 support in the upstream 4.5 kernel. Also backport
an additional patch that allows the client to understand the new
v7 format of the MOSDOpReply message.

- https://www.spinics.net/lists/ceph-devel/msg28421.html
- https://www.spinics.net/lists/ceph-devel/msg28458.html

[Test Case]
1. Deploy a Jewel/Luminous Ceph Cluster with crush tunables set
   to optimal.
2. Create an RBD image suitable for kernel client:
   $ rbd create --pool rbd --image-feature layering --size 1G test
3. Map rbd device to local server node:
   $ rbd map --pool rbd test

[Regression Potential]
Minimal. Code is limited to kernel rbd driver and new code should
primarily affect clients connecting to clusters with the new
tunables options.

Only applicable to Xenial LTS kernel 4.4 since code was included
in the 4.5 kernel.

Ilya Dryomov (6):
  crush: ensure bucket id is valid before indexing buckets array
  crush: ensure take bucket value is valid
  crush: add chooseleaf_stable tunable
  crush: decode and initialize chooseleaf_stable
  libceph: advertise support for TUNABLES5
  libceph: MOSDOpReply v7 encoding

 include/linux/ceph/ceph_features.h | 16 +++++++++++++++-
 include/linux/crush/crush.h        |  8 +++++++-
 net/ceph/crush/mapper.c            | 33 ++++++++++++++++++++++++++-------
 net/ceph/osd_client.c              | 10 ++++++++++
 net/ceph/osdmap.c                  | 19 ++++++++++++++-----
 5 files changed, 72 insertions(+), 14 deletions(-)


More information about the kernel-team mailing list