<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-linux/tools/testing/selftests/wireguard/qemu/Makefile, branch backport-5.4.y</title>
<subtitle>WireGuard for the Linux kernel</subtitle>
<id>http://git.waynecole.info/wireguard-linux/atom?h=backport-5.4.y</id>
<link rel='self' href='http://git.waynecole.info/wireguard-linux/atom?h=backport-5.4.y'/>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/'/>
<updated>2022-07-07T11:26:46Z</updated>
<entry>
<title>wireguard: selftests: use microvm on x86</title>
<updated>2022-07-07T11:26:46Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2022-07-07T00:31:55Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=75b996084918a6c2877ccb4808ecf715c6cfb438'/>
<id>urn:sha1:75b996084918a6c2877ccb4808ecf715c6cfb438</id>
<content type='text'>
commit b83fdcd9fb8ad7e59f4188ba9ec221917f463a17 upstream.

This makes for faster tests, faster compile time, and allows us to ditch
ACPI finally.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: always call kernel makefile</title>
<updated>2022-07-07T11:26:46Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2022-07-07T00:31:54Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=d464ac26e127868e565fbcdff0d3cb048a18be67'/>
<id>urn:sha1:d464ac26e127868e565fbcdff0d3cb048a18be67</id>
<content type='text'>
commit 1a087eec257154e26a81a7a0a15380d7a2431765 upstream.

These selftests are used for much more extensive changes than just the
wireguard source files. So always call the kernel's build file, which
will do something or nothing after checking the whole tree, per usual.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: bump package deps</title>
<updated>2022-07-07T11:26:46Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2022-05-04T20:29:19Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=19b81aa9ed3358d08e4b691d8dd2ad88d38b3e34'/>
<id>urn:sha1:19b81aa9ed3358d08e4b691d8dd2ad88d38b3e34</id>
<content type='text'>
commit a6b8ea9144340c0aaa66c817a3bbb6bca47f0321 upstream.

Use newer, more reliable package dependencies. These should hopefully
reduce flakes. However, we keep the old iputils package, as it
accumulated bugs after resulting in flakes on slow machines.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: restore support for ccache</title>
<updated>2022-07-07T11:26:46Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2022-05-04T20:29:18Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=b16c995fe5656941cdab37ac6fea252f5cebf83b'/>
<id>urn:sha1:b16c995fe5656941cdab37ac6fea252f5cebf83b</id>
<content type='text'>
commit d261ba6aa411e03c27da266b7df4bef771e8105e upstream.

When moving to non-system toolchains, we inadvertantly killed the
ability to use ccache. So instead, build ccache support into the test
harness directly.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: use newer toolchains to fill out architectures</title>
<updated>2022-07-07T11:26:46Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2022-05-04T20:29:17Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=7bae33e788ef78f8b93b32545d4395addb70d375'/>
<id>urn:sha1:7bae33e788ef78f8b93b32545d4395addb70d375</id>
<content type='text'>
commit d5d9b29bc963cc084c5c0f3a7c28e2632a22e0c4 upstream.

Rather than relying on the system to have cross toolchains available,
simply download musl.cc's ones and use that libc.so, and then we use it
to fill in a few missing platforms, such as s390x and powerpc64.

Also, on arm, use virtio's serial port to avoid having to patch QEMU.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: use newer iproute2 for gcc-10</title>
<updated>2022-07-07T11:26:42Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2020-05-20T04:49:27Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=5842e9e2879fef40ec745257b60d57f66f3d9364'/>
<id>urn:sha1:5842e9e2879fef40ec745257b60d57f66f3d9364</id>
<content type='text'>
commit ee3c1aa3f34b7842c1557cfe5d8c3f7b8c692de8 upstream.

gcc-10 switched to defaulting to -fno-common, which broke iproute2-5.4.
This was fixed in iproute-5.6, so switch to that. Because we're after a
stable testing surface, we generally don't like to bump these
unnecessarily, but in this case, being able to actually build is a basic
necessity.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: reduce complexity and fix make races</title>
<updated>2022-07-07T11:26:41Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2020-02-14T22:57:20Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=92d2e39be8de73e9962ce74fc823b218c205d0a3'/>
<id>urn:sha1:92d2e39be8de73e9962ce74fc823b218c205d0a3</id>
<content type='text'>
commit 04ddf1208f03e1dbc39a4619c40eba640051b950 upstream.

This gives us fewer dependencies and shortens build time, fixes up some
hash checking race conditions, and also fixes missing directory creation
that caused issues on massively parallel builds.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: remove ancient kernel compatibility code</title>
<updated>2022-07-07T11:26:40Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2020-01-02T16:47:49Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=b9b9879dc9b1ed15634d3ed163db8068e7d730e2'/>
<id>urn:sha1:b9b9879dc9b1ed15634d3ed163db8068e7d730e2</id>
<content type='text'>
commit 9a69a4c8802adf642bc4a13d471b5a86b44ed434 upstream.

Quite a bit of the test suite was designed to work with ancient kernels.
Thankfully we no longer have to deal with this. This commit updates
things that we can finally update and removes things that we can finally
remove, to avoid the build-up of the last several years as a result of
having to support ancient kernels. We can finally rely on suppress_
prefixlength being available. On the build side of things, the no-PIE
hack is no longer required, and we can bump some of the tools, repair
our m68k and i686-kvm support, and get better coverage of the static
branches used in the crypto lib and in udp_tunnel.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>wireguard: selftests: import harness makefile for test suite</title>
<updated>2022-07-07T11:26:40Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2019-12-15T21:08:00Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/wireguard-linux/commit/?id=780920c4e22164c317bcce78bcf8ec0948961619'/>
<id>urn:sha1:780920c4e22164c317bcce78bcf8ec0948961619</id>
<content type='text'>
commit 65d88d04114bca7d85faebd5fed61069cb2b632c upstream.

WireGuard has been using this on build.wireguard.com for the last
several years with considerable success. It allows for very quick and
iterative development cycles, and supports several platforms.

To run the test suite on your current platform in QEMU:

  $ make -C tools/testing/selftests/wireguard/qemu -j$(nproc)

To run it with KASAN and such turned on:

  $ DEBUG_KERNEL=yes make -C tools/testing/selftests/wireguard/qemu -j$(nproc)

To run it emulated for another platform in QEMU:

  $ ARCH=arm make -C tools/testing/selftests/wireguard/qemu -j$(nproc)

At the moment, we support aarch64_be, aarch64, arm, armeb, i686, m68k,
mips64, mips64el, mips, mipsel, powerpc64le, powerpc, and x86_64.

The system supports incremental rebuilding, so it should be very fast to
change a single file and then test it out and have immediate feedback.

This requires for the right toolchain and qemu to be installed prior.
I've had success with those from musl.cc.

This is tailored for WireGuard at the moment, though later projects
might generalize it for other network testing.

Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
</feed>
