Está absolutamente bien desechar o reutilizar inmediatamente su estructura epoll_event.
El kernel copiará los parámetros de la estructura epoll_event.
Esto es exactamente lo mismo que si usara un ioctl que toma una estructura como parámetro, o una operación de socket (por ejemplo, enlace) que toma una estructura sockaddr_in.
El núcleo toma lo que necesita y está bien que lo liberes de inmediato.
Lo único de lo que debe preocuparse son los "datos de usuario", que solo son relevantes para usted. El kernel lo almacenará, pero necesita saber qué significa cuando recibe un evento.
Todo esta bien. El epoll_ctl
La función es un contenedor simple alrededor de una llamada al sistema que estará completamente completa cuando la función regrese. No se requieren más datos del espacio de usuario. La estructura es simplemente una forma de empaquetar los argumentos.