static void process_pollop(pollset_op_t *op)
{
    apr_status_t rv;
    event_conn_state_t *cs = op->cs;

    switch (op->timeout_type) {
    case TIMEOUT_WRITE_COMPLETION:
        TO_QUEUE_APPEND(write_completion_q, cs);
        break;
    case TIMEOUT_KEEPALIVE:
        TO_QUEUE_APPEND(keepalive_q, cs);
        break;
    case TIMEOUT_LINGER:
        TO_QUEUE_APPEND(linger_q, cs);
        break;
    case TIMEOUT_SHORT_LINGER:
        TO_QUEUE_APPEND(short_linger_q, cs);
        break;
    }

    rv = apr_pollset_add(event_pollset, &op->cs->pfd);

    if (rv != APR_SUCCESS && !APR_STATUS_IS_EEXIST(rv)) {
        ap_log_error(APLOG_MARK, APLOG_ERR, rv, ap_server_conf, APLOGNO(00467)
                     "%s: apr_pollset_add failure", op->tag);
    }
}