ev.data is a union, so setting ev.data.fd is lost after setting ev.data.ptr Reported-by: Song Yaofei <songyaofei@joyware.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
@@ -52,7 +52,6 @@ static int register_poll(struct uloop_fd *fd, unsigned int flags)
if (flags & ULOOP_EDGE_TRIGGER)
ev.events |= EPOLLET;
- ev.data.fd = fd->fd;
ev.data.ptr = fd;
fd->flags = flags;