!12 Fix build fail caused by deprecated-declarations
From: @markeryang Reviewed-by: Signed-off-by:
This commit is contained in:
commit
bf831abbe0
101
0016-vdo-Do-not-use-g_memdup-in-bd_vdo_stats_copy.patch
Normal file
101
0016-vdo-Do-not-use-g_memdup-in-bd_vdo_stats_copy.patch
Normal file
@ -0,0 +1,101 @@
|
||||
From 5528baef6ccc835a06c45f9db34a2c9c3f2dd940 Mon Sep 17 00:00:00 2001
|
||||
From: Vojtech Trefny <vtrefny@redhat.com>
|
||||
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 <vtrefny@redhat.com>
|
||||
---
|
||||
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
|
||||
@ -1,6 +1,6 @@
|
||||
Name: libblockdev
|
||||
Version: 2.24
|
||||
Release: 5
|
||||
Release: 6
|
||||
Summary: libblockdev is a C library supporting GObject introspection for manipulation of block devices
|
||||
License: LGPLv2+
|
||||
URL: https://github.com/storaged-project/libblockdev
|
||||
@ -21,6 +21,7 @@ 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
|
||||
|
||||
BuildRequires: git 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
|
||||
@ -171,6 +172,9 @@ find %{buildroot} -type f -name "*.la" | xargs %{__rm}
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Jul 26 2020 yanglongkang <yannglongkang@huawei.com> - 2.24-6
|
||||
- fix build fail caused by deprecated-declarations
|
||||
|
||||
* Sat Oct 31 2020 Zhiqiang Liu <liuzhiqiang26@huawei.com> - 2.24-5
|
||||
- backport upstream patches-epoch2 to fix serveral problems
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user