From: Steve Taylor Date: Tue, 10 Jun 2014 18:42:55 +0000 (-0600) Subject: Fix for bug #6700 X-Git-Tag: v0.80.2~36 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=e5a291ef69316519b105b57193753f0bf8ac8e62;p=ceph.git Fix for bug #6700 When preparing OSD disks with colocated journals, the intialization process fails when using dmcrypt. The kernel fails to re-read the partition table after the storage partition is created because the journal partition is already in use by dmcrypt. This fix unmaps the journal partition from dmcrypt and allows the partition table to be read. Signed-off-by: Stephen F Taylor (cherry picked from commit 673394702b725ff3f26d13b54d909208daa56d89) --- diff --git a/src/ceph-disk b/src/ceph-disk index d2f042e2289c..08286c1012c7 100755 --- a/src/ceph-disk +++ b/src/ceph-disk @@ -1182,6 +1182,9 @@ def prepare_dev( LOG.debug('OSD data device %s is a partition', data) rawdev = data else: + if journal_dmcrypt is not None: + dmcrypt_unmap(journal) + LOG.debug('Creating osd partition on %s', data) try: command_check_call( @@ -1263,6 +1266,8 @@ def prepare_dev( finally: if rawdev != dev: dmcrypt_unmap(osd_uuid) + if journal_dmcrypt is not None: + dmcrypt_unmap(journal) if not is_partition(data): try: