Handle faults with meas_lat
This commit is contained in:
parent
4add03efa2
commit
c322c9acff
2 changed files with 10 additions and 3 deletions
|
@ -173,10 +173,13 @@ void evt_core_loop(struct evt_core_ctx* ctx) {
|
||||||
|
|
||||||
fdinfo = evt_core_get_from_fd(ctx, err_fd);
|
fdinfo = evt_core_get_from_fd(ctx, err_fd);
|
||||||
if (fdinfo != NULL) {
|
if (fdinfo != NULL) {
|
||||||
fprintf(stderr, "Clearing fd=%d on cat=%s\n", err_fd, fdinfo->cat->name);
|
|
||||||
if (fdinfo->cat->err_cb != NULL) {
|
if (fdinfo->cat->err_cb != NULL) {
|
||||||
while (fdinfo->cat->err_cb(ctx, fdinfo) == 0);
|
if (fdinfo->cat->err_cb(ctx, fdinfo) == 1) {
|
||||||
|
fprintf(stderr, "fd=%d on cat=%s is handled by app\n", err_fd, fdinfo->cat->name);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
fprintf(stderr, "Clearing fd=%d on cat=%s\n", err_fd, fdinfo->cat->name);
|
||||||
evt_core_rm_fd (ctx, err_fd);
|
evt_core_rm_fd (ctx, err_fd);
|
||||||
} else {
|
} else {
|
||||||
fprintf(stderr, "The file descriptor %d is not registered in a category, this is probably a logic error\n", err_fd);
|
fprintf(stderr, "The file descriptor %d is not registered in a category, this is probably a logic error\n", err_fd);
|
||||||
|
|
|
@ -43,6 +43,10 @@ void free_mesure_conf(void* v) {
|
||||||
free(mc);
|
free(mc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int on_udp_err(struct evt_core_ctx* ctx, struct evt_core_fdinfo* fdinfo) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int on_udp(struct evt_core_ctx* ctx, struct evt_core_fdinfo* fdinfo) {
|
int on_udp(struct evt_core_ctx* ctx, struct evt_core_fdinfo* fdinfo) {
|
||||||
ssize_t res;
|
ssize_t res;
|
||||||
int secs, nsecs;
|
int secs, nsecs;
|
||||||
|
@ -121,7 +125,7 @@ void register_categories(struct evt_core_ctx* evts) {
|
||||||
.app_ctx = NULL,
|
.app_ctx = NULL,
|
||||||
.free_app_ctx = NULL,
|
.free_app_ctx = NULL,
|
||||||
.cb = on_udp,
|
.cb = on_udp,
|
||||||
.err_cb = NULL,
|
.err_cb = on_udp_err,
|
||||||
.name = "udp-read",
|
.name = "udp-read",
|
||||||
.flags = EPOLLIN | EPOLLET,
|
.flags = EPOLLIN | EPOLLET,
|
||||||
.socklist = NULL
|
.socklist = NULL
|
||||||
|
|
Loading…
Reference in a new issue