diff --git a/0003-exec-Fix-setting-locale-for-util-calls.patch b/0003-exec-Fix-setting-locale-for-util-calls.patch deleted file mode 100644 index b536fc23e66717ff6ad95d46642173155d497d4d..0000000000000000000000000000000000000000 --- a/0003-exec-Fix-setting-locale-for-util-calls.patch +++ /dev/null @@ -1,119 +0,0 @@ -From f1b6e752d8836d23ebcdf6833b96e09678bda2c9 Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Wed, 10 Jun 2020 17:03:28 +0200 -Subject: [PATCH 185/193] exec: Fix setting locale for util calls - -This actually fixes two issue. The _utils_exec_and_report_progress -function didn't set the LC_ALL=C environment variable to make sure -we get output in English. And also we shouldn't use setenv in the -GSpawnChildSetupFunc, it's actually example of what not to do in -g_spawn_async documentation. This fix uses g_environ_setenv and -passes the new environment to the g_spawn call. ---- - src/utils/exec.c | 26 +++++++++++++++++--------- - tests/utils_test.py | 7 +++++++ - 2 files changed, 24 insertions(+), 9 deletions(-) - -diff --git a/src/utils/exec.c b/src/utils/exec.c -index 9293930..37bd960 100644 ---- a/src/utils/exec.c -+++ b/src/utils/exec.c -@@ -140,11 +140,6 @@ static void log_done (guint64 task_id, gint exit_code) { - return; - } - --static void set_c_locale(gpointer user_data __attribute__((unused))) { -- if (setenv ("LC_ALL", "C", 1) != 0) -- g_warning ("Failed to set LC_ALL=C for a child process!"); --} -- - /** - * bd_utils_exec_and_report_error: - * @argv: (array zero-terminated=1): the argv array for the call -@@ -194,6 +189,8 @@ gboolean bd_utils_exec_and_report_status_error (const gchar **argv, const BDExtr - const BDExtraArg **extra_p = NULL; - gint exit_status = 0; - guint i = 0; -+ gchar **old_env = NULL; -+ gchar **new_env = NULL; - - if (extra) { - args_len = g_strv_length ((gchar **) argv); -@@ -219,16 +216,20 @@ gboolean bd_utils_exec_and_report_status_error (const gchar **argv, const BDExtr - args[i] = NULL; - } - -+ old_env = g_get_environ (); -+ new_env = g_environ_setenv (old_env, "LC_ALL", "C", TRUE); -+ - task_id = log_running (args ? args : argv); -- success = g_spawn_sync (NULL, args ? (gchar **) args : (gchar **) argv, NULL, G_SPAWN_SEARCH_PATH, -- (GSpawnChildSetupFunc) set_c_locale, NULL, -- &stdout_data, &stderr_data, &exit_status, error); -+ success = g_spawn_sync (NULL, args ? (gchar **) args : (gchar **) argv, new_env, G_SPAWN_SEARCH_PATH, -+ NULL, NULL, &stdout_data, &stderr_data, &exit_status, error); - if (!success) { - /* error is already populated from the call */ -+ g_strfreev (new_env); - g_free (stdout_data); - g_free (stderr_data); - return FALSE; - } -+ g_strfreev (new_env); - - /* g_spawn_sync set the status in the same way waitpid() does, we need - to get the process exit code manually (this is similar to calling -@@ -297,6 +298,8 @@ static gboolean _utils_exec_and_report_progress (const gchar **argv, const BDExt - gboolean err_done = FALSE; - GString *stdout_data = g_string_new (NULL); - GString *stderr_data = g_string_new (NULL); -+ gchar **old_env = NULL; -+ gchar **new_env = NULL; - - /* TODO: share this code between functions */ - if (extra) { -@@ -325,7 +328,10 @@ static gboolean _utils_exec_and_report_progress (const gchar **argv, const BDExt - - task_id = log_running (args ? args : argv); - -- ret = g_spawn_async_with_pipes (NULL, args ? (gchar**) args : (gchar**) argv, NULL, -+ old_env = g_get_environ (); -+ new_env = g_environ_setenv (old_env, "LC_ALL", "C", TRUE); -+ -+ ret = g_spawn_async_with_pipes (NULL, args ? (gchar**) args : (gchar**) argv, new_env, - G_SPAWN_DEFAULT|G_SPAWN_SEARCH_PATH|G_SPAWN_DO_NOT_REAP_CHILD, - NULL, NULL, &pid, NULL, &out_fd, &err_fd, error); - -@@ -333,9 +339,11 @@ static gboolean _utils_exec_and_report_progress (const gchar **argv, const BDExt - /* error is already populated */ - g_string_free (stdout_data, TRUE); - g_string_free (stderr_data, TRUE); -+ g_strfreev (new_env); - g_free (args); - return FALSE; - } -+ g_strfreev (new_env); - - args_str = g_strjoinv (" ", args ? (gchar **) args : (gchar **) argv); - msg = g_strdup_printf ("Started '%s'", args_str); -diff --git a/tests/utils_test.py b/tests/utils_test.py -index 4bec3db..2bec5ed 100644 ---- a/tests/utils_test.py -+++ b/tests/utils_test.py -@@ -170,6 +170,13 @@ class UtilsExecLoggingTest(UtilsTestCase): - # exit code != 0 - self.assertTrue(BlockDev.utils_check_util_version("libblockdev-fake-util-fail", "1.1", "version", "Version:\\s(.*)")) - -+ @tag_test(TestTags.NOSTORAGE, TestTags.CORE) -+ def test_exec_locale(self): -+ """Verify that setting locale for exec functions works as expected""" -+ -+ succ, out = BlockDev.utils_exec_and_capture_output(["locale"]) -+ self.assertTrue(succ) -+ self.assertIn("LC_ALL=C", out) - - class UtilsDevUtilsTestCase(UtilsTestCase): - @tag_test(TestTags.NOSTORAGE, TestTags.CORE) --- -1.8.3.1 - diff --git a/0004-lvm-Fix-checking-for-LVM-VDO-dependencies.patch b/0003-lvm-Fix-checking-for-LVM-VDO-dependencies.patch similarity index 100% rename from 0004-lvm-Fix-checking-for-LVM-VDO-dependencies.patch rename to 0003-lvm-Fix-checking-for-LVM-VDO-dependencies.patch diff --git a/0005-lvm-dbus-Fix-memory-leak-in-bd_lvm_cache_attach.patch b/0004-lvm-dbus-Fix-memory-leak-in-bd_lvm_cache_attach.patch similarity index 100% rename from 0005-lvm-dbus-Fix-memory-leak-in-bd_lvm_cache_attach.patch rename to 0004-lvm-dbus-Fix-memory-leak-in-bd_lvm_cache_attach.patch diff --git a/0006-lvm-Fix-memory-leak-bd_lvm_cache_create_cached_lv.patch b/0005-lvm-Fix-memory-leak-bd_lvm_cache_create_cached_lv.patch similarity index 100% rename from 0006-lvm-Fix-memory-leak-bd_lvm_cache_create_cached_lv.patch rename to 0005-lvm-Fix-memory-leak-bd_lvm_cache_create_cached_lv.patch diff --git a/0007-fs-Fix-return-values-in-bd_fs_ntfs_get_info.patch b/0006-fs-Fix-return-values-in-bd_fs_ntfs_get_info.patch similarity index 100% rename from 0007-fs-Fix-return-values-in-bd_fs_ntfs_get_info.patch rename to 0006-fs-Fix-return-values-in-bd_fs_ntfs_get_info.patch diff --git a/0008-fs-Fix-return-values-in-bd_fs_xfs_get_info.patch b/0007-fs-Fix-return-values-in-bd_fs_xfs_get_info.patch similarity index 100% rename from 0008-fs-Fix-return-values-in-bd_fs_xfs_get_info.patch rename to 0007-fs-Fix-return-values-in-bd_fs_xfs_get_info.patch diff --git a/0009-dm-Fix-comparing-DM-RAID-member-devices-UUID.patch b/0008-dm-Fix-comparing-DM-RAID-member-devices-UUID.patch similarity index 100% rename from 0009-dm-Fix-comparing-DM-RAID-member-devices-UUID.patch rename to 0008-dm-Fix-comparing-DM-RAID-member-devices-UUID.patch diff --git a/0010-dm-Fix-memory-leak-in-the-DM-plugin-and-DM-logging-r.patch b/0010-dm-Fix-memory-leak-in-the-DM-plugin-and-DM-logging-r.patch deleted file mode 100644 index 562d85dc8ef8863e30592a721ae79cac3bc50cdd..0000000000000000000000000000000000000000 --- a/0010-dm-Fix-memory-leak-in-the-DM-plugin-and-DM-logging-r.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 6c0ae13b509975e67c65d690d388afccc78a0b63 Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Fri, 25 Sep 2020 14:23:24 +0200 -Subject: [PATCH 10/15] dm: Fix memory leak in the DM plugin and DM logging - redirect function - -conflict: - 1. there is no dm_logging.c in v2.24 - -Signed-off-by: Vojtech Trefny -Signed-off-by: Zhiqiang Liu ---- - src/plugins/dm.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/plugins/dm.c b/src/plugins/dm.c -index 93a47f4..e8f0f4e 100644 ---- a/src/plugins/dm.c -+++ b/src/plugins/dm.c -@@ -246,6 +246,7 @@ gchar* bd_dm_name_from_node (const gchar *dm_node, GError **error) { - - if (!success) { - /* errror is already populated */ -+ g_free (ret); - return NULL; - } - --- -1.8.3.1 - diff --git a/0011-fs-Fix-memory-leak.patch b/0011-fs-Fix-memory-leak.patch deleted file mode 100644 index 4ada5431823021e543fee99bcaa17ee7584aa970..0000000000000000000000000000000000000000 --- a/0011-fs-Fix-memory-leak.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 11e899c9f7256cd549e6a0a5ef607925b15cdb7a Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Fri, 25 Sep 2020 14:24:14 +0200 -Subject: [PATCH 11/15] fs: Fix memory leak - -Conflict: -1. due to context differences, we have adapted the patch. - -Signed-off-by: Vojtech Trefny -Signed-off-by: Zhiqiang Liu ---- - src/plugins/fs/mount.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/plugins/fs/mount.c b/src/plugins/fs/mount.c -index 43d64e8..98110aa 100644 ---- a/src/plugins/fs/mount.c -+++ b/src/plugins/fs/mount.c -@@ -541,6 +541,7 @@ static gboolean run_as_user (MountFunc func, MountArgs *args, uid_t run_as_uid, - "Unknoen error while reading error."); - g_io_channel_unref (channel); - close (pipefd[0]); -+ g_free(error_msg); - return FALSE; - } - --- -1.8.3.1 - diff --git a/0012-kbd-Fix-memory-leak.patch b/0012-kbd-Fix-memory-leak.patch deleted file mode 100644 index ae7f52bcc422f3271b6eaccee062ba12077d329a..0000000000000000000000000000000000000000 --- a/0012-kbd-Fix-memory-leak.patch +++ /dev/null @@ -1,24 +0,0 @@ -From bc7fddbe15f21eba45d55b3d9a9feaabf954a309 Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Fri, 25 Sep 2020 14:26:24 +0200 -Subject: [PATCH 12/15] kbd: Fix memory leak - ---- - src/plugins/kbd.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/plugins/kbd.c b/src/plugins/kbd.c -index a2908ec..41593be 100644 ---- a/src/plugins/kbd.c -+++ b/src/plugins/kbd.c -@@ -1254,6 +1254,7 @@ static gboolean get_cache_size_used (const gchar *cache_dev_sys, guint64 *size, - g_io_channel_unref (file); - - if (!found) { -+ g_free (line); - g_set_error (error, BD_KBD_ERROR, BD_KBD_ERROR_BCACHE_INVAL, - "Failed to get cache usage data"); - return FALSE; --- -1.8.3.1 - diff --git a/0013-lvm-dbus-Fix-memory-leak.patch b/0013-lvm-dbus-Fix-memory-leak.patch deleted file mode 100644 index fff88be1b773c15f7b517322c2fce6f510b7ada4..0000000000000000000000000000000000000000 --- a/0013-lvm-dbus-Fix-memory-leak.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 696dd84099cc2144b7c6b530933bed01b5fbaac4 Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Fri, 25 Sep 2020 14:26:37 +0200 -Subject: [PATCH 13/15] lvm-dbus: Fix memory leak - ---- - src/plugins/lvm-dbus.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/plugins/lvm-dbus.c b/src/plugins/lvm-dbus.c -index b0efe7a..bf60141 100644 ---- a/src/plugins/lvm-dbus.c -+++ b/src/plugins/lvm-dbus.c -@@ -2978,6 +2978,7 @@ gboolean bd_lvm_cache_detach (const gchar *vg_name, const gchar *cached_lv, gboo - lv_id = g_strdup_printf ("%s/%s", vg_name, cached_lv); - call_lvm_obj_method_sync (lv_id, CACHED_LV_INTF, "DetachCachePool", params, NULL, extra, TRUE, error); - g_free (lv_id); -+ g_free (cache_pool_name); - return ((*error) == NULL); - } - --- -1.8.3.1 - diff --git a/0014-mdraid-Fix-memory-leak.patch b/0014-mdraid-Fix-memory-leak.patch deleted file mode 100644 index 399fc30caf55f9c40167e26f60856af2379674ba..0000000000000000000000000000000000000000 --- a/0014-mdraid-Fix-memory-leak.patch +++ /dev/null @@ -1,24 +0,0 @@ -From d60f654d4547febf7c6ce5353a403ca0df60450c Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Fri, 25 Sep 2020 14:27:22 +0200 -Subject: [PATCH 14/15] mdraid: Fix memory leak - ---- - src/plugins/mdraid.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/plugins/mdraid.c b/src/plugins/mdraid.c -index 74af744..b97bc64 100644 ---- a/src/plugins/mdraid.c -+++ b/src/plugins/mdraid.c -@@ -1332,6 +1332,7 @@ gchar* bd_md_name_from_node (const gchar *node, GError **error) { - continue; - } - node_name = g_path_get_basename (dev_path); -+ g_free (dev_path); - if (g_strcmp0 (node_name, node) == 0) { - found = TRUE; - name = g_path_get_basename (*path_p); --- -1.8.3.1 - diff --git a/0015-swap-Fix-memory-leak.patch b/0015-swap-Fix-memory-leak.patch deleted file mode 100644 index 099c7ec2da2194af66b8775afa85b37f27d28668..0000000000000000000000000000000000000000 --- a/0015-swap-Fix-memory-leak.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 58e7484228fcfbffc439a9d5131a221dd9e35d5f Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Fri, 25 Sep 2020 14:27:54 +0200 -Subject: [PATCH 15/15] swap: Fix memory leak - ---- - src/plugins/swap.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/plugins/swap.c b/src/plugins/swap.c -index 102780a..115f8fc 100644 ---- a/src/plugins/swap.c -+++ b/src/plugins/swap.c -@@ -417,6 +417,7 @@ gboolean bd_swap_swapstatus (const gchar *device, GError **error) { - if (!real_device) { - /* the device doesn't exist and thus is not an active swap */ - g_clear_error (error); -+ g_free (file_content); - return FALSE; - } - } --- -1.8.3.1 - diff --git a/0016-vdo-Do-not-use-g_memdup-in-bd_vdo_stats_copy.patch b/0016-vdo-Do-not-use-g_memdup-in-bd_vdo_stats_copy.patch deleted file mode 100644 index dc9fdd3075f247d7bdad235ab4929a404ef73628..0000000000000000000000000000000000000000 --- a/0016-vdo-Do-not-use-g_memdup-in-bd_vdo_stats_copy.patch +++ /dev/null @@ -1,101 +0,0 @@ -From 5528baef6ccc835a06c45f9db34a2c9c3f2dd940 Mon Sep 17 00:00:00 2001 -From: Vojtech Trefny -Date: Tue, 16 Mar 2021 12:05:37 +0100 -Subject: [PATCH] vdo: Do not use g_memdup in bd_vdo_stats_copy - -g_memdup is deprecated and the replacement g_memdup2 is not yet -available so lets just do the copy manually. - -Signed-off-by: Vojtech Trefny ---- - src/lib/plugin_apis/vdo.api | 17 ++++++++++++++++- - src/lib/plugin_apis/vdo.c | 17 ++++++++++++++++- - src/plugins/vdo.c | 17 ++++++++++++++++- - 3 files changed, 48 insertions(+), 3 deletions(-) - -diff --git a/src/lib/plugin_apis/vdo.api b/src/lib/plugin_apis/vdo.api -index 936f8e0..312de4e 100644 ---- a/src/lib/plugin_apis/vdo.api -+++ b/src/lib/plugin_apis/vdo.api -@@ -170,7 +170,22 @@ void bd_vdo_stats_free (BDVDOStats *stats) { - * Deprecated: 2.24: Use LVM-VDO integration instead. - */ - BDVDOStats* bd_vdo_stats_copy (BDVDOStats *stats) { -- return g_memdup (stats, sizeof (BDVDOStats)); -+ if (stats == NULL) -+ return NULL; -+ -+ BDVDOStats *new_stats = g_new0 (BDVDOStats, 1); -+ -+ new_stats->block_size = stats->block_size; -+ new_stats->logical_block_size = stats->logical_block_size; -+ new_stats->physical_blocks = stats->physical_blocks; -+ new_stats->data_blocks_used = stats->data_blocks_used; -+ new_stats->overhead_blocks_used = stats->overhead_blocks_used; -+ new_stats->logical_blocks_used = stats->logical_blocks_used; -+ new_stats->used_percent = stats->used_percent; -+ new_stats->saving_percent = stats->saving_percent; -+ new_stats->write_amplification_ratio = stats->write_amplification_ratio; -+ -+ return new_stats; - } - - GType bd_vdo_stats_get_type () { -diff --git a/src/lib/plugin_apis/vdo.c b/src/lib/plugin_apis/vdo.c -index 40563ee..3e23bbc 100644 ---- a/src/lib/plugin_apis/vdo.c -+++ b/src/lib/plugin_apis/vdo.c -@@ -106,7 +106,22 @@ void bd_vdo_stats_free (BDVDOStats *stats) { - * Deprecated: 2.24: Use LVM-VDO integration instead. - */ - BDVDOStats* bd_vdo_stats_copy (BDVDOStats *stats) { -- return g_memdup (stats, sizeof (BDVDOStats)); -+ if (stats == NULL) -+ return NULL; -+ -+ BDVDOStats *new_stats = g_new0 (BDVDOStats, 1); -+ -+ new_stats->block_size = stats->block_size; -+ new_stats->logical_block_size = stats->logical_block_size; -+ new_stats->physical_blocks = stats->physical_blocks; -+ new_stats->data_blocks_used = stats->data_blocks_used; -+ new_stats->overhead_blocks_used = stats->overhead_blocks_used; -+ new_stats->logical_blocks_used = stats->logical_blocks_used; -+ new_stats->used_percent = stats->used_percent; -+ new_stats->saving_percent = stats->saving_percent; -+ new_stats->write_amplification_ratio = stats->write_amplification_ratio; -+ -+ return new_stats; - } - - GType bd_vdo_stats_get_type () { -diff --git a/src/plugins/vdo.c b/src/plugins/vdo.c -index 2352394..a9eb54a 100644 ---- a/src/plugins/vdo.c -+++ b/src/plugins/vdo.c -@@ -81,7 +81,22 @@ void bd_vdo_stats_free (BDVDOStats *stats) { - } - - BDVDOStats* bd_vdo_stats_copy (BDVDOStats *stats) { -- return g_memdup (stats, sizeof (BDVDOStats)); -+ if (stats == NULL) -+ return NULL; -+ -+ BDVDOStats *new_stats = g_new0 (BDVDOStats, 1); -+ -+ new_stats->block_size = stats->block_size; -+ new_stats->logical_block_size = stats->logical_block_size; -+ new_stats->physical_blocks = stats->physical_blocks; -+ new_stats->data_blocks_used = stats->data_blocks_used; -+ new_stats->overhead_blocks_used = stats->overhead_blocks_used; -+ new_stats->logical_blocks_used = stats->logical_blocks_used; -+ new_stats->used_percent = stats->used_percent; -+ new_stats->saving_percent = stats->saving_percent; -+ new_stats->write_amplification_ratio = stats->write_amplification_ratio; -+ -+ return new_stats; - } - - --- -2.27.0 diff --git a/libblockdev-2.24.tar.gz b/libblockdev-2.24.tar.gz deleted file mode 100644 index 1adbf0a45e7dc4f90cd0bf586f9d0eef642af1db..0000000000000000000000000000000000000000 Binary files a/libblockdev-2.24.tar.gz and /dev/null differ diff --git a/libblockdev-2.26.tar.gz b/libblockdev-2.26.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..0e59603344327871fc3ebea29b32f8b719c12bce Binary files /dev/null and b/libblockdev-2.26.tar.gz differ diff --git a/libblockdev.spec b/libblockdev.spec index ea4faa243dad1e3f1ccc065a415b33d4d4f5f38b..f5e51f9ab3149c143426813046724967faca54ba 100644 --- a/libblockdev.spec +++ b/libblockdev.spec @@ -1,6 +1,6 @@ Name: libblockdev -Version: 2.24 -Release: 8 +Version: 2.26 +Release: 1 Summary: libblockdev is a C library supporting GObject introspection for manipulation of block devices License: LGPLv2+ URL: https://github.com/storaged-project/libblockdev @@ -8,20 +8,12 @@ Source0: https://github.com/storaged-project/libblockdev/releases/download/%{ver Patch1: 0001-lvm-Add-missing-attribute-to-bd_lvm_pvdata_copy-in-L.patch Patch2: 0002-module.c-Fix-error-message-when-loading-module-witho.patch -Patch3: 0003-exec-Fix-setting-locale-for-util-calls.patch -Patch4: 0004-lvm-Fix-checking-for-LVM-VDO-dependencies.patch -Patch5: 0005-lvm-dbus-Fix-memory-leak-in-bd_lvm_cache_attach.patch -Patch6: 0006-lvm-Fix-memory-leak-bd_lvm_cache_create_cached_lv.patch -Patch7: 0007-fs-Fix-return-values-in-bd_fs_ntfs_get_info.patch -Patch8: 0008-fs-Fix-return-values-in-bd_fs_xfs_get_info.patch -Patch9: 0009-dm-Fix-comparing-DM-RAID-member-devices-UUID.patch -Patch10: 0010-dm-Fix-memory-leak-in-the-DM-plugin-and-DM-logging-r.patch -Patch11: 0011-fs-Fix-memory-leak.patch -Patch12: 0012-kbd-Fix-memory-leak.patch -Patch13: 0013-lvm-dbus-Fix-memory-leak.patch -Patch14: 0014-mdraid-Fix-memory-leak.patch -Patch15: 0015-swap-Fix-memory-leak.patch -Patch16: 0016-vdo-Do-not-use-g_memdup-in-bd_vdo_stats_copy.patch +Patch3: 0003-lvm-Fix-checking-for-LVM-VDO-dependencies.patch +Patch4: 0004-lvm-dbus-Fix-memory-leak-in-bd_lvm_cache_attach.patch +Patch5: 0005-lvm-Fix-memory-leak-bd_lvm_cache_create_cached_lv.patch +Patch6: 0006-fs-Fix-return-values-in-bd_fs_ntfs_get_info.patch +Patch7: 0007-fs-Fix-return-values-in-bd_fs_xfs_get_info.patch +Patch8: 0008-dm-Fix-comparing-DM-RAID-member-devices-UUID.patch BuildRequires: glib2-devel libyaml-devel libbytesize-devel parted-devel libuuid-devel ndctl-devel device-mapper-devel BuildRequires: device-mapper-devel dmraid-devel systemd-devel nss-devel volume_key-devel >= 0.3.9-7 libblkid-devel libmount-devel @@ -172,6 +164,9 @@ find %{buildroot} -type f -name "*.la" | xargs %{__rm} %changelog +* Wed Nov 17 Wenchao Hao - 2.26-1 +- update to libblockdev-2.26 + * Tue Sep 28 2021 Wenchao Hao - 2.24-8 - NOP:nothing but to make it able to sync between differnt branches