Accepting request 774282 from home:cyphar:lxc

- Update to LXD 3.21. The full upstream changelog is available from:
  https://discuss.linuxcontainers.org/t/lxd-3-21-has-been-released/6802
  boo#1163651
  + New way to attach to LXD managed networks
  + Clustering: Configurable number of active and standby database members
  * Ceph ported to new storage driver infrastructure
  * VM: CPU pinning and topology
  * VM: Network and storage optimizations
  * VM: Agent-less reporting of IPv6 addresses
- Remove upstreamed patch. boo#1156336
  - boo1156336-0001-vfs-vfs__delete-fix-double-unlock-of-root-mutex.patch

OBS-URL: https://build.opensuse.org/request/show/774282
OBS-URL: https://build.opensuse.org/package/show/Virtualization:containers/lxd?expand=0&rev=45
This commit is contained in:
Aleksa Sarai 2020-02-14 07:50:23 +00:00 committed by Git OBS Bridge
parent 87879031d6
commit 1e5a56bdf6
7 changed files with 35 additions and 71 deletions

View File

@ -1,47 +0,0 @@
From 13548f8bdb309d18801de9febb8f5829b6b9ae55 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <cyphar@cyphar.com>
Date: Fri, 31 Jan 2020 20:57:47 +1100
Subject: [PATCH] vfs: vfs__delete: fix double-unlock of &root->mutex
vfs__delete_contents would unlock the passed &root->mutex, but all of
its callers would then also unlock the passed &root->mutex. It turns out
that this works on most architectures without issue, but apparently on
some Intel CPUs with TSX enabled this will trigger a general protection
fault[1,2].
This was the cause of a very frustrating bug where LXD would segfault on
start-up[3].
[1]: https://lwn.net/Articles/534758/
[2]: https://software.intel.com/en-us/forums/intel-isa-extensions/topic/675036
[3]: https://bugzilla.opensuse.org/show_bug.cgi?id=1156336
Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
---
src/vfs.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/src/vfs.c b/src/vfs.c
index 3a4c205a1d4a..443a6ad3b980 100644
--- a/src/vfs.c
+++ b/src/vfs.c
@@ -619,7 +619,6 @@ static int vfs__delete_content(struct root *root, const char *filename)
/* Check that there are no consumers of this file. */
if (content->refcount > 0) {
root->error = EBUSY;
- pthread_mutex_unlock(&root->mutex);
rc = SQLITE_IOERR_DELETE;
goto err;
}
@@ -630,8 +629,6 @@ static int vfs__delete_content(struct root *root, const char *filename)
/* Reset the file content slot. */
*(root->contents + content_index) = NULL;
- pthread_mutex_unlock(&root->mutex);
-
return SQLITE_OK;
err:
--
2.25.0

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fb0189ff417a55fef551c749e60993977421e4788cbb9f57a08f037d8b8b4b3f
size 24549158

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEYC9WdmPlk7y9FPM4xjiXTWR5LWcFAl4zMqEACgkQxjiXTWR5
LWf3XhAA2MgOeb5f7oF3/mHaIow0HvOtBUEQpZW9/j18zsfO0vhrxuXtQf5iOcnO
oS/o5HH0erghn0sdPmn5r+MyDoqEP2sTpNlCIiyVjx7BgtMkE/pwyhRpdXS9Si+w
dC9zotL7qXDYEXOGfpqlZGbOk0DXEmRPmWQ7NMSINOIBkjA/fYCPy4iFoKwdqjRV
ODSM35WMIdY1noi//d2PYOZyuK38yN3b5uyDrWi2DUc1xXH+MHzaFCkr7tWalDcf
9plMlzFgOpXRU13VvxBDgCeAT4CimDvP2zf7gaAPWFsBr7E4AOXazuvDfvIclZvA
DdZdQy0F8RRh3ULY+qCfkK01IsxO32mjh7/oj2mrBx6l+HVyXKE6hzT/xEkqxd5k
j0dqkilIbVFeuWIGBCdh5JfvbbHLKvzYt75BSdBrC1t8EasfbN2w5hmVBkYMZV6+
9MSTjfyl+4WgiynmG0Ihidd5ouAtJ+ijEqEfCk0nHgZjslEZ720giRFbwCqh3wNc
D8QpmDaN7qc4r64aHwP4J4ii6P312363lWom3/SzQj795az5MYHRBHTeLSBM7hQO
Y6nn+k99tc2z7/bmHT1RA7vJYEsXb36AtWPLzsrB6GJR8vMhSz6C5n9H3bR+fQd1
fWLVadXl9ULEiiYaWU/ypvjYv9YEp8sRbbSvMCuHKyVw/5Zl/Ko=
=se38
-----END PGP SIGNATURE-----

3
lxd-3.21.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:14d976c39f7faa80eb249668982cbf40dd5d6f3edf9879cd3d8ffa604121353f
size 24576934

16
lxd-3.21.tar.gz.asc Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEYC9WdmPlk7y9FPM4xjiXTWR5LWcFAl5Fy1MACgkQxjiXTWR5
LWcu0hAAz8vl3aVtHGZCUp7mJURPI9l12JNHoj14bgVm1jWrCWx1TpMAReBeCTIb
zFJsL63tGz9aiEOehWGEgX8DXYzcYLf+Ar3ALG7lT8ebVxjjwrfoLsiNJtAv2g8W
FbUeyT67rQrMHIdAK4W5/AhoKZ3vN6av5F9lPFbBPNTFOlKYCk4a/yKsbHgFd5o7
I7V4icCoBmD4YuijVXgQlRwlwPK6ge2HwAm5j5tfsTOFJNSUVKPvqL/9BX/CvFAA
OQLlwnvm6PQJCn7AQuN/W13/Z8NgHrDY+GUnZIob/PLroQgRTi8qmEt3vfoNeuiB
HwvzduyRaUIUYfHUxj47lBjYBCtp/VQX5GBpWsl3KcHrC4DovKKzR+ZBVmfjP6U9
ReR4+0lrr+iIrl7TlBVktcuMyiJ0OK5ZswkQHWCt0d8p/CLTE7vPuMy/ViipK8W6
KI9t0e7OVRB1ljCGnJQiXWCKPjf8QdFMlB6Ym2iCn5qfIjWA4b8Q44/oBkoAorrl
dq0y0JyDJ9FD5XRPBEp/e3zKbdy1jExuJlcYil8T/fgeaqkqWvl/Hm2e/p8uI/vV
2DTRcQ2KrSMNKhXwj6zuPbF44DDzH6IargxpfL1i2pKSmxtKCaZc4m41GrJXFj5R
YKEeri5wsctwhT5sc0c3b06lJ2Qz8dsPPYO4JxnB/O1mZZRvPTQ=
=U1rs
-----END PGP SIGNATURE-----

View File

@ -1,3 +1,18 @@
-------------------------------------------------------------------
Fri Feb 14 07:27:24 UTC 2020 - Aleksa Sarai <asarai@suse.com>
- Update to LXD 3.21. The full upstream changelog is available from:
https://discuss.linuxcontainers.org/t/lxd-3-21-has-been-released/6802
boo#1163651
+ New way to attach to LXD managed networks
+ Clustering: Configurable number of active and standby database members
* Ceph ported to new storage driver infrastructure
* VM: CPU pinning and topology
* VM: Network and storage optimizations
* VM: Agent-less reporting of IPv6 addresses
- Remove upstreamed patch. boo#1156336
- boo1156336-0001-vfs-vfs__delete-fix-double-unlock-of-root-mutex.patch
-------------------------------------------------------------------
Mon Feb 3 15:03:49 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>

View File

@ -23,7 +23,7 @@
%define import_path github.com/lxc/lxd
Name: lxd
Version: 3.20
Version: 3.21
Release: 0
Summary: Container hypervisor based on LXC
License: Apache-2.0
@ -38,8 +38,6 @@ Source100: %{name}.service
# Additional runtime configuration.
Source200: %{name}.sysctl
Source201: %{name}.dnsmasq
# FIX-UPSTREAM: Backport of https://github.com/canonical/dqlite/pull/207. boo#1156336
Patch100: boo1156336-0001-vfs-vfs__delete-fix-double-unlock-of-root-mutex.patch
BuildRequires: fdupes
BuildRequires: golang-packaging
BuildRequires: libacl-devel
@ -90,8 +88,6 @@ Bash command line completion support for %{name}.
%prep
%setup -q
# boo#1156336
%patch100 -d _dist/deps/dqlite -p1
# Create fake "go mod"-like import paths. This is going to be really fun to
# maintain but it's unfortunately necessary because openSUSE doesn't have nice