Merge pull request #5837 from chrishayen/epoll_packed_fix

Made packed conditional on EPoll_Event to match kernel
This commit is contained in:
Jeroen van Rijn
2025-10-21 20:25:54 +02:00
committed by GitHub
+16
View File
@@ -1446,10 +1446,26 @@ EPoll_Data :: struct #raw_union {
u64: u64, u64: u64,
} }
/*
Linux kernel only packs this struct on x86_64.
include/uapi/linux/eventpoll.h:
#ifdef __x86_64__
#define EPOLL_PACKED __attribute__((packed))
#else
#define EPOLL_PACKED
#endif
*/
when ODIN_ARCH == .amd64 {
EPoll_Event :: struct #packed { EPoll_Event :: struct #packed {
events: EPoll_Event_Set, events: EPoll_Event_Set,
data: EPoll_Data, data: EPoll_Data,
} }
} else {
EPoll_Event :: struct {
events: EPoll_Event_Set,
data: EPoll_Data,
}
}
/* /*
Flags for execveat(2) syscall. Flags for execveat(2) syscall.