lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250715050629.1513826-1-alviro.iskandar@gnuweeb.org>
Date: Tue, 15 Jul 2025 12:06:26 +0700
From: Alviro Iskandar Setiawan <alviro.iskandar@...weeb.org>
To: Jens Axboe <axboe@...nel.dk>
Cc: Alviro Iskandar Setiawan <alviro.iskandar@...weeb.org>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	io-uring Mailing List <io-uring@...r.kernel.org>,
	GNU/Weeb Mailing List <gwml@...r.gnuweeb.org>,
	Ammar Faizi <ammarfaizi2@...weeb.org>
Subject: [PATCH liburing 0/3] Bring back `CONFIG_HAVE_MEMFD_CREATE` to fix Android build error

Hello,

There are three patches in this series to address Android build
error related to `memfd_create()`. The changes are as follows:

1) Bring back `CONFIG_HAVE_MEMFD_CREATE` and the associated memfd test
to resolve Android build failures caused by:

  93d3a7a70b4a ("examples/zcrx: udmabuf backed areas")

It added a call to `memfd_create()`, which is unavailable on some
Android toolchains, leading to the following build error:
```
  zcrx.c:111:10: error: call to undeclared function 'memfd_create'; ISO C99 and \
  later do not support implicit function declarations \
  [-Wimplicit-function-declaration]
    111 |         memfd = memfd_create("udmabuf-test", MFD_ALLOW_SEALING);
        |                 ^
```
This reversion is a preparation step for a proper fix by ensuring
`memfd_create()` usage is guarded and portable. Issue #620 was
initially unclear, but we now suspect it stemmed from improper
compiler/linker flag combinations.

2) In test dir, relocate `memfd_create()` to helpers.c for broader
test access. Previously, the static definition of `memfd_create()` was
limited to io_uring_register.c. Now, promote it to a shared location
accessible to all test cases, ensuring that future tests using
`memfd_create()` do not trigger build failures on Android targets where
the syscall is undefined in the standard headers. It improves
portability and prevents regressions across test builds.

3) Last, in example dir, add `memfd_create()` helper to fix the
build error in zcrx example.

Signed-off-by: Ammar Faizi <ammarfaizi2@...weeb.org>
Signed-off-by: Alviro Iskandar Setiawan <alviro.iskandar@...weeb.org>
---

Alviro Iskandar Setiawan (3):
  Revert "test/io_uring_register: kill old memfd test"
  test: Move `memfd_create()` to helpers.c, make it accessible for all tests
  examples: Add `memfd_create()` helper

 configure                |  19 +++++++
 examples/helpers.c       |   8 +++
 examples/helpers.h       |   5 ++
 test/helpers.c           |   8 +++
 test/helpers.h           |   5 ++
 test/io_uring_register.c | 108 +++++++++++++++++++++++++++++++++++++++
 6 files changed, 153 insertions(+)


base-commit: 0272bfa96f02cc47c024ec510a764ef7e37b76bf
-- 
Alviro Iskandar Setiawan

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ