fr_schedule_thread_instantiate_t worker_thread_instantiate; //!< thread instantiation callback
void *worker_instantiate_ctx; //!< thread instantiation context
- uint32_t worker_flags; //!< for debugging the worker
-
fr_dlist_t workers; //!< list of workers
fr_network_t *single_network; //!< for single-threaded mode
goto fail;
}
- sw->worker = fr_worker_create(sw, el, sc->log, sc->worker_flags);
+ sw->worker = fr_worker_create(sw, el, sc->log, sc->lvl);
if (!sw->worker) {
fr_log(sc->log, L_ERR, "Worker %d - Failed creating worker: %s", sw->id, fr_strerror());
goto fail;
return NULL;
}
- sc->single_worker = fr_worker_create(sc, el, sc->log, sc->worker_flags);
+ sc->single_worker = fr_worker_create(sc, el, sc->log, sc->lvl);
if (!sc->single_worker) {
fr_log(sc->log, L_ERR, "Failed creating worker: %s", fr_strerror());
talloc_free(sc);
struct fr_worker_t {
char const *name; //!< name of this worker
- uint32_t flags; //!< various debugging options, etc.
-
int kq; //!< my kq
fr_log_t const *log; //!< log destination
+ fr_log_lvl_t lvl; //!< log level
fr_atomic_queue_t *aq_control; //!< atomic queue for control messages sent to me
* @param[in] ctx the talloc context
* @param[in] el the event list
* @param[in] logger the destination for all logging messages
- * @param[in] flags debug flags
+ * @param[in] lvl log level
* @return
* - NULL on error
* - fr_worker_t on success
*/
-fr_worker_t *fr_worker_create(TALLOC_CTX *ctx, fr_event_list_t *el, fr_log_t const *logger, uint32_t flags)
+fr_worker_t *fr_worker_create(TALLOC_CTX *ctx, fr_event_list_t *el, fr_log_t const *logger, fr_log_lvl_t lvl)
{
int max_channels = 64;
fr_worker_t *worker;
}
worker->name = "";
- worker->flags = flags;
worker->channel = talloc_zero_array(worker, fr_channel_t *, max_channels);
if (!worker->channel) {
worker->el = el;
worker->log = logger;
+ worker->lvl = lvl;
/*
* @todo make these configurable
*/
typedef struct fr_worker_t fr_worker_t;
-fr_worker_t *fr_worker_create(TALLOC_CTX *ctx, fr_event_list_t *el, fr_log_t const *logger, uint32_t flags) CC_HINT(nonnull(2,3));
+fr_worker_t *fr_worker_create(TALLOC_CTX *ctx, fr_event_list_t *el, fr_log_t const *logger, fr_log_lvl_t lvl) CC_HINT(nonnull(2,3));
void fr_worker_destroy(fr_worker_t *worker) CC_HINT(nonnull);
int fr_worker_kq(fr_worker_t *worker) CC_HINT(nonnull);
fr_event_list_t *fr_worker_el(fr_worker_t *worker) CC_HINT(nonnull);
exit(1);
}
- worker = sw->worker = fr_worker_create(ctx, el, &default_log, ~0);
+ worker = sw->worker = fr_worker_create(ctx, el, &default_log, L_DBG_LVL_MAX);
if (!worker) {
fprintf(stderr, "radius_test: Failed to create the worker\n");
exit(1);
exit(1);
}
- worker = sw->worker = fr_worker_create(ctx, el, &default_log, ~0);
+ worker = sw->worker = fr_worker_create(ctx, el, &default_log, L_DBG_LVL_MAX);
if (!worker) {
fprintf(stderr, "worker_test: Failed to create the worker\n");
exit(1);