void *data;
lxc_mainloop_callback_t callback;
lxc_mainloop_cleanup_t cleanup;
- const char *handler_name;
+ const char *name;
unsigned int flags;
};
}
if (ret < 0)
return syswarn_ret(-1, "Failed to disarm %d for \"%s\" handler",
- handler->fd, handler->handler_name);
+ handler->fd, handler->name);
- TRACE("Disarmed %d for \"%s\" handler", handler->fd, handler->handler_name);
+ TRACE("Disarmed %d for \"%s\" handler", handler->fd, handler->name);
return 0;
}
ret = handler->cleanup(handler->fd, handler->data);
if (ret < 0)
- SYSWARN("Failed to cleanup %d for \"%s\" handler", handler->fd, handler->handler_name);
+ SYSWARN("Failed to cleanup %d for \"%s\" handler", handler->fd, handler->name);
}
- TRACE("Deleted %d for \"%s\" handler", handler->fd, handler->handler_name);
+ TRACE("Deleted %d for \"%s\" handler", handler->fd, handler->name);
list = move_ptr(handler->list);
lxc_list_del(list);
free(list->elem);
}
}
if (ret < 0)
- return syserror_ret(ret, "Failed to add \"%s\" handler", handler->handler_name);
+ return syserror_ret(ret, "Failed to add \"%s\" handler", handler->name);
- TRACE("Added \"%s\" handler", handler->handler_name);
+ TRACE("Added \"%s\" handler", handler->name);
return 0;
}
ret = io_uring_submit(descr->ring);
if (ret < 0)
return syserror_ret(ret, "Failed to remove \"%s\" handler",
- handler->handler_name);
+ handler->name);
- TRACE("Removed handler \"%s\"", handler->handler_name);
+ TRACE("Removed handler \"%s\"", handler->name);
return ret;
}
if (res <= 0) {
switch (res) {
case 0:
- TRACE("Removed \"%s\" handler", handler->handler_name);
+ TRACE("Removed \"%s\" handler", handler->name);
handler->flags |= CANCEL_SUCCESS;
if (has_exact_flags(handler->flags, (CANCEL_SUCCESS | CANCEL_RECEIVED)))
delete_handler(handler);
break;
case -EALREADY:
- TRACE("Repeat sqe remove request for \"%s\" handler", handler->handler_name);
+ TRACE("Repeat sqe remove request for \"%s\" handler", handler->name);
break;
case -ECANCELED:
- TRACE("Canceled \"%s\" handler", handler->handler_name);
+ TRACE("Canceled \"%s\" handler", handler->name);
handler->flags |= CANCEL_RECEIVED;
if (has_exact_flags(handler->flags, (CANCEL_SUCCESS | CANCEL_RECEIVED)))
delete_handler(handler);
break;
case -ENOENT:
- TRACE("No sqe for \"%s\" handler", handler->handler_name);
+ TRACE("No sqe for \"%s\" handler", handler->name);
break;
default:
WARN("Received unexpected return value %d in cqe for \"%s\" handler",
- res, handler->handler_name);
+ res, handler->name);
break;
}
} else {
delete_handler(handler);
break;
case LXC_MAINLOOP_CLOSE:
- return log_trace(0, "Closing from \"%s\"", handler->handler_name);
+ return log_trace(0, "Closing from \"%s\"", handler->name);
case LXC_MAINLOOP_ERROR:
- return syserror_ret(-1, "Closing with error from \"%s\"", handler->handler_name);
+ return syserror_ret(-1, "Closing with error from \"%s\"", handler->name);
default:
WARN("Received unexpected return value %d from \"%s\" handler",
- ret, handler->handler_name);
+ ret, handler->name);
break;
}
}
lxc_mainloop_callback_t callback,
lxc_mainloop_cleanup_t cleanup,
void *data, bool oneshot,
- const char *handler_name)
+ const char *name)
{
__do_free struct mainloop_handler *handler = NULL;
__do_free struct lxc_list *list = NULL;
if (fd < 0)
return ret_errno(EBADF);
- if (!callback || !cleanup || !events || !handler_name)
+ if (!callback || !cleanup || !events || !name)
return ret_errno(EINVAL);
handler = zalloc(sizeof(*handler));
handler->cleanup = cleanup;
handler->fd = fd;
handler->data = data;
- handler->handler_name = handler_name;
+ handler->name = name;
if (descr->type == LXC_MAINLOOP_IO_URING) {
ret = __io_uring_arm(descr, handler, oneshot);
int events,
lxc_mainloop_callback_t callback,
lxc_mainloop_cleanup_t cleanup,
- void *data, const char *handler_name)
+ void *data, const char *name)
{
return __lxc_mainloop_add_handler_events(descr, fd, events,
callback, cleanup,
- data, false, handler_name);
+ data, false, name);
}
int lxc_mainloop_add_handler(struct lxc_async_descr *descr, int fd,
lxc_mainloop_callback_t callback,
lxc_mainloop_cleanup_t cleanup,
- void *data, const char *handler_name)
+ void *data, const char *name)
{
return __lxc_mainloop_add_handler_events(descr, fd, EPOLLIN,
callback, cleanup,
- data, false, handler_name);
+ data, false, name);
}
int lxc_mainloop_add_oneshot_handler(struct lxc_async_descr *descr, int fd,
lxc_mainloop_callback_t callback,
lxc_mainloop_cleanup_t cleanup,
- void *data, const char *handler_name)
+ void *data, const char *name)
{
return __lxc_mainloop_add_handler_events(descr, fd, EPOLLIN,
callback, cleanup,
- data, true, handler_name);
+ data, true, name);
}
int lxc_mainloop_del_handler(struct lxc_async_descr *descr, int fd)
else
ret = epoll_ctl(descr->epfd, EPOLL_CTL_DEL, fd, NULL);
if (ret < 0)
- return syserror("Failed to disarm \"%s\"", handler->handler_name);
+ return syserror("Failed to disarm \"%s\"", handler->name);
/*
* For io_uring the deletion happens at completion time. Either
__hidden extern int lxc_mainloop_add_handler_events(struct lxc_async_descr *descr, int fd, int events,
lxc_mainloop_callback_t callback,
lxc_mainloop_cleanup_t cleanup,
- void *data, const char *handler_name);
+ void *data, const char *name);
__hidden extern int lxc_mainloop_add_handler(struct lxc_async_descr *descr, int fd,
lxc_mainloop_callback_t callback,
lxc_mainloop_cleanup_t cleanup,
- void *data, const char *handler_name);
+ void *data, const char *name);
__hidden extern int lxc_mainloop_add_oneshot_handler(struct lxc_async_descr *descr, int fd,
lxc_mainloop_callback_t callback,
lxc_mainloop_cleanup_t cleanup,
- void *data, const char *handler_name);
+ void *data, const char *name);
__hidden extern int lxc_mainloop_del_handler(struct lxc_async_descr *descr, int fd);