[oe] [meta-oe][PATCH] libdevmapper: Install dmsetup

Andrew Bresticker abrestic at waymo.com
Fri Sep 14 23:56:06 UTC 2018


On Thu, Sep 13, 2018 at 6:50 PM, Hongxu Jia <hongxu.jia at windriver.com> wrote:
> On 2018年09月14日 00:22, Andrew Bresticker wrote:
>>
>> Hi,
>>
>> On Thu, Sep 13, 2018 at 8:22 AM, Hongxu Jia <hongxu.jia at windriver.com>
>> wrote:
>>>
>>> On 2018年09月13日 05:22, Andrew Bresticker wrote:
>>>
>>> Commit 6aa1dd223a140 ("lvm2/libdevmapper: fix invoking lvcreate failed")
>>> accidentally removed installation of dmsetup as part of the libdevmapper
>>> recipe. Add it back by explicitly installing it in do_install().
>>>
>>>
>>> Why? I am afraid your fix will cause `invoking lvcreate failed'
>>
>> Because presently users have no way to install the 'dmsetup' binary.
>> Commit 7f17da154372 ("lvm2: separate libdevmapper to avoid circular
>> dependency") moved installation of dmsetup from lvm2 to the
>> libdevmapper package, and then your commit removes installation of
>> dmsetup entirely (and in fact adds a patch to explicitly disable
>> installation of it as part of the lvm2 package).
>>
>> It looks like the cause of the 'invoking lvcreate failed' issue was a
>> mismatch in EXTRA_OECONF/PACKAGECONFIG between lvm2 and libdevmapper,
>> which was fixed in your patch. The installation of an unrelated binary
>> (dmsetup) doesn't undo that.
>
>
> Would you do the following test with this fix? If lvcreate works
> well, the patch is fine to me.

Yes, lvcreate still works just fine:

# lvm pvcreate /dev/sdf1
  Physical volume "/dev/sdf1" successfully created.
# lvm vgcreate -s 4096K wrl /dev/sdf1
  Volume group "wrl" successfully created
# lvm lvcreate -n swap -L 300M -y --type linear wrl
  Logical volume "swap" created.

But I misspoke before -- your patch actually moved installation of
dmsetup back to lvm2 from libdevmapper. So my patch results in dmsetup
getting installed in two different packages, which is obviously no
good. I think we do want to move it back to libdevmapper, though, per
commit 269d009a81d4 ("lvm2: libdevicemapper package needs udev rules
and dmsetup"). Patch v2 incoming...

Thanks,
Andrew

>
> //Hongxu
>
>
>> Thanks,
>> Andrew
>>
>>> Here is the original log of `Commit 6aa1dd223a140',
>>> I quess the `---' cuased the log truncate in git
>>>
>>> Previously, libdevmapper is separated from lvm2 in the following commit:
>>> ---
>>> commit 7f17da154372b5ec33947766783444961e8aa67c
>>> Author: Chen Qi <Qi.Chen at windriver.com>
>>> Date:   Mon Apr 24 16:06:41 2017 +0800
>>>
>>>      lvm2: separate libdevmapper to avoid circular dependency
>>> ---
>>>
>>> It caused invoking lvcreate failed:
>>> ---
>>> root at qemux86-64:~# lvm pvcreate /dev/sda
>>>    Physical volume "/dev/sda" successfully created.
>>> root at qemux86-64:~# lvm vgcreate -s 4096K wrl /dev/sda
>>>    Volume group "wrl" successfully created
>>> root at qemux86-64:~# lvm lvcreate -n swap -L 2293648K -y --type linear wrl
>>>    Rounding up size to full physical extent 2.19 GiB
>>>    /dev/wrl/swap: not found: device not cleared
>>>    Aborting. Failed to wipe start of new LV.
>>> ---
>>>
>>> The lvm2 and libdevmapper should use the same PACKAGECONFIG
>>> and EXTRA_OECONF.
>>>
>>> And do not manually remove useless files.
>>>
>>> Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
>>>
>>> //Hongxu
>>>
>>>
>>>
>>> Signed-off-by: Andrew Bresticker <abrestic at waymo.com>
>>> ---
>>>   meta-oe/recipes-support/lvm2/libdevmapper_2.02.180.bb | 1 +
>>>   1 file changed, 1 insertion(+)
>>>
>>> diff --git a/meta-oe/recipes-support/lvm2/libdevmapper_2.02.180.bb
>>> b/meta-oe/recipes-support/lvm2/libdevmapper_2.02.180.bb
>>> index f3f11ef64..26af3275d 100644
>>> --- a/meta-oe/recipes-support/lvm2/libdevmapper_2.02.180.bb
>>> +++ b/meta-oe/recipes-support/lvm2/libdevmapper_2.02.180.bb
>>> @@ -9,6 +9,7 @@ TARGET_CC_ARCH += "${LDFLAGS}"
>>>
>>>   do_install() {
>>>       oe_runmake 'DESTDIR=${D}' -C libdm install
>>> +    oe_runmake 'DESTDIR=${D}' -C tools install_device-mapper
>>>   }
>>>
>>>   RRECOMMENDS_${PN}_append_class-target = " lvm2-udevrules"
>>>
>>>
>



More information about the Openembedded-devel mailing list