]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
ceph-volume: work around phantom atari partitions 42469/head
authorBlaine Gardner <blaine.gardner@redhat.com>
Fri, 23 Jul 2021 18:56:35 +0000 (12:56 -0600)
committerBlaine Gardner <blaine.gardner@redhat.com>
Thu, 5 Aug 2021 21:03:10 +0000 (15:03 -0600)
commit9212420bbc88e0caaf0b2302dd1f379f563f7d26
tree9aae702dc3313c5e105152cf8b3aeea2ec505ca6
parent9d7e1422a2512d2378815c543de4b731d94cea92
ceph-volume: work around phantom atari partitions

See Rook issue https://github.com/rook/rook/issues/7940 for full
information.

Ceph bluestore disks can sometimes appear as though they have "phantom"
Atari (AHDI) partitions created on them when they don't in reality. This
is due to a series of bugs in the Linux kernel when it is built with
Atari support enabled. This behavior does not appear for raw mode OSDs on
partitions, only on disks.

Changing the on-disk format of Bluestore OSDs comes with
backwards-compatibility challenges, and fixing the issue in the Kernel
could be years before users get a fix. Working around the Kernel issue
in ceph-volume is therefore the best place to fix the issue for Ceph.

To work around the issue in Ceph volume, there are two behaviors that need
adjusted:
1. `ceph-volume inventory` should not report that a partition is
   available if the parent device is a BlueStore OSD.
2. `ceph-volume raw list` should report parent disks if the disk is a
   BlueStore OSD and not report the disk's children, BUT it should still
   report children if the parent disk is not a BlueStore OSD.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
src/ceph-volume/ceph_volume/devices/raw/list.py
src/ceph-volume/ceph_volume/tests/devices/raw/test_list.py [new file with mode: 0644]
src/ceph-volume/ceph_volume/tests/util/test_device.py
src/ceph-volume/ceph_volume/util/device.py
src/ceph-volume/ceph_volume/util/disk.py