All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Wilck <mwilck@suse.com>
To: Hannes Reinecke <hare@suse.de>, Alasdair G Kergon <agk@redhat.com>
Cc: dm-devel@redhat.com
Subject: Re: [PATCH 00/10] fixes for kpartx -d
Date: Mon, 08 May 2017 09:47:50 +0200	[thread overview]
Message-ID: <1494229670.5362.2.camel@suse.com> (raw)
In-Reply-To: <5f6f8a82-19e2-44d1-a08f-4d5dd4761dc9@suse.de>

On Mon, 2017-05-08 at 08:33 +0200, Hannes Reinecke wrote:
> On 05/06/2017 12:30 AM, Martin Wilck wrote:
> > On Fri, 2017-05-05 at 23:18 +0100, Alasdair G Kergon wrote:
> > > On Sat, May 06, 2017 at 12:05:49AM +0200, Martin Wilck wrote:
> > > >   3) kpartx should only delete "partitions", which are single-
> > > > target
> > > >      linear mappings into a block device. Other maps should not
> > > > be
> > > > touched.
> > > 
> > > The prefix on the dm device's uuid should guarantee this: all
> > > devices
> > > kpartx creates should have the same initial characters (a
> > > not-quite-standard form "part" IIRC instead of "KPARTX-") and any
> > > devices without those initial characters must be ignored.
> > 
> > This works only for partitions on DM devices, not e.g. for loop
> > devices. These devices obviously have no DM UUID; and thus kpartx
> > also
> > doesn't set an UUID for the partition devices it creates.
> > That's the main point of this series.
> > 
> 
> I beg to differ.
> 
> The main point is to _set_ an UUID for all kpartx-generated devices.
> But to make matters consistent I'm siding with Alasdair here, namely
> that any kpartx-generated UUID should be starting with 'part-'.
> So I'm fine with adding a UUID, but this UUID _must_ start with
> 'part-'.

Well, not quite. It must start with "part%u-". It does so in my patch
set. Like UUIDs created partitions on DM devices, kpartx-generated
partitions for non-DM devices start with part$N, where $N is the
partition number (without my patch set, these partitions devices have
_no UUID_).

The full partition UUID for partitions used by my code looks like this
(see patch 08/10):

{UUID_PREFIX}${MAJOR}:${MINOR}-${NONDM_UUID_SUFFIX}"

This format fulfills the constraints of dm_compare_uuid(). The only
change I had to introduce for dm_compare_uuid() was to remove the check
for "mpath-" (patch 04/10), which was obviously wrong for non-multipath 
devices. It's correct to have that check in libmultipath/devmapper.c,
but not in kpartx/devmapper.c.

Moreover, by including $MAJOR:$MINOR of the parent device, this format
makes it possible to check whether the given partition device matches
the given parent device whose partitions are supposed to be deleted,
and with the nontrivial suffix, takes precations against casual UUID
conflicts.

For DM devices, my patch set introduces no changes (of course).

Martin

-- 
Dr. Martin Wilck <mwilck@suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel

  reply	other threads:[~2017-05-08  7:47 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-05 22:05 [PATCH 00/10] fixes for kpartx -d Martin Wilck
2017-05-05 22:05 ` [PATCH 01/10] kpartx: test-kpartx: new unit test program Martin Wilck
2017-05-05 22:05 ` [PATCH 02/10] kpartx: avoid ioctl error for loop devices Martin Wilck
2017-05-08 20:46   ` Benjamin Marzinski
2017-05-11  9:33     ` Martin Wilck
2017-05-05 22:05 ` [PATCH 03/10] kpartx: remove is_loop_device Martin Wilck
2017-05-05 22:05 ` [PATCH 04/10] kpartx: dm_remove_partmaps: support non-dm devices Martin Wilck
2017-05-05 22:05 ` [PATCH 05/10] kpartx: dm_devn: return error for non-existent device Martin Wilck
2017-05-05 22:05 ` [PATCH 06/10] kpartx: don't treat multi-linear mappings as partitions Martin Wilck
2017-05-05 22:05 ` [PATCH 07/10] libmultipath: " Martin Wilck
2017-05-05 22:05 ` [PATCH 08/10] kpartx: use partition UUID for non-DM devices Martin Wilck
2017-05-05 22:30   ` Alasdair G Kergon
2017-05-08  8:01     ` Martin Wilck
2017-05-05 22:05 ` [PATCH 09/10] kpartx: use absolute path for regular files Martin Wilck
2017-05-05 22:05 ` [PATCH 10/10] kpartx: find_loop_by_file: use sysfs Martin Wilck
2017-05-05 22:18 ` [PATCH 00/10] fixes for kpartx -d Alasdair G Kergon
2017-05-05 22:30   ` Martin Wilck
2017-05-05 22:36     ` Martin Wilck
2017-05-08  6:33     ` Hannes Reinecke
2017-05-08  7:47       ` Martin Wilck [this message]
2017-05-08  7:54         ` Martin Wilck
2017-05-08 22:21 ` Benjamin Marzinski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1494229670.5362.2.camel@suse.com \
    --to=mwilck@suse.com \
    --cc=agk@redhat.com \
    --cc=dm-devel@redhat.com \
    --cc=hare@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.