nginx needs porting
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linaro AArch64 cross-distro work |
Triaged
|
Low
|
Riku Voipio |
Bug Description
nginx hardcodes SYS_eventfd, which does not exist on aarch64. The code is a bit weird, and I have little experience with eventfd, so I'm not sure if the patch below is even remotely accurate, but it passes the build test at least:
--- auto/unix
+++ auto/unix
@@ -393,10 +393,10 @@
- #include <sys/syscall.h>"
+ #include <sys/eventfd.h>"
- ngx_feature_
+ ngx_feature_
--- src/event/
+++ src/event/
@@ -73,7 +73,7 @@
#define SYS_io_setup 245
#define SYS_io_destroy 246
#define SYS_io_getevents 247
-#define SYS_eventfd 323
+#include <sys/eventfd.h>
typedef u_int aio_context_t;
@@ -225,7 +225,7 @@
int n;
struct epoll_event ee;
- ngx_eventfd = syscall(
+ ngx_eventfd = eventfd(0, 0);
if (ngx_eventfd == -1) {
the other SYS_io_* syscall numbers probably also need some porting.
Changed in linaro-aarch64: | |
status: | New → Triaged |
importance: | Undecided → Low |
assignee: | nobody → Riku Voipio (riku-voipio) |
Seems to build fine without this patch - how important is eventfd support in nginx?