libaio.git
2 years agoMerge libaio (0.3.113-5) import into refs/heads/workingbranch
Guillem Jover [Sun, 6 Aug 2023 19:12:34 +0000 (20:12 +0100)]
Merge libaio (0.3.113-5) import into refs/heads/workingbranch

2 years ago[PATCH libaio 16/16] harness: Disable failing test 23
Guillem Jover [Tue, 19 Apr 2022 13:45:39 +0000 (15:45 +0200)]
[PATCH libaio 16/16] harness: Disable failing test 23

From b108f741b6ebd1e68a0392a72ba8e35537689ba0 Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: not-needed

This new test fails on several architectures. But it is a new test
intended to check for a Linux kernel regression, so we are not worse
off than were before. Add it to the EXTRACASES variables, which has
currently the side effect of disabling it, as it is not handled
explicitly in the make target responsible for that variable.

Sent-Upstream: not-relevant
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0016-harness-Disable-failing-test-23.patch

2 years ago[PATCH libaio 15/16] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64...
Guillem Jover [Fri, 16 Aug 2019 00:33:46 +0000 (02:33 +0200)]
[PATCH libaio 15/16] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64-bit kernels

From d3fe396f569d113e1259a77f875cde0ed52104ab Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: not-needed

The kernel compat syscall in the kernel got introduced with a broken
layout, which requires a pointer to the actual sigset_t variable but
with the size of the running kernel, not the size of the compat code.

This means that when the wrapper sends the expected compat (32-bit)
pointer, the kernel reads a 64-bit pointer, eating with it also the
sigset size member. And then proceeds to fail the comparison of the
sigset_t size and returns EINVAL.

This really needs to be fixed in the kernel, as there's no apparent
user of the broken compat layout (from codesearch.debian.org, nor a
quick github.com search). But we have to workaround it in libaio so
that we can use kernels that have not yet been fixed.

We do that, by trying the non-broken layout (that would be used with
a 32-bit userland on a 32-bit kernel), and if that fails with -EINVAL
we retry with a structure padded to what the kernel expects.

Sent-Upstream: rejected
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0015-Fix-io_pgetevents-syscall-wrapper-on-32-bit-userland.patch

2 years ago[PATCH libaio 14/16] Add x32 support
Guillem Jover [Sun, 12 Apr 2020 01:36:39 +0000 (03:36 +0200)]
[PATCH libaio 14/16] Add x32 support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0014-Add-x32-support.patch

2 years ago[PATCH libaio 13/16] Add SH support
Nobuhiro Iwamatsu [Sun, 12 Apr 2020 01:30:41 +0000 (03:30 +0200)]
[PATCH libaio 13/16] Add SH support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0013-Add-SH-support.patch

2 years ago[PATCH libaio 12/16] Add m68k support
Guillem Jover [Wed, 14 Aug 2019 01:25:22 +0000 (03:25 +0200)]
[PATCH libaio 12/16] Add m68k support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0012-Add-m68k-support.patch

2 years ago[PATCH libaio 11/16] Add PARISC support
Guillem Jover [Wed, 14 Aug 2019 01:22:10 +0000 (03:22 +0200)]
[PATCH libaio 11/16] Add PARISC support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0011-Add-PARISC-support.patch

2 years ago[PATCH libaio 10/16] Fix and improve MIPS support
Guillem Jover [Wed, 14 Aug 2019 01:18:50 +0000 (03:18 +0200)]
[PATCH libaio 10/16] Fix and improve MIPS support

Fix structure padding for MIPS 64, add syscall definitions, and the
kernel R/W pointer.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0010-Fix-and-improve-MIPS-support.patch

2 years ago[PATCH libaio 09/16] harness: Add KERNEL_RW_POINTER for various 32-bit architectures
Guillem Jover [Wed, 14 Aug 2019 01:30:09 +0000 (03:30 +0200)]
[PATCH libaio 09/16] harness: Add KERNEL_RW_POINTER for various 32-bit architectures

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0009-harness-Add-KERNEL_RW_POINTER-for-various-32-bit-arc.patch

2 years ago[PATCH libaio 08/16] syscall: Fix ia64 definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:44:43 +0000 (03:44 +0200)]
[PATCH libaio 08/16] syscall: Fix ia64 definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0008-syscall-Fix-ia64-definitions-to-match-exactly-the-ke.patch

2 years ago[PATCH libaio 07/16] syscall: Fix ARM definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:39:47 +0000 (03:39 +0200)]
[PATCH libaio 07/16] syscall: Fix ARM definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0007-syscall-Fix-ARM-definitions-to-match-exactly-the-ker.patch

2 years ago[PATCH libaio 06/16] Use new symver function attribute to support LTO builds
Guillem Jover [Tue, 2 Nov 2021 21:37:32 +0000 (22:37 +0100)]
[PATCH libaio 06/16] Use new symver function attribute to support LTO builds

From d2d9bd8ec04c3ddbea1f816da47475248135c515 Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: https://marc.info/?l=linux-aio&m=164999309520544

The LTO support cannot work properly when there are versioned symbols
via asm statements, as those are not seen by the compiler. Use the new
function attributes if supported instead of the asm statements.

We need to move the SYMVER calls after the function definitions
otherwise it will reference symbols not yet seen.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0006-Use-new-symver-function-attribute-to-support-LTO-bui.patch

2 years ago[PATCH libaio 05/16] Move semicolon to SYMVER and DEFSYMVER call sites
Guillem Jover [Tue, 2 Nov 2021 23:20:50 +0000 (00:20 +0100)]
[PATCH libaio 05/16] Move semicolon to SYMVER and DEFSYMVER call sites

From ed76466ea5e551a916e3003b8ed3d7afd5248e9a Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: https://marc.info/?l=linux-aio&m=164999309420541

These look like function macros, so let's unify their call sites to use
function syntax with a final semicolon.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0005-Move-semicolon-to-SYMVER-and-DEFSYMVER-call-sites.patch

2 years ago[PATCH libaio 04/16] build: Remove all test artifacts on clean
Guillem Jover [Sun, 6 Aug 2023 18:56:10 +0000 (20:56 +0200)]
[PATCH libaio 04/16] build: Remove all test artifacts on clean

We create these artifacts when running the test suite, so should remove
them when running the clean target.

Reported-by: Lucas Nussbaum <lucas@debian.org>
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0004-build-Remove-all-test-artifacts-on-clean.patch

2 years ago[PATCH libaio 03/16] build: Honor user build flags
Guillem Jover [Sun, 12 Apr 2020 02:01:27 +0000 (04:01 +0200)]
[PATCH libaio 03/16] build: Honor user build flags

CPPFLAGS, CFLAGS and LDFLAGS are user flags, which we need to preserve,
regardless of the user passing them over the environment or the
command-line. Any required flag that the build system needs, has to be
set in some other flag (which we will namespace with «MK_») so that the
build will use even if the user flags are passed, even though the user
should be able to override by appending after them. We pass CPPFLAGS to
any compilation command that missed them.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0003-build-Honor-user-build-flags.patch

2 years ago[PATCH libaio 02/16] build: Fix DESTDIR and pathname variables handling
Guillem Jover [Sun, 12 Apr 2020 01:58:12 +0000 (03:58 +0200)]
[PATCH libaio 02/16] build: Fix DESTDIR and pathname variables handling

The convention for DESTDIR is that it is only prefixed during the
install target. In this case we postpone that to the inner Makefile
so that it can be invoked directly while preserving the expected
semantics. We should also prefer the user specified pathname variables
if already set in any way, and do not need to pass them explicitly
to the sub-make.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0002-build-Fix-DESTDIR-and-pathname-variables-handling.patch

2 years ago[PATCH libaio 01/16] man: Fix typos
Guillem Jover [Sun, 10 Oct 2021 04:14:51 +0000 (06:14 +0200)]
[PATCH libaio 01/16] man: Fix typos

From f95e1898b6efd3eaf50273bd1c5a8a40816b5160 Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: https://marc.info/?l=linux-aio&m=164999309220532

Warned-by: lintian
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-man-Fix-typos.patch

2 years agolibaio (0.3.113-5) unstable; urgency=medium
Guillem Jover [Sun, 6 Aug 2023 19:12:34 +0000 (20:12 +0100)]
libaio (0.3.113-5) unstable; urgency=medium

  * Wrap fields in debian/tests/control.
  * Fix upstream build system to remove all test artifacts on clean.
    Reported by Lucas Nussbaum <lucas@debian.org>.

[dgit import unpatched libaio 0.3.113-5]

2 years agoImport libaio_0.3.113-5.debian.tar.xz
Guillem Jover [Sun, 6 Aug 2023 19:12:34 +0000 (20:12 +0100)]
Import libaio_0.3.113-5.debian.tar.xz

[dgit import tarball libaio 0.3.113-5 libaio_0.3.113-5.debian.tar.xz]

2 years agoMerge libaio (0.3.113-4) import into refs/heads/workingbranch
Guillem Jover [Wed, 18 Jan 2023 00:35:12 +0000 (00:35 +0000)]
Merge libaio (0.3.113-4) import into refs/heads/workingbranch

2 years ago[PATCH libaio] harness: Disable failing test 23
Guillem Jover [Tue, 19 Apr 2022 13:45:39 +0000 (15:45 +0200)]
[PATCH libaio] harness: Disable failing test 23

From 90fde4fb458fbf1d497c427c3f945f3d7ee11684 Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: not-needed

This new test fails on several architectures. But it is a new test
intended to check for a Linux kernel regression, so we are not worse
off than were before. Add it to the EXTRACASES variables, which has
currently the side effect of disabling it, as it is not handled
explicitly in the make target responsible for that variable.

Sent-Upstream: not-relevant
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-harness-Disable-failing-test-23.patch

2 years ago[PATCH libaio 14/14] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64...
Guillem Jover [Fri, 16 Aug 2019 00:33:46 +0000 (02:33 +0200)]
[PATCH libaio 14/14] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64-bit kernels

From 97daff5b92530896f9ea6e89ed2d1ec6df264944 Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: not-needed

The kernel compat syscall in the kernel got introduced with a broken
layout, which requires a pointer to the actual sigset_t variable but
with the size of the running kernel, not the size of the compat code.

This means that when the wrapper sends the expected compat (32-bit)
pointer, the kernel reads a 64-bit pointer, eating with it also the
sigset size member. And then proceeds to fail the comparison of the
sigset_t size and returns EINVAL.

This really needs to be fixed in the kernel, as there's no apparent
user of the broken compat layout (from codesearch.debian.org, nor a
quick github.com search). But we have to workaround it in libaio so
that we can use kernels that have not yet been fixed.

We do that, by trying the non-broken layout (that would be used with
a 32-bit userland on a 32-bit kernel), and if that fails with -EINVAL
we retry with a structure padded to what the kernel expects.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0014-Fix-io_pgetevents-syscall-wrapper-on-32-bit-userland.patch

2 years ago[PATCH libaio 13/14] Add x32 support
Guillem Jover [Sun, 12 Apr 2020 01:36:39 +0000 (03:36 +0200)]
[PATCH libaio 13/14] Add x32 support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0013-Add-x32-support.patch

2 years ago[PATCH libaio 12/14] Add SH support
Nobuhiro Iwamatsu [Sun, 12 Apr 2020 01:30:41 +0000 (03:30 +0200)]
[PATCH libaio 12/14] Add SH support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0012-Add-SH-support.patch

2 years ago[PATCH libaio 11/14] Add m68k support
Guillem Jover [Wed, 14 Aug 2019 01:25:22 +0000 (03:25 +0200)]
[PATCH libaio 11/14] Add m68k support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0011-Add-m68k-support.patch

2 years ago[PATCH libaio 10/14] Add PARISC support
Guillem Jover [Wed, 14 Aug 2019 01:22:10 +0000 (03:22 +0200)]
[PATCH libaio 10/14] Add PARISC support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0010-Add-PARISC-support.patch

2 years ago[PATCH libaio 09/14] Fix and improve MIPS support
Guillem Jover [Wed, 14 Aug 2019 01:18:50 +0000 (03:18 +0200)]
[PATCH libaio 09/14] Fix and improve MIPS support

Fix structure padding for MIPS 64, add syscall definitions, and the
kernel R/W pointer.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0009-Fix-and-improve-MIPS-support.patch

2 years ago[PATCH libaio 08/14] harness: Add KERNEL_RW_POINTER for various 32-bit architectures
Guillem Jover [Wed, 14 Aug 2019 01:30:09 +0000 (03:30 +0200)]
[PATCH libaio 08/14] harness: Add KERNEL_RW_POINTER for various 32-bit architectures

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0008-harness-Add-KERNEL_RW_POINTER-for-various-32-bit-arc.patch

2 years ago[PATCH libaio 07/14] syscall: Fix ia64 definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:44:43 +0000 (03:44 +0200)]
[PATCH libaio 07/14] syscall: Fix ia64 definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0007-syscall-Fix-ia64-definitions-to-match-exactly-the-ke.patch

2 years ago[PATCH libaio 06/14] syscall: Fix ARM definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:39:47 +0000 (03:39 +0200)]
[PATCH libaio 06/14] syscall: Fix ARM definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0006-syscall-Fix-ARM-definitions-to-match-exactly-the-ker.patch

2 years ago[PATCH libaio 05/14] Use new symver function attribute to support LTO builds
Guillem Jover [Tue, 2 Nov 2021 21:37:32 +0000 (22:37 +0100)]
[PATCH libaio 05/14] Use new symver function attribute to support LTO builds

From 3ec8be29fc945238788f1fc7f0d998b145a761c7 Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: https://marc.info/?l=linux-aio&m=164999309520544

The LTO support cannot work properly when there are versioned symbols
via asm statements, as those are not seen by the compiler. Use the new
function attributes if supported instead of the asm statements.

We need to move the SYMVER calls after the function definitions
otherwise it will reference symbols not yet seen.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0005-Use-new-symver-function-attribute-to-support-LTO-bui.patch

2 years ago[PATCH libaio 04/14] Move semicolon to SYMVER and DEFSYMVER call sites
Guillem Jover [Tue, 2 Nov 2021 23:20:50 +0000 (00:20 +0100)]
[PATCH libaio 04/14] Move semicolon to SYMVER and DEFSYMVER call sites

From fa00b019422170118b5b4086b84e2dfd1a50811e Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: https://marc.info/?l=linux-aio&m=164999309420541

These look like function macros, so let's unify their call sites to use
function syntax with a final semicolon.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0004-Move-semicolon-to-SYMVER-and-DEFSYMVER-call-sites.patch

2 years ago[PATCH libaio 03/14] build: Honor user build flags
Guillem Jover [Sun, 12 Apr 2020 02:01:27 +0000 (04:01 +0200)]
[PATCH libaio 03/14] build: Honor user build flags

CPPFLAGS, CFLAGS and LDFLAGS are user flags, which we need to preserve,
regardless of the user passing them over the environment or the
command-line. Any required flag that the build system needs, has to be
set in some other flag (which we will namespace with «MK_») so that the
build will use even if the user flags are passed, even though the user
should be able to override by appending after them. We pass CPPFLAGS to
any compilation command that missed them.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0003-build-Honor-user-build-flags.patch

2 years ago[PATCH libaio 02/14] build: Fix DESTDIR and pathname variables handling
Guillem Jover [Sun, 12 Apr 2020 01:58:12 +0000 (03:58 +0200)]
[PATCH libaio 02/14] build: Fix DESTDIR and pathname variables handling

The convention for DESTDIR is that it is only prefixed during the
install target. In this case we postpone that to the inner Makefile
so that it can be invoked directly while preserving the expected
semantics. We should also prefer the user specified pathname variables
if already set in any way, and do not need to pass them explicitly
to the sub-make.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0002-build-Fix-DESTDIR-and-pathname-variables-handling.patch

2 years ago[PATCH libaio 01/14] man: Fix typos
Guillem Jover [Sun, 10 Oct 2021 04:14:51 +0000 (06:14 +0200)]
[PATCH libaio 01/14] man: Fix typos

From f95e1898b6efd3eaf50273bd1c5a8a40816b5160 Mon Sep 17 00:00:00 2001
Origin: vendor
Forwarded: https://marc.info/?l=linux-aio&m=164999309220532

Warned-by: lintian
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-man-Fix-typos.patch

2 years agolibaio (0.3.113-4) unstable; urgency=medium
Guillem Jover [Wed, 18 Jan 2023 00:35:12 +0000 (00:35 +0000)]
libaio (0.3.113-4) unstable; urgency=medium

  * Switch to Standards-Version 4.6.2 (no changes needed).
  * Do not trim debian/changelog.
  * Update debian/patches metadata.

[dgit import unpatched libaio 0.3.113-4]

2 years agoImport libaio_0.3.113-4.debian.tar.xz
Guillem Jover [Wed, 18 Jan 2023 00:35:12 +0000 (00:35 +0000)]
Import libaio_0.3.113-4.debian.tar.xz

[dgit import tarball libaio 0.3.113-4 libaio_0.3.113-4.debian.tar.xz]

3 years agoMerge libaio (0.3.113-3) import into refs/heads/workingbranch
Guillem Jover [Sun, 4 Dec 2022 17:06:09 +0000 (17:06 +0000)]
Merge libaio (0.3.113-3) import into refs/heads/workingbranch

3 years ago[PATCH libaio] harness: Disable failing test 23
Guillem Jover [Tue, 19 Apr 2022 13:45:39 +0000 (15:45 +0200)]
[PATCH libaio] harness: Disable failing test 23

This new test fails on several architectures. But it is a new test
intended to check for a Linux kernel regression, so we are not worse
off than were before. Add it to the EXTRACASES variables, which has
currently the side effect of disabling it, as it is not handled
explicitly in the make target responsible for that variable.

Sent-Upstream: not-relevant
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-harness-Disable-failing-test-23.patch

3 years ago[PATCH libaio 14/14] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64...
Guillem Jover [Fri, 16 Aug 2019 00:33:46 +0000 (02:33 +0200)]
[PATCH libaio 14/14] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64-bit kernels

The kernel compat syscall in the kernel got introduced with a broken
layout, which requires a pointer to the actual sigset_t variable but
with the size of the running kernel, not the size of the compat code.

This means that when the wrapper sends the expected compat (32-bit)
pointer, the kernel reads a 64-bit pointer, eating with it also the
sigset size member. And then proceeds to fail the comparison of the
sigset_t size and returns EINVAL.

This really needs to be fixed in the kernel, as there's no apparent
user of the broken compat layout (from codesearch.debian.org, nor a
quick github.com search). But we have to workaround it in libaio so
that we can use kernels that have not yet been fixed.

We do that, by trying the non-broken layout (that would be used with
a 32-bit userland on a 32-bit kernel), and if that fails with -EINVAL
we retry with a structure padded to what the kernel expects.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0014-Fix-io_pgetevents-syscall-wrapper-on-32-bit-userland.patch

3 years ago[PATCH libaio 13/14] Add x32 support
Guillem Jover [Sun, 12 Apr 2020 01:36:39 +0000 (03:36 +0200)]
[PATCH libaio 13/14] Add x32 support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0013-Add-x32-support.patch

3 years ago[PATCH libaio 12/14] Add SH support
Nobuhiro Iwamatsu [Sun, 12 Apr 2020 01:30:41 +0000 (03:30 +0200)]
[PATCH libaio 12/14] Add SH support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0012-Add-SH-support.patch

3 years ago[PATCH libaio 11/14] Add m68k support
Guillem Jover [Wed, 14 Aug 2019 01:25:22 +0000 (03:25 +0200)]
[PATCH libaio 11/14] Add m68k support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0011-Add-m68k-support.patch

3 years ago[PATCH libaio 10/14] Add PARISC support
Guillem Jover [Wed, 14 Aug 2019 01:22:10 +0000 (03:22 +0200)]
[PATCH libaio 10/14] Add PARISC support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0010-Add-PARISC-support.patch

3 years ago[PATCH libaio 09/14] Fix and improve MIPS support
Guillem Jover [Wed, 14 Aug 2019 01:18:50 +0000 (03:18 +0200)]
[PATCH libaio 09/14] Fix and improve MIPS support

Fix structure padding for MIPS 64, add syscall definitions, and the
kernel R/W pointer.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0009-Fix-and-improve-MIPS-support.patch

3 years ago[PATCH libaio 08/14] harness: Add KERNEL_RW_POINTER for various 32-bit architectures
Guillem Jover [Wed, 14 Aug 2019 01:30:09 +0000 (03:30 +0200)]
[PATCH libaio 08/14] harness: Add KERNEL_RW_POINTER for various 32-bit architectures

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0008-harness-Add-KERNEL_RW_POINTER-for-various-32-bit-arc.patch

3 years ago[PATCH libaio 07/14] syscall: Fix ia64 definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:44:43 +0000 (03:44 +0200)]
[PATCH libaio 07/14] syscall: Fix ia64 definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0007-syscall-Fix-ia64-definitions-to-match-exactly-the-ke.patch

3 years ago[PATCH libaio 06/14] syscall: Fix ARM definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:39:47 +0000 (03:39 +0200)]
[PATCH libaio 06/14] syscall: Fix ARM definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0006-syscall-Fix-ARM-definitions-to-match-exactly-the-ker.patch

3 years ago[PATCH libaio 05/14] Use new symver function attribute to support LTO builds
Guillem Jover [Tue, 2 Nov 2021 21:37:32 +0000 (22:37 +0100)]
[PATCH libaio 05/14] Use new symver function attribute to support LTO builds

The LTO support cannot work properly when there are versioned symbols
via asm statements, as those are not seen by the compiler. Use the new
function attributes if supported instead of the asm statements.

We need to move the SYMVER calls after the function definitions
otherwise it will reference symbols not yet seen.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0005-Use-new-symver-function-attribute-to-support-LTO-bui.patch

3 years ago[PATCH libaio 04/14] Move semicolon to SYMVER and DEFSYMVER call sites
Guillem Jover [Tue, 2 Nov 2021 23:20:50 +0000 (00:20 +0100)]
[PATCH libaio 04/14] Move semicolon to SYMVER and DEFSYMVER call sites

These look like function macros, so let's unify their call sites to use
function syntax with a final semicolon.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0004-Move-semicolon-to-SYMVER-and-DEFSYMVER-call-sites.patch

3 years ago[PATCH libaio 03/14] build: Honor user build flags
Guillem Jover [Sun, 12 Apr 2020 02:01:27 +0000 (04:01 +0200)]
[PATCH libaio 03/14] build: Honor user build flags

CPPFLAGS, CFLAGS and LDFLAGS are user flags, which we need to preserve,
regardless of the user passing them over the environment or the
command-line. Any required flag that the build system needs, has to be
set in some other flag (which we will namespace with «MK_») so that the
build will use even if the user flags are passed, even though the user
should be able to override by appending after them. We pass CPPFLAGS to
any compilation command that missed them.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0003-build-Honor-user-build-flags.patch

3 years ago[PATCH libaio 02/14] build: Fix DESTDIR and pathname variables handling
Guillem Jover [Sun, 12 Apr 2020 01:58:12 +0000 (03:58 +0200)]
[PATCH libaio 02/14] build: Fix DESTDIR and pathname variables handling

The convention for DESTDIR is that it is only prefixed during the
install target. In this case we postpone that to the inner Makefile
so that it can be invoked directly while preserving the expected
semantics. We should also prefer the user specified pathname variables
if already set in any way, and do not need to pass them explicitly
to the sub-make.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0002-build-Fix-DESTDIR-and-pathname-variables-handling.patch

3 years ago[PATCH libaio 01/14] man: Fix typos
Guillem Jover [Sun, 10 Oct 2021 04:14:51 +0000 (06:14 +0200)]
[PATCH libaio 01/14] man: Fix typos

Warned-by: lintian
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-man-Fix-typos.patch

3 years agolibaio (0.3.113-3) unstable; urgency=medium
Guillem Jover [Sun, 4 Dec 2022 17:06:09 +0000 (17:06 +0000)]
libaio (0.3.113-3) unstable; urgency=medium

  * Add upstream/metadata fields for bug submitting and database.
  * Update lintian overrides.
  * Switch to Standards-Version 4.6.1 (no changes needed).
  * Move debian/copyright Source field immediately after Format field.
  * Export DEB_BUILD_MAINT_OPTIONS and DEB_CFLAGS_MAINT_PREPEND.
  * Switch from hardening=+bindnow to hardening=+all.
  * Enable future=+lfs build feature as it does not affect the shared library
    ABI, but affects the test harness.

[dgit import unpatched libaio 0.3.113-3]

3 years agoImport libaio_0.3.113-3.debian.tar.xz
Guillem Jover [Sun, 4 Dec 2022 17:06:09 +0000 (17:06 +0000)]
Import libaio_0.3.113-3.debian.tar.xz

[dgit import tarball libaio 0.3.113-3 libaio_0.3.113-3.debian.tar.xz]

3 years agoMerge libaio (0.3.113-2) import into refs/heads/workingbranch
Guillem Jover [Tue, 19 Apr 2022 13:57:07 +0000 (14:57 +0100)]
Merge libaio (0.3.113-2) import into refs/heads/workingbranch

3 years ago[PATCH libaio] harness: Disable failing test 23
Guillem Jover [Tue, 19 Apr 2022 13:45:39 +0000 (15:45 +0200)]
[PATCH libaio] harness: Disable failing test 23

This new test fails on several architectures. But it is a new test
intended to check for a Linux kernel regression, so we are not worse
off than were before. Add it to the EXTRACASES variables, which has
currently the side effect of disabling it, as it is not handled
explicitly in the make target responsible for that variable.

Sent-Upstream: not-relevant
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-harness-Disable-failing-test-23.patch

3 years ago[PATCH libaio 14/14] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64...
Guillem Jover [Fri, 16 Aug 2019 00:33:46 +0000 (02:33 +0200)]
[PATCH libaio 14/14] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64-bit kernels

The kernel compat syscall in the kernel got introduced with a broken
layout, which requires a pointer to the actual sigset_t variable but
with the size of the running kernel, not the size of the compat code.

This means that when the wrapper sends the expected compat (32-bit)
pointer, the kernel reads a 64-bit pointer, eating with it also the
sigset size member. And then proceeds to fail the comparison of the
sigset_t size and returns EINVAL.

This really needs to be fixed in the kernel, as there's no apparent
user of the broken compat layout (from codesearch.debian.org, nor a
quick github.com search). But we have to workaround it in libaio so
that we can use kernels that have not yet been fixed.

We do that, by trying the non-broken layout (that would be used with
a 32-bit userland on a 32-bit kernel), and if that fails with -EINVAL
we retry with a structure padded to what the kernel expects.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0014-Fix-io_pgetevents-syscall-wrapper-on-32-bit-userland.patch

3 years ago[PATCH libaio 13/14] Add x32 support
Guillem Jover [Sun, 12 Apr 2020 01:36:39 +0000 (03:36 +0200)]
[PATCH libaio 13/14] Add x32 support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0013-Add-x32-support.patch

3 years ago[PATCH libaio 12/14] Add SH support
Nobuhiro Iwamatsu [Sun, 12 Apr 2020 01:30:41 +0000 (03:30 +0200)]
[PATCH libaio 12/14] Add SH support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0012-Add-SH-support.patch

3 years ago[PATCH libaio 11/14] Add m68k support
Guillem Jover [Wed, 14 Aug 2019 01:25:22 +0000 (03:25 +0200)]
[PATCH libaio 11/14] Add m68k support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0011-Add-m68k-support.patch

3 years ago[PATCH libaio 10/14] Add PARISC support
Guillem Jover [Wed, 14 Aug 2019 01:22:10 +0000 (03:22 +0200)]
[PATCH libaio 10/14] Add PARISC support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0010-Add-PARISC-support.patch

3 years ago[PATCH libaio 09/14] Fix and improve MIPS support
Guillem Jover [Wed, 14 Aug 2019 01:18:50 +0000 (03:18 +0200)]
[PATCH libaio 09/14] Fix and improve MIPS support

Fix structure padding for MIPS 64, add syscall definitions, and the
kernel R/W pointer.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0009-Fix-and-improve-MIPS-support.patch

3 years ago[PATCH libaio 08/14] harness: Add KERNEL_RW_POINTER for various 32-bit architectures
Guillem Jover [Wed, 14 Aug 2019 01:30:09 +0000 (03:30 +0200)]
[PATCH libaio 08/14] harness: Add KERNEL_RW_POINTER for various 32-bit architectures

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0008-harness-Add-KERNEL_RW_POINTER-for-various-32-bit-arc.patch

3 years ago[PATCH libaio 07/14] syscall: Fix ia64 definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:44:43 +0000 (03:44 +0200)]
[PATCH libaio 07/14] syscall: Fix ia64 definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0007-syscall-Fix-ia64-definitions-to-match-exactly-the-ke.patch

3 years ago[PATCH libaio 06/14] syscall: Fix ARM definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:39:47 +0000 (03:39 +0200)]
[PATCH libaio 06/14] syscall: Fix ARM definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0006-syscall-Fix-ARM-definitions-to-match-exactly-the-ker.patch

3 years ago[PATCH libaio 05/14] Use new symver function attribute to support LTO builds
Guillem Jover [Tue, 2 Nov 2021 21:37:32 +0000 (22:37 +0100)]
[PATCH libaio 05/14] Use new symver function attribute to support LTO builds

The LTO support cannot work properly when there are versioned symbols
via asm statements, as those are not seen by the compiler. Use the new
function attributes if supported instead of the asm statements.

We need to move the SYMVER calls after the function definitions
otherwise it will reference symbols not yet seen.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0005-Use-new-symver-function-attribute-to-support-LTO-bui.patch

3 years ago[PATCH libaio 04/14] Move semicolon to SYMVER and DEFSYMVER call sites
Guillem Jover [Tue, 2 Nov 2021 23:20:50 +0000 (00:20 +0100)]
[PATCH libaio 04/14] Move semicolon to SYMVER and DEFSYMVER call sites

These look like function macros, so let's unify their call sites to use
function syntax with a final semicolon.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0004-Move-semicolon-to-SYMVER-and-DEFSYMVER-call-sites.patch

3 years ago[PATCH libaio 03/14] build: Honor user build flags
Guillem Jover [Sun, 12 Apr 2020 02:01:27 +0000 (04:01 +0200)]
[PATCH libaio 03/14] build: Honor user build flags

CPPFLAGS, CFLAGS and LDFLAGS are user flags, which we need to preserve,
regardless of the user passing them over the environment or the
command-line. Any required flag that the build system needs, has to be
set in some other flag (which we will namespace with «MK_») so that the
build will use even if the user flags are passed, even though the user
should be able to override by appending after them. We pass CPPFLAGS to
any compilation command that missed them.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0003-build-Honor-user-build-flags.patch

3 years ago[PATCH libaio 02/14] build: Fix DESTDIR and pathname variables handling
Guillem Jover [Sun, 12 Apr 2020 01:58:12 +0000 (03:58 +0200)]
[PATCH libaio 02/14] build: Fix DESTDIR and pathname variables handling

The convention for DESTDIR is that it is only prefixed during the
install target. In this case we postpone that to the inner Makefile
so that it can be invoked directly while preserving the expected
semantics. We should also prefer the user specified pathname variables
if already set in any way, and do not need to pass them explicitly
to the sub-make.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0002-build-Fix-DESTDIR-and-pathname-variables-handling.patch

3 years ago[PATCH libaio 01/14] man: Fix typos
Guillem Jover [Sun, 10 Oct 2021 04:14:51 +0000 (06:14 +0200)]
[PATCH libaio 01/14] man: Fix typos

Warned-by: lintian
Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-man-Fix-typos.patch

3 years agolibaio (0.3.113-2) unstable; urgency=medium
Guillem Jover [Tue, 19 Apr 2022 13:57:07 +0000 (14:57 +0100)]
libaio (0.3.113-2) unstable; urgency=medium

  * Skip new test case 23, which was added upstream for a kernel regression,
    so we are not worse off than before. Its failure was known and being
    looked at upstream.

[dgit import unpatched libaio 0.3.113-2]

3 years agoImport libaio_0.3.113-2.debian.tar.xz
Guillem Jover [Tue, 19 Apr 2022 13:57:07 +0000 (14:57 +0100)]
Import libaio_0.3.113-2.debian.tar.xz

[dgit import tarball libaio 0.3.113-2 libaio_0.3.113-2.debian.tar.xz]

3 years agoImport libaio_0.3.113.orig.tar.gz
Guillem Jover [Tue, 19 Apr 2022 01:22:49 +0000 (02:22 +0100)]
Import libaio_0.3.113.orig.tar.gz

[dgit import orig libaio_0.3.113.orig.tar.gz]

4 years agoMerge libaio (0.3.112-13) import into refs/heads/workingbranch
Guillem Jover [Thu, 11 Nov 2021 03:56:01 +0000 (03:56 +0000)]
Merge libaio (0.3.112-13) import into refs/heads/workingbranch

4 years ago[PATCH libaio] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64-bit kernels
Guillem Jover [Fri, 16 Aug 2019 00:33:46 +0000 (02:33 +0200)]
[PATCH libaio] Fix io_pgetevents() syscall wrapper on 32-bit userland on 64-bit kernels

The kernel compat syscall in the kernel got introduced with a broken
layout, which requires a pointer to the actual sigset_t variable but
with the size of the running kernel, not the size of the compat code.

This means that when the wrapper sends the expected compat (32-bit)
pointer, the kernel reads a 64-bit pointer, eating with it also the
sigset size member. And then proceeds to fail the comparison of the
sigset_t size and returns EINVAL.

This really needs to be fixed in the kernel, as there's no apparent
user of the broken compat layout (from codesearch.debian.org, nor a
quick github.com search). But we have to workaround it in libaio so
that we can use kernels that have not yet been fixed.

We do that, by trying the non-broken layout (that would be used with
a 32-bit userland on a 32-bit kernel), and if that fails with -EINVAL
we retry with a structure padded to what the kernel expects.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-Fix-io_pgetevents-syscall-wrapper-on-32-bit-userland.patch

4 years ago[PATCH 2/2] Use new symver function attribute to support LTO builds
Guillem Jover [Tue, 2 Nov 2021 21:37:32 +0000 (22:37 +0100)]
[PATCH 2/2] Use new symver function attribute to support LTO builds

The LTO support cannot work properly when there are versioned symbols
via asm statements, as those are not seen by the compiler. Use the new
function attributes if supported instead of the asm statements.

We need to move the SYMVER calls after the function definitions
otherwise it will reference symbols not yet seen.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0002-Use-new-symver-function-attribute-to-support-LTO-bui.patch

4 years ago[PATCH 1/2] Move semicolon to SYMVER and DEFSYMVER call sites
Guillem Jover [Tue, 2 Nov 2021 23:20:50 +0000 (00:20 +0100)]
[PATCH 1/2] Move semicolon to SYMVER and DEFSYMVER call sites

These look like function macros, so let's unify their call sites to use
function syntax with a final semicolon.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-Move-semicolon-to-SYMVER-and-DEFSYMVER-call-sites.patch

4 years ago[PATCH libaio] man: Fix typos
Guillem Jover [Sun, 10 Oct 2021 04:14:51 +0000 (06:14 +0200)]
[PATCH libaio] man: Fix typos

Warned-by: lintian
Gbp-Pq: Name 0001-man-Fix-typos.patch

4 years ago[PATCH] build: Honor user build flags
Guillem Jover [Sun, 12 Apr 2020 02:01:27 +0000 (04:01 +0200)]
[PATCH] build: Honor user build flags

CPPFLAGS, CFLAGS and LDFLAGS are user flags, which we need to preserve,
regardless of the user passing them over the environment or the
command-line. Any required flag that the build system needs, has to be
set in some other flag (which we will namespace with «MK_») so that the
build will use even if the user flags are passed, even though the user
should be able to override by appending after them. We pass CPPFLAGS to
any compilation command that missed them.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0011-build-Honour-user-build-flags.patch

4 years ago[PATCH libaio 10/11] build: Do not use -Werror by default
Guillem Jover [Sun, 12 Apr 2020 02:00:03 +0000 (04:00 +0200)]
[PATCH libaio 10/11] build: Do not use -Werror by default

Using -Werror on a released project is in general not a good idea, as
changes in the toolchain and environment can trigger unexpected build
failures.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0010-build-Do-not-use-Werror-by-default.patch

4 years ago[PATCH libaio 09/11] build: Fix DESTDIR handling
Guillem Jover [Sun, 12 Apr 2020 01:58:12 +0000 (03:58 +0200)]
[PATCH libaio 09/11] build: Fix DESTDIR handling

The convention for DESTDIR is that it is only prefixed during the
install target. In this case we postpone that to the inner Makefile
so that it can be invoked directly while preserving the expected
semantics.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0009-build-Fix-DESTDIR-handling.patch

4 years ago[PATCH libaio 08/11] Add x32 support
Guillem Jover [Sun, 12 Apr 2020 01:36:39 +0000 (03:36 +0200)]
[PATCH libaio 08/11] Add x32 support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0008-Add-x32-support.patch

4 years ago[PATCH libaio 07/11] Add SH support
Nobuhiro Iwamatsu [Sun, 12 Apr 2020 01:30:41 +0000 (03:30 +0200)]
[PATCH libaio 07/11] Add SH support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0007-Add-SH-support.patch

4 years ago[PATCH libaio 06/11] Add m68k support
Guillem Jover [Wed, 14 Aug 2019 01:25:22 +0000 (03:25 +0200)]
[PATCH libaio 06/11] Add m68k support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0006-Add-m68k-support.patch

4 years ago[PATCH libaio 05/11] Add PARISC support
Guillem Jover [Wed, 14 Aug 2019 01:22:10 +0000 (03:22 +0200)]
[PATCH libaio 05/11] Add PARISC support

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0005-Add-PARISC-support.patch

4 years ago[PATCH libaio 04/11] Fix and improve MIPS support
Guillem Jover [Wed, 14 Aug 2019 01:18:50 +0000 (03:18 +0200)]
[PATCH libaio 04/11] Fix and improve MIPS support

Fix structure padding for MIPS 64, add syscall definitions, and the
kernel R/W pointer.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0004-Fix-and-improve-MIPS-support.patch

4 years ago[PATCH libaio 03/11] harness: Add KERNEL_RW_POINTER for various 32-bit architectures
Guillem Jover [Wed, 14 Aug 2019 01:30:09 +0000 (03:30 +0200)]
[PATCH libaio 03/11] harness: Add KERNEL_RW_POINTER for various 32-bit architectures

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0003-harness-Add-KERNEL_RW_POINTER-for-various-32-bit-arc.patch

4 years ago[PATCH libaio 02/11] syscall: Fix ia64 definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:44:43 +0000 (03:44 +0200)]
[PATCH libaio 02/11] syscall: Fix ia64 definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0002-syscall-Fix-ia64-definitions-to-match-exactly-the-ke.patch

4 years ago[PATCH libaio 01/11] syscall: Fix ARM definitions to match exactly the kernel
Guillem Jover [Sun, 12 Apr 2020 01:39:47 +0000 (03:39 +0200)]
[PATCH libaio 01/11] syscall: Fix ARM definitions to match exactly the kernel

Otherwise we get preprocessor warnings due to the redefinitions.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Gbp-Pq: Name 0001-syscall-Fix-ARM-definitions-to-match-exactly-the-ker.patch

4 years ago[PATCH libaio] Fix test issue with gcc-11
Lee Duncan [Sun, 14 Feb 2021 22:59:07 +0000 (14:59 -0800)]
[PATCH libaio] Fix test issue with gcc-11

Test 3.t exercises io_submit() with invalid addresses,
and one test attempted to pass in "-1" as an invalid
pointer. But gcc-11 realizes you cannot take an offset
from an invalid pointer, making it impossible to
compile or run this test:

> sh# make CC=gcc-11 partcheck
> make[1]: Entering directory '/alt/public_software/libaio/src'
> make[1]: Nothing to be done for 'all'.
> make[1]: Leaving directory '/alt/public_software/libaio/src'
> make[1]: Entering directory '/alt/public_software/libaio/harness'
> gcc-11 -Wall -Werror -I../src -g -O2 -DTEST_NAME=\"cases/2.t\" -o cases/2.p main.c ../src/libaio.a -lpthread
> gcc-11 -Wall -Werror -I../src -g -O2 -DTEST_NAME=\"cases/3.t\" -o cases/3.p main.c ../src/libaio.a -lpthread
> In file included from main.c:24:
> cases/3.t: In function ‘test_main’:
> cases/3.t:18:19: error: ‘attempt_io_submit’ accessing 8 bytes in a region of size 0 [-Werror=stringop-overflow=]
>    18 |         status |= attempt_io_submit( io_ctx, 1, (void *)-1, -EFAULT);
>       |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cases/3.t:18:19: note: referencing argument 3 of type ‘struct iocb **’
> In file included from cases/3.t:5,
>                  from main.c:24:
> cases/aio_setup.h:15:5: note: in a call to function ‘attempt_io_submit’
>    15 | int attempt_io_submit(io_context_t ctx, long nr, struct iocb *ios[], int expect)
>       |     ^~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> make[1]: *** [Makefile:19: cases/3.p] Error 1
> make[1]: Leaving directory '/alt/public_software/libaio/harness'
> make: *** [Makefile:23: partcheck] Error 2

The fix is to tell gcc to relax it's stringop overflow
testing for this one test.

Changes since v1:
* First version just skipped the test in question

Signed-off-by: Lee Duncan <leeman.duncan@gmail.com>
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0001-Fix-test-issue-with-gcc-11.patch

4 years ago[PATCH libaio 28/28] harness: Skip the test if io_pgetevents() is not implemented
Guillem Jover [Wed, 21 Aug 2019 03:29:52 +0000 (05:29 +0200)]
[PATCH libaio 28/28] harness: Skip the test if io_pgetevents() is not implemented

Either the kernel or the syscall wrapper will return -ENOSYS when this
syscall is not implemented. So we should cope with this in the test
suite and SKIP the test case.

This is currently the case for alpha and ia64, even though they have
already been wired up very recently in the kernel mainline.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0028-harness-Skip-the-test-if-io_pgetevents-is-not-implem.patch

4 years ago[PATCH libaio 27/28] harness: Print better error messages on error conditions in...
Guillem Jover [Wed, 21 Aug 2019 03:29:50 +0000 (05:29 +0200)]
[PATCH libaio 27/28] harness: Print better error messages on error conditions in 22.t

These should help diagnose problems when dealing with error failures.
In particular this helped distinguish the problem with io_pgetevents()
not being implemented and it failing due to the sigset_t layout bug.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
[JEM: fix up 80 columns violations]
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0027-harness-Print-better-error-messages-on-error-conditi.patch

4 years ago[PATCH libaio 26/28] harness: Fix PROT_WRITE mmap check
Guillem Jover [Wed, 14 Aug 2019 02:42:42 +0000 (04:42 +0200)]
[PATCH libaio 26/28] harness: Fix PROT_WRITE mmap check

This partially reverts commit d7f5065448efb49b2a26e728ff735e12ea05b62e.

The actual problem in the original code was that read() was being used
to assert whether the buffer was readable, but the kernel was instead
reading from the file descriptor and then writing into the buffer, so
no EFAULT was being generated (on architectures that do so).

We needed to use a write() so that the kernel would read from the
buffer.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0026-harness-Fix-PROT_WRITE-mmap-check.patch

4 years ago[PATCH libaio 25/28] harness: fix read into PROT_WRITE mmap test
Jeff Moyer [Tue, 13 Aug 2019 19:30:05 +0000 (15:30 -0400)]
[PATCH libaio 25/28] harness: fix read into PROT_WRITE mmap test

This test has been broken forever.  Fix it up to perform an
aio_read using the result of a regular read as the expected
return code.

Reported-by: Guillem Jover <guillem@hadrons.org>
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0025-harness-fix-read-into-PROT_WRITE-mmap-test.patch

4 years ago[PATCH libaio 24/28] harness: skip 22.p if async_poll isn't supported
Jeff Moyer [Mon, 29 Jul 2019 18:25:01 +0000 (14:25 -0400)]
[PATCH libaio 24/28] harness: skip 22.p if async_poll isn't supported

Use the new skip error code instead of failing the test.  Also
add in a Local variables: section for emacs.

Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0024-harness-skip-22.p-if-async_poll-isn-t-supported.patch

4 years ago[PATCH libaio 23/28] harness: Handle -ENOTSUP from io_submit() with RWF_NOWAIT
Guillem Jover [Sat, 20 Jul 2019 19:21:02 +0000 (21:21 +0200)]
[PATCH libaio 23/28] harness: Handle -ENOTSUP from io_submit() with RWF_NOWAIT

On filesystems such as tmpfs the syscall might return -ENOTSUP instead
of EINVAL when it does not support the RWF_NOWAIT flag.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
[JEM: skip the test instead of returning success]
[JEM: make the error message differentiate between kernel and fs support]
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0023-harness-Handle-ENOTSUP-from-io_submit-with-RWF_NOWAI.patch

4 years ago[PATCH libaio 22/28] harness: Add fallback code for filesystems not supporting O_DIRECT
Guillem Jover [Sat, 20 Jul 2019 19:21:01 +0000 (21:21 +0200)]
[PATCH libaio 22/28] harness: Add fallback code for filesystems not supporting O_DIRECT

When running the harness on a filesystem such as a tmpfs, which do not
support O_DIRECT, fallback to calls without the flag.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
[JEM: change from duplicating the open call to using F_SETFL]
[JEM: 18 and 21 require O_DIRECT-skip if not present]
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0022-harness-Add-fallback-code-for-filesystems-not-suppor.patch

4 years ago[PATCH libaio 21/28] harness: add support for skipping tests
Jeff Moyer [Mon, 29 Jul 2019 17:16:18 +0000 (13:16 -0400)]
[PATCH libaio 21/28] harness: add support for skipping tests

Skipped tests will not cause the test harness to return failure.  An
exit status of "3" was chosen for skipped tests.  This doesn't
conflict with any of the current tests.

Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0021-harness-add-support-for-skipping-tests.patch

4 years ago[PATCH libaio 20/28] harness: Make the test exit with a code matching the pass/fail...
Guillem Jover [Tue, 23 Jul 2019 00:48:43 +0000 (02:48 +0200)]
[PATCH libaio 20/28] harness: Make the test exit with a code matching the pass/fail state

This way we can use the exit code to check whether the tests passed or
failed, and fail the package build.

Signed-off-by: Guillem Jover <guillem@hadrons.org>
Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Gbp-Pq: Topic upstream
Gbp-Pq: Name 0020-harness-Make-the-test-exit-with-a-code-matching-the-.patch