spice-protocol: Update to 0.14.2

Signed-off-by: chengguipeng <chengguipeng1@huawei.com>
This commit is contained in:
chengguipeng 2020-07-23 16:13:55 +08:00
parent 8e385fbe5c
commit 139efaccc7
4 changed files with 12 additions and 85 deletions

View File

@ -1,75 +0,0 @@
From beda5ec7a6848be20c0cac2a9a8ef2a41e8069c1 Mon Sep 17 00:00:00 2001
From: Frediano Ziglio <fziglio@redhat.com>
Date: Thu, 28 Jun 2018 21:30:21 +0100
Subject: [PATCH] qxl_dev: Align QXLRam to 4 bytes
This avoids compilers detect misaligned access which can lead to
warnings.
In QEMU the structure is allocated at the beginning of a 4Kb page,
in Xspice is allocated with a calloc, so the structure will end up 4
bytes aligned as well with these users. We are not aware of other users
of QXLRam, but if there was, it's likely the struct would be at least
naturally aligned, so this change should not impact anyone.
Aligning to 4 bytes maintains the size of the structure unchanged
avoiding possible ABI changes.
clang currently generates an invalid function call if a misaligned
4 byte atomic operation is detected.
This fixes https://bugzilla.redhat.com/show_bug.cgi?id=1565766
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Acked-by: Christophe Fergeau <cfergeau@redhat.com>
---
spice/end-packed.h | 1 +
spice/qxl_dev.h | 2 +-
spice/start-packed.h | 2 ++
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/spice/end-packed.h b/spice/end-packed.h
index 1acea18..0efd588 100644
--- a/spice/end-packed.h
+++ b/spice/end-packed.h
@@ -32,6 +32,7 @@
/* See start-packed.h for details */
#undef SPICE_ATTR_PACKED
+#undef SPICE_ATTR_ALIGNED
#if defined(__MINGW32__) || !defined(__GNUC__)
#pragma pack(pop)
diff --git a/spice/qxl_dev.h b/spice/qxl_dev.h
index 9e753c4..a9cc4f4 100644
--- a/spice/qxl_dev.h
+++ b/spice/qxl_dev.h
@@ -253,7 +253,7 @@ SPICE_RING_DECLARE(QXLReleaseRing, uint64_t, QXL_RELEASE_RING_SIZE);
#define QXL_INTERRUPT_CLIENT_MONITORS_CONFIG (1 << 5)
/* qxl-1 compat: append only */
-typedef struct SPICE_ATTR_PACKED QXLRam {
+typedef struct SPICE_ATTR_ALIGNED(4) SPICE_ATTR_PACKED QXLRam {
uint32_t magic;
uint32_t int_pending;
uint32_t int_mask;
diff --git a/spice/start-packed.h b/spice/start-packed.h
index ab3fa98..de0c595 100644
--- a/spice/start-packed.h
+++ b/spice/start-packed.h
@@ -48,6 +48,7 @@
#ifdef __GNUC__
#define SPICE_ATTR_PACKED __attribute__ ((__packed__))
+#define SPICE_ATTR_ALIGNED(n) __attribute__ ((__aligned__ (n)))
#ifdef __MINGW32__
#pragma pack(push,1)
@@ -58,6 +59,7 @@
#pragma pack(push)
#pragma pack(1)
#define SPICE_ATTR_PACKED
+#define SPICE_ATTR_ALIGNED(n) __declspec (align (n))
#pragma warning(disable:4200)
#pragma warning(disable:4103)
--
2.17.1

Binary file not shown.

Binary file not shown.

View File

@ -1,34 +1,36 @@
Name: spice-protocol
Version: 0.12.14
Release: 3
Version: 0.14.2
Release: 1
Summary: Spice protocol header files
License: BSD and LGPLv2+
URL: http://www.spice-space.org/
Source0: http://www.spice-space.org/download/releases/%{name}-%{version}.tar.bz2
Source0: http://www.spice-space.org/download/releases/%{name}-%{version}.tar.xz
BuildArch: noarch
Patch1: 0001-qxl_dev-Align-QXLRam-to-4-bytes.patch
BuildRequires: meson
%description
This package provides header files describing the spice protocol and
the para-virtual graphics card QXL.
%prep
%autosetup -n %{name}-%{version} -p1
%autosetup -p1
%build
%configure
make %{?_smp_mflags}
%meson
%meson_build
%install
%make_install
%meson_install
%files
%defattr(-,root,root)
%doc COPYING NEWS
%doc COPYING CHANGELOG.md
%{_includedir}/spice-1/spice/*.h
%{_datadir}/pkgconfig/spice-protocol.pc
%changelog
* Thu Jul 16 2020 chengguipeng <chengguipeng@huawei.com> - 0.14.2-1
- Upgrade to 0.14.2
* Mon Dec 9 2019 openEuler Buildteam <buildteam@openeuler.org> - 0.12.14-3
- Package init