Merge ~danilogondolfo/ubuntu/+source/vim:ppc64el_tests into ubuntu/+source/vim:ubuntu/devel

Proposed by Danilo Egea Gondolfo
Status: Merged
Merged at revision: d067dbdb1ba4619f91ff293964e9810b0835a780
Proposed branch: ~danilogondolfo/ubuntu/+source/vim:ppc64el_tests
Merge into: ubuntu/+source/vim:ubuntu/devel
Diff against target: 169 lines (+90/-12)
2 files modified
debian/changelog (+9/-0)
debian/patches/0002-disable-failing-tests-on-ppc64.patch (+81/-12)
Reviewer Review Type Date Requested Status
Sergio Durigan Junior (community) Approve
git-ubuntu import Pending
Review via email: mp+449952@code.launchpad.net

Description of the change

Some tests related to encryption and libsodium are failing in our infrastructure due to failures with mlock(). See https://launchpadlibrarian.net/681978158/buildlog_ubuntu-mantic-ppc64el.vim_2%3A9.0.1672-1ubuntu1_BUILDING.txt.gz

While I was testing it I noticed that the build might also fail on amd64 and arm64.

Apparently, upstream is facing the same issues in their Github workers, see https://github.com/vim/vim/commits/master/src/testdir/test_crypt.vim

I'm updating one of our distro patches to skip a few more tests to unblock vim.

To post a comment you must log in.
Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

Thanks, Danilo.

Argh, these mlock problems are always fun. Anyway, I agree with the fix and am ready to sponsor it; I just would like you to add the bug number to the changelog entry so that it gets closed when the package migrates.

Thanks.

review: Needs Fixing
Revision history for this message
Danilo Egea Gondolfo (danilogondolfo) wrote :

Thank you, Sergio! I just added the LP bug to the changelog. I'll need to put a post-it note on my monitor so I'll not forget it for the 4th time in a row...

Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

Hah, that's a good idea :-).

I'm just waiting for the dep8 tests to finish running and will upload once everything is green.

Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

OK, amd64 and ppc64el dep8 tests have passed. I'm not waiting for the others because they take took long, and I was most curious about these two architectures anyway.

Uploaded:

$ dput vim_9.0.1672-1ubuntu2_source.changes
Trying to upload package to ubuntu
Checking signature on .changes
gpg: /home/sergio/work/vim/vim_9.0.1672-1ubuntu2_source.changes: Valid signature from 106DA1C8C3CBBF14
Checking signature on .dsc
gpg: /home/sergio/work/vim/vim_9.0.1672-1ubuntu2.dsc: Valid signature from 106DA1C8C3CBBF14
Uploading to ubuntu (via ftp to upload.ubuntu.com):
  Uploading vim_9.0.1672-1ubuntu2.dsc: done.
  Uploading vim_9.0.1672-1ubuntu2.debian.tar.xz: done.
  Uploading vim_9.0.1672-1ubuntu2_source.buildinfo: done.
  Uploading vim_9.0.1672-1ubuntu2_source.changes: done.
Successfully uploaded packages.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/debian/changelog b/debian/changelog
2index b054457..b931f97 100644
3--- a/debian/changelog
4+++ b/debian/changelog
5@@ -1,3 +1,12 @@
6+vim (2:9.0.1672-1ubuntu2) mantic; urgency=medium
7+
8+ * debian/patches/0002-disable-failing-tests-on-ppc64.patch (LP: #2033072)
9+ - Skip few more tests failing on ppc64el due to sodium_mlock().
10+ Some of them also failed on arm64 and armd64 during tests with a PPA, so
11+ skip them on those archs as well.
12+
13+ -- Danilo Egea Gondolfo <danilo.egea.gondolfo@canonical.com> Fri, 25 Aug 2023 13:17:49 +0100
14+
15 vim (2:9.0.1672-1ubuntu1) mantic; urgency=low
16
17 * Merge from Debian unstable. Remaining changes:
18diff --git a/debian/patches/0002-disable-failing-tests-on-ppc64.patch b/debian/patches/0002-disable-failing-tests-on-ppc64.patch
19index 06b7603..36355b7 100644
20--- a/debian/patches/0002-disable-failing-tests-on-ppc64.patch
21+++ b/debian/patches/0002-disable-failing-tests-on-ppc64.patch
22@@ -1,14 +1,27 @@
23-Description: Disable some tests on ppc64el
24- A few of the build time tests were running into an ENOMEM issue on ppc64el.
25- This patch skips the tests on ppc64el only.
26+Description: Disable some tests on ppc64el, arm64 and amd64
27+ A few of the build time tests were running into an ENOMEM issue on ppc64el,
28+ arm64 and sometimes on amd64.
29+ All the errors seem to be caused by sodium_mlock() trying to lock more memory than available.
30+ This patch skips the tests on ppc64el and a subset of them in arm64 and amd64 only.
31 Author: William 'jawn-smith' Wilson <jawn-smith@ubuntu.com>
32 Author: Simon Quigley <tsimonq2@ubuntu.com>
33-Last-Update: 2023-01-05
34+Author: Danilo Egea Gondolfo <danilo.egea.gondolfo@canonical.com>
35+Last-Update: 2023-08-25
36 ---
37 This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
38 --- a/src/testdir/test_crypt.vim
39 +++ b/src/testdir/test_crypt.vim
40-@@ -80,6 +80,9 @@ func Test_crypt_blowfish2()
41+@@ -68,6 +68,9 @@
42+ endfunc
43+
44+ func Test_crypt_zip()
45++ if system("uname -m") == "ppc64le\n"
46++ throw 'Skipped: not enough memory on ppc64le'
47++ endif
48+ call Crypt_uncrypt('zip')
49+ endfunc
50+
51+@@ -80,16 +83,25 @@
52 endfunc
53
54 func Test_crypt_sodium()
55@@ -18,17 +31,33 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
56 CheckFeature sodium
57 call Crypt_uncrypt('xchacha20')
58 endfunc
59-@@ -143,6 +146,9 @@ func Uncrypt_stable_xxd(method, hex, key
60+
61+ func Test_crypt_sodium_v2()
62++ if system("uname -m") == "ppc64le\n"
63++ throw 'Skipped: not enough memory on ppc64le'
64++ endif
65+ CheckFeature sodium
66+ call Crypt_uncrypt('xchacha20v2')
67 endfunc
68
69- func Test_uncrypt_zip()
70+ func Test_crypt_sodium_v2_startup()
71 + if system("uname -m") == "ppc64le\n"
72 + throw 'Skipped: not enough memory on ppc64le'
73 + endif
74+ CheckFeature sodium
75+ CheckRunVimInTerminal
76+
77+@@ -143,6 +155,9 @@
78+ endfunc
79+
80+ func Test_uncrypt_zip()
81++ if system("uname -m") == "ppc64le\n" || system("uname -m") == "aarch64\n" || system("uname -m") == "x86_64\n"
82++ throw 'Skipped: not enough memory on ppc64le and sometimes on arm64 and amd64'
83++ endif
84 call Uncrypt_stable('zip', "VimCrypt~01!\u0006\u001clV'\u00de}Mg\u00a0\u00ea\u00a3V\u00a9\u00e7\u0007E#3\u008e2U\u00e9\u0097", "foofoo", ["1234567890", "aábbccddeëff"])
85 endfunc
86
87-@@ -159,6 +165,9 @@ func Test_uncrypt_blowfish2()
88+@@ -159,6 +174,9 @@
89 endfunc
90
91 func Test_uncrypt_xchacha20()
92@@ -38,7 +67,27 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
93 CheckFeature sodium
94 let hex =<< trim END
95 00000000: 5669 6d43 7279 7074 7e30 3421 6b7d e607 vimCrypt~04!k}..
96-@@ -213,6 +222,9 @@ func Test_uncrypt_xchacha20v2()
97+@@ -177,6 +195,9 @@
98+ endfunc
99+
100+ func Test_uncrypt_xchacha20v2_custom()
101++ if system("uname -m") == "ppc64le\n" || system("uname -m") == "aarch64\n" || system("uname -m") == "x86_64\n"
102++ throw 'Skipped: not enough memory on ppc64le and sometimes on arm64 and amd64'
103++ endif
104+ CheckFeature sodium
105+ " Test, reading xchacha20v2 with custom encryption parameters
106+ let hex =<< trim END
107+@@ -194,6 +215,9 @@
108+ endfunc
109+
110+ func Test_uncrypt_xchacha20v2()
111++ if system("uname -m") == "ppc64le\n"
112++ throw 'Skipped: not enough memory on ppc64le'
113++ endif
114+ CheckFeature sodium
115+ " Test, reading xchacha20v2
116+ let hex =<< trim END
117+@@ -213,6 +237,9 @@
118 endfunc
119
120 func Test_uncrypt_xchacha20_invalid()
121@@ -48,7 +97,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
122 CheckFeature sodium
123
124 " load an invalid encrypted file and verify it can be decrypted with an
125-@@ -232,6 +244,9 @@ func Test_uncrypt_xchacha20_invalid()
126+@@ -232,6 +259,9 @@
127 endfunc
128
129 func Test_uncrypt_xchacha20_2()
130@@ -58,7 +107,17 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
131 CheckFeature sodium
132
133 sp Xcrypt_sodium.txt
134-@@ -291,6 +306,9 @@ func Test_uncrypt_xchacha20v2_2()
135+@@ -261,6 +291,9 @@
136+ endfunc
137+
138+ func Test_uncrypt_xchacha20v2_2()
139++ if system("uname -m") == "ppc64le\n" || system("uname -m") == "aarch64\n" || system("uname -m") == "x86_64\n"
140++ throw 'Skipped: not enough memory on ppc64le and sometimes on arm64 and amd64'
141++ endif
142+ CheckFeature sodium
143+
144+ sp Xcrypt_sodium_v2.txt
145+@@ -291,6 +324,9 @@
146 endfunc
147
148 func Test_uncrypt_xchacha20_3_persistent_undo()
149@@ -68,9 +127,19 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
150 CheckFeature sodium
151 CheckFeature persistent_undo
152
153+@@ -393,6 +429,9 @@
154+ endfunc
155+
156+ func Test_crypt_set_key_segfault()
157++ if system("uname -m") == "ppc64le\n"
158++ throw 'Skipped: not enough memory on ppc64le'
159++ endif
160+ CheckFeature sodium
161+
162+ defer delete('Xtest2.txt')
163 --- a/src/testdir/test_quickfix.vim
164 +++ b/src/testdir/test_quickfix.vim
165-@@ -4255,6 +4255,9 @@ endfunc
166+@@ -4255,6 +4255,9 @@
167
168 " The following test used to crash Vim
169 func Test_lvimgrep_crash()

Subscribers

People subscribed via source and target branches