diff options
-rw-r--r-- | src/pevent.c | 8 | ||||
-rw-r--r-- | src/pevent.h | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/pevent.c b/src/pevent.c index 276fe48..0997009 100644 --- a/src/pevent.c +++ b/src/pevent.c @@ -266,6 +266,10 @@ event_forward_connection(event_ctx *ctx, int dest_fd, on_data_cb on_data, errno = 0; siz = event_buf_read(read_buf); saved_errno = errno; + + if (read_buf->buf_used == sizeof(read_buf->buf)) { + W2("Buffer bloat for read buffer: %zu\n", read_buf->buf_used); + } } else break; if (saved_errno == EAGAIN) break; @@ -330,6 +334,10 @@ event_forward_connection(event_ctx *ctx, int dest_fd, on_data_cb on_data, } break; } + + if (write_buf.buf_used == sizeof(write_buf.buf)) { + W2("Buffer bloat for write buffer: %zu\n", write_buf.buf_used); + } } if (rc != CON_OK) diff --git a/src/pevent.h b/src/pevent.h index 9384405..585fc46 100644 --- a/src/pevent.h +++ b/src/pevent.h @@ -52,6 +52,7 @@ typedef enum forward_state { CON_IN_ERROR, CON_OUT_ERROR } forward_state; +/* event buffer; used for input/output buffering */ typedef struct event_buf { int fd; @@ -61,6 +62,7 @@ typedef struct event_buf { void *buf_user_data; } event_buf; +/* event context; represents a global, per event queue state */ typedef struct event_ctx { int active; int has_error; |