MINOR: mux-quic: add trace event for local error
Add a dedicated trace event QMUX_EV_QCC_ERR. This is used for locally detected error when a CONNECTION_CLOSE should be emitted. This should be backported up to 2.7.
This commit is contained in:
parent
b737f95009
commit
8d44bfaf0b
|
@ -48,6 +48,8 @@ static const struct trace_event qmux_trace_events[] = {
|
|||
{ .mask = QMUX_EV_QCS_BUILD_STRM, .name = "qcs_build_stream_frm", .desc = "qcs_build_stream_frm" },
|
||||
#define QMUX_EV_PROTO_ERR (1ULL << 17)
|
||||
{ .mask = QMUX_EV_PROTO_ERR, .name = "proto_err", .desc = "protocol error" },
|
||||
#define QMUX_EV_QCC_ERR (1ULL << 18)
|
||||
{ .mask = QMUX_EV_QCC_ERR, .name = "qcc_err", .desc = "connection on error" },
|
||||
{ }
|
||||
};
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ static void qcc_emit_cc(struct qcc *qcc, int err)
|
|||
/* This function must not be called multiple times. */
|
||||
BUG_ON(qcc->flags & QC_CF_CC_EMIT);
|
||||
|
||||
TRACE_STATE("set CONNECTION_CLOSE on quic-conn", QMUX_EV_QCC_WAKE, qcc->conn);
|
||||
TRACE_STATE("set CONNECTION_CLOSE on quic-conn", QMUX_EV_QCC_ERR, qcc->conn);
|
||||
quic_set_connection_close(qcc->conn->handle.qc, quic_err_transport(err));
|
||||
qcc->flags |= QC_CF_CC_EMIT;
|
||||
tasklet_wakeup(qcc->wait_event.tasklet);
|
||||
|
@ -2448,7 +2448,7 @@ static int qc_init(struct connection *conn, struct proxy *prx,
|
|||
HA_ATOMIC_STORE(&conn->handle.qc->qcc, qcc);
|
||||
|
||||
if (qcc_install_app_ops(qcc, conn->handle.qc->app_ops)) {
|
||||
TRACE_PROTO("Cannot install app layer", QMUX_EV_QCC_NEW, qcc->conn);
|
||||
TRACE_PROTO("Cannot install app layer", QMUX_EV_QCC_NEW|QMUX_EV_QCC_ERR, qcc->conn);
|
||||
/* prepare a CONNECTION_CLOSE frame */
|
||||
quic_set_connection_close(conn->handle.qc, quic_err_transport(QC_ERR_APPLICATION_ERROR));
|
||||
goto fail_install_app_ops;
|
||||
|
|
Loading…
Reference in New Issue