]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
DEBUG: quic: export the few task handlers that often appear in task dumps
authorWilly Tarreau <w@1wt.eu>
Thu, 8 Sep 2022 13:12:59 +0000 (15:12 +0200)
committerWilly Tarreau <w@1wt.eu>
Thu, 8 Sep 2022 14:13:38 +0000 (16:13 +0200)
The following task/tasklet handlers often appear in "show profiling tasks"
but were not resolved since static:

 qc_io_cb, quic_conn_app_io_cb, process_timer,
 quic_accept_run, qc_idle_timer_task

This commit simply exports them so they can be resolved now. "process_timer"
which was a bit too generic and renamed to qc_process_timer.

src/mux_quic.c
src/quic_sock.c
src/xprt_quic.c

index c93a41500fd657fffd12f2258997a191cc3c1768..a8ebe2be4309ab5dcb3e2c60eb3bc9fff1c50257 100644 (file)
@@ -1854,7 +1854,7 @@ static void qc_release(struct qcc *qcc)
        TRACE_LEAVE(QMUX_EV_QCC_END);
 }
 
-static struct task *qc_io_cb(struct task *t, void *ctx, unsigned int status)
+struct task *qc_io_cb(struct task *t, void *ctx, unsigned int status)
 {
        struct qcc *qcc = ctx;
 
index 8d197568710fa14a799d59ed878c9babf7283bf5..1fabc1b003a7648740163a0d7e6fd88ce93daaa0 100644 (file)
@@ -461,7 +461,7 @@ void quic_accept_push_qc(struct quic_conn *qc)
 /* Tasklet handler to accept QUIC connections. Call listener_accept on every
  * listener instances registered in the accept queue.
  */
-static struct task *quic_accept_run(struct task *t, void *ctx, unsigned int i)
+struct task *quic_accept_run(struct task *t, void *ctx, unsigned int i)
 {
        struct li_per_thread *lthr;
        struct mt_list *elt1, elt2;
index 0c503cf7519ef0c0d363b9ed944643b716a8345a..4fd1872963bc9e43957aaee5d56d55b4f159af58 100644 (file)
@@ -214,7 +214,7 @@ static struct quic_tx_packet *qc_build_pkt(unsigned char **pos, const unsigned c
                                            struct list *frms, struct quic_conn *qc,
                                            const struct quic_version *ver, size_t dglen, int pkt_type,
                                            int force_ack, int padding, int probe, int cc, int *err);
-static struct task *quic_conn_app_io_cb(struct task *t, void *context, unsigned int state);
+struct task *quic_conn_app_io_cb(struct task *t, void *context, unsigned int state);
 static void qc_idle_timer_do_rearm(struct quic_conn *qc);
 static void qc_idle_timer_rearm(struct quic_conn *qc, int read);
 static int qc_conn_alloc_ssl_ctx(struct quic_conn *qc);
@@ -4172,7 +4172,7 @@ static void qc_dgrams_retransmit(struct quic_conn *qc)
 }
 
 /* QUIC connection packet handler task (post handshake) */
-static struct task *quic_conn_app_io_cb(struct task *t, void *context, unsigned int state)
+struct task *quic_conn_app_io_cb(struct task *t, void *context, unsigned int state)
 {
        struct ssl_sock_ctx *ctx;
        struct quic_conn *qc;
@@ -4569,7 +4569,7 @@ static void quic_close(struct connection *conn, void *xprt_ctx)
 }
 
 /* Callback called upon loss detection and PTO timer expirations. */
-static struct task *process_timer(struct task *task, void *ctx, unsigned int state)
+struct task *qc_process_timer(struct task *task, void *ctx, unsigned int state)
 {
        struct ssl_sock_ctx *conn_ctx;
        struct quic_conn *qc;
@@ -4868,7 +4868,7 @@ static int quic_conn_init_timer(struct quic_conn *qc)
        }
 
        qc->timer = TICK_ETERNITY;
-       qc->timer_task->process = process_timer;
+       qc->timer_task->process = qc_process_timer;
        qc->timer_task->context = qc->xprt_ctx;
 
        ret = 1;
@@ -4905,7 +4905,7 @@ static void qc_idle_timer_rearm(struct quic_conn *qc, int read)
 }
 
 /* The task handling the idle timeout */
-static struct task *qc_idle_timer_task(struct task *t, void *ctx, unsigned int state)
+struct task *qc_idle_timer_task(struct task *t, void *ctx, unsigned int state)
 {
        struct quic_conn *qc = ctx;
        struct quic_counters *prx_counters = qc->prx_counters;