Age | Commit message (Collapse) | Author |
|
On Cirrus CI, this test would sometimes fail, probably due to pause
being awoken by SIGRT_1. sigwait is a superior alternative to pause.
Fixes #1354
|
|
Fix intermittency in some tests
|
|
On Cirrus-CI, these tests frequently segfault. It's probably indicative
of a real bug, not just a problem in the tests. But for now we need to
skip them to get CI working.
Issue #555
|
|
On OSX, this test has begun to fail in CI on OSX. Presumably it's because
aio_suspend was getting interrupted by a signal.
|
|
The test was assuming that once dropped, a temporary file's file
descriptor would be invalid. But it might not be, because another file
might be opened with the same file descriptor. Instead, use an
obviously invalid file descriptor.
|
|
Switch all builds from Travis to Cirrus
|
|
Ensure that the exec functions' arguments are valid for 'static.
Previously they were short-lived temporaries.
|
|
Travis has been super-slow lately (> 6 hours per build). Cirrus is much
faster: about 20 minutes. Cirrus also has slightly better test
coverage, mainly because it doesn't use SECCOMP.
Also,
* Fix the Redox CI build. The old Travis configuration didn't actually
build for Redox, so we never noticed that Redox can't be built with a
stable compiler. Thanks to @coolreader18 for finding this.
* Disable the udp_offload tests on cross-tested platforms. These tests
are failing with ENOPROTOOPT in Cirrus-CI. I suspect it's due to a
lack of support in QEMU. These tests were skipped on Travis because
its kernel was too old.
* Fix require_kernel_version on Cirrus-CI. Cirrus reports the Linux
kernel version as 4.19.112+, which the semver crate can't handle.
* Fix test_setfsuid on Cirrus. When run on Cirrus, it seems like the
file in /tmp gets deleted as soon as it's closed. Probably an
overzealous temporary file cleaner. Use /var/tmp, because no
temporary file cleaner should run in there.
* Skip mount tests on Cirrus. They fail for an unknown reason.
Issue #1351
* Skip the AF_ALG tests on Cirrus-CI
Issue #1352
|
|
When run in Cirrus-CI's environment, the tests generate copious SIGRT_1
signals. This commit ensures that test_alarm will ignore them.
|
|
When run in Cirrus-CI's environment, the tests generate copious SIGRT_1
signals. This commit ensures that the poll tests will retry on EINTR.
|
|
|
|
It's deprecated by Xcode, and the version of Xcode installed by
Cirrus-CI doesn't include 32 bit libraries.
|
|
|
|
1345: Disable test-aio-drop in GNU environments r=asomers a=asomers
This test occasionally fails in Travis on x86_64-unknown-linux-gnu. The
failure takes the form of the test executable receiving a random signal.
Sometimes SIGHUP, sometimes SIGKILL, etc. I think this must be a bug in
glibc, even though I can't reproduce it in my development environment.
But it interferes with CI too much to leave enabled.
Co-authored-by: Alan Somers <asomers@gmail.com>
|
|
|
|
1341: Fix recvmmsg(2) implementation r=asomers a=codeslinger
There were two problems discovered with the `recvmmsg(2)` implementation
that this changeset attempts to fix:
1. As mentioned in nix-rust/issues/1325, `recvmmsg(2)` can return fewer
messages than requested, and
2. Passing the return value of `recvmmsg(2)` as the number of bytes in
the messages received is incorrect.
This changeset incorporates the proposed fix from nix-rust/issues/1325,
as well as passing the correct value (`mmsghdr.msg_len`) for the number
of bytes in a given message.
Co-authored-by: Toby DiPasquale <toby@cbcg.net>
|
|
This test occasionally fails in Travis on x86_64-unknown-linux-gnu. The
failure takes the form of the test executable receiving a random signal.
Sometimes SIGHUP, sometimes SIGKILL, etc. I think this must be a bug in
glibc, even though I can't reproduce it in my development environment.
But it interferes with CI too much to leave enabled.
|
|
There were two problems discovered with the `recvmmsg(2)` implementation
that this changeset attempts to fix:
1. As mentioned in nix-rust/issues/1325, `recvmmsg(2)` can return fewer
messages than requested, and
2. Passing the return value of `recvmmsg(2)` as the number of bytes in
the messages received is incorrect.
This changeset incorporates the proposed fix from nix-rust/issues/1325,
as well as passing the correct value (`mmsghdr.msg_len`) for the number
of bytes in a given message.
|
|
1337: Add docs.rs target list r=asomers a=myfreeweb
ref: https://blog.rust-lang.org/2020/03/15/docs-rs-opt-into-fewer-targets.html
Makes sense to build docs for all supported OSes (BSD, Redox) rather than completely empty docs for Windows :)
Co-authored-by: myfreeweb <greg@unrelenting.technology>
|
|
ref: https://blog.rust-lang.org/2020/03/15/docs-rs-opt-into-fewer-targets.html
|
|
1332: Suppress temporary libc deprecations r=asomers a=tamird
See individual commits.
This PR is an alternative to #1329.
@asomers
Co-authored-by: Tamir Duberstein <tamird@gmail.com>
|
|
See https://github.com/rust-lang/libc/issues/1848 in which this type is
changing from i32 to i64; the change is being announced via this
deprecation.
|
|
See https://github.com/rust-lang/libc/issues/1501 in which this type's
trait implementations are being removed; the change is being announced
via this deprecation.
|
|
1318: KEEPCNT/KEEPINTVL aren't available on OpenBSD. r=asomers a=ltratt
Without this commit, nix doesn't currently compile on OpenBSD. Some keepalive settings can be set globally, but not per-socket (see e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=970550 for some digging into this). Since it seems that NetBSD and DragonflyBSD have these settings, it makes more sense to only exclude them on OpenBSD rather than include them on (pretty much every) other operating systems.
Co-authored-by: Laurence Tratt <laurie@tratt.net>
|
|
Without this commit, nix doesn't currently compile on OpenBSD. Some keepalive
settings can be set globally, but not per-socket (see e.g.
https://bugzilla.mozilla.org/show_bug.cgi?id=970550 for some digging into this).
Since it seems that NetBSD and DragonflyBSD have these settings, it makes more
sense to only exclude them on OpenBSD rather than include them on (pretty much
every) other operating systems.
|
|
1316: update require_kernel_version string to handle "_" in version string r=asomers a=ritzk
test code breaks on fc333
```
$ cargo test
failures:
---- sys::test_socket::recvfrom::udp_offload::gro stdout ----
thread 'sys::test_socket::recvfrom::udp_offload::gro' panicked at 'called `Result::unwrap()` on an `Err` value: ParseError("Extra junk after valid version: _64")', test/sys/test_socket.rs:292:13
```
this is due underscore in release string( arch/x86_64), which is not supported by semver.
```
$ uname -r
5.8.14-300.fc33.x86_64
```
Co-authored-by: Ritesh Khadgaray <khadgaray@gmail.com>
|
|
test code breaks on fedora 33
```
$ cargo test
failures:
---- sys::test_socket::recvfrom::udp_offload::gro stdout ----
thread 'sys::test_socket::recvfrom::udp_offload::gro' panicked at 'called `Result::unwrap()` on an `Err` value: ParseError("Extra junk after valid version: _64")', test/sys/test_socket.rs:292:13
```
this is due underscore in release string( arch/x86_64), which is not supported by semver.
```
$ uname -r
5.8.14-300.fc33.x86_64
```
Replace the underscore with hypen to provide a consistent sematic.
|
|
1313: Update to cfg-if 1.0 r=asomers a=mbrubeck
Co-authored-by: Matt Brubeck <mbrubeck@limpet.net>
|
|
|
|
1306: Add wrapper for mremap r=asomers a=sporksmith
Fixes #1295
Co-authored-by: Jim Newsome <jnewsome@torproject.org>
|
|
|
|
|
|
1307: Release v0.19.0. r=kamalmarhubi a=qwandor-google
I'd like to get a new version of the crate released including #1301 so that I can get the vsock crate building on Android, and get both imported into the Android tree.
Co-authored-by: Andrew Walbran <qwandor@google.com>
|
|
1283: Add support for TCP_KEEPCNT and TCP_KEEPINTVL TCP keepalive options. r=asomers a=yoav-steinberg
Co-authored-by: Yoav Steinberg <yoav@monfort.co.il>
|
|
|
|
1303: Renable the ScmTimestamp test on FreeBSD i386 r=posborne a=asomers
The relevant bug was fixed in 11.3-RELEASE
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222039
Co-authored-by: Alan Somers <asomers@gmail.com>
|
|
|
|
1301: Support vsock on Android as well as Linux. r=asomers a=qwandor-google
This change depends on rust-lang/libc#1905 so can't be merged until that is merged and released.
Co-authored-by: Andrew Walbran <qwandor@google.com>
|
|
Fix deprecation warning from libc update.
|
|
The relevant bug was fixed in 11.3-RELEASE
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222039
|
|
1296: DragonFlyBSD: use __errno_location now provided by the libc crate r=asomers a=cmusser
Dragonfly recently (in Dfly 5.8) added an `__errno_location()` function to make it easy to access the thread-local `errno` variable. This has been exposed in rust-libc as of 0.2.77. This PR uses that functionality instead of the locally compiled C language shim, which the PR removes. One issue is backwards compatibilty. It requires 0.2.77 libc and DragonFly 5.8. Not sure how to gracefully handle older DragonFly versions, although I'm also not sure doing so is worth it.
Co-authored-by: Chuck Musser <cmusser@sonic.net>
|
|
1300: Add PTRACE_SYSEMU and PTRACE_SYSEMU_SINGLESTEP support r=asomers a=voidc
Closes #1249.
I think @jabedude was working on this, but as there was no progress since May I went ahead and implemented it myself.
I'm not completely sure about the cfg gates. Could we enable the functions for more targets?
I'm also open for suggestions of better names for the new functions.
Co-authored-by: Dominik Stolz <d.stolz@tum.de>
|
|
1293: Mark nix::unistd::fork as unsafe. r=asomers a=vi
Fix tests. No change in documentation.
Resolves #1030.
Don't forget to bump major version number to `0.19`.
Co-authored-by: Vitaly _Vi Shukela <vi0oss@gmail.com>
|
|
|
|
1281: Added clock_gettime, clock_getres, clock_settime, clock_getcpuclockid r=asomers a=xonatius
Picked up #1100 and added `clock_getcpuclockid` call as well. Credits to @kevinwern for the initial version.
https://www.man7.org/linux/man-pages/man2/clock_gettime.2.html
https://www.man7.org/linux/man-pages/man3/clock_getcpuclockid.3.html
Closes #1275
Co-authored-by: Daniil Bondarev <xonatius@gmail.com>
|
|
|
|
This obviates the need for the C language shim for this variable,
which this commit removes.
|
|
|
|
Fix tests. No change in documentation.
Resolves #1030.
|
|
1294: Add allow(unused_unsafe) to some functions. r=asomers a=vi
Co-authored-by: Vitaly _Vi Shukela <vi0oss@gmail.com>
|