diff --git a/include/villas/log.h b/include/villas/log.h index cac1e5e98..f38ac99aa 100644 --- a/include/villas/log.h +++ b/include/villas/log.h @@ -35,14 +35,6 @@ extern "C" { #include "common.h" #include "log_config.h" -#ifdef __GNUC__ - #define INDENT int __attribute__ ((__cleanup__(log_outdent), unused)) _old_indent = log_indent(1); - #define NOINDENT int __attribute__ ((__cleanup__(log_outdent), unused)) _old_indent = log_noindent(); -#else - #define INDENT ; - #define NOINDENT ; -#endif - /* The log level which is passed as first argument to print() */ #define LOG_LVL_DEBUG CLR_GRY("Debug") #define LOG_LVL_INFO CLR_WHT("Info ") @@ -122,22 +114,6 @@ int log_close(struct log *l); /** Destroy log object */ int log_destroy(struct log *l); -/** Change log indention for current thread. - * - * The argument level can be negative! - */ -int log_indent(int levels); - -/** Disable log indention of current thread. */ -int log_noindent(); - -/** A helper function the restore the previous log indention level. - * - * This function is usually called by a __cleanup__ handler (GCC C Extension). - * See INDENT macro. - */ -void log_outdent(int *); - /** Set logging facilities based on expression. * * Currently we support two types of expressions: diff --git a/lib/api.c b/lib/api.c index b98af2785..225c495a8 100644 --- a/lib/api.c +++ b/lib/api.c @@ -330,7 +330,7 @@ int api_stop(struct api *a) lws_callback_on_writable(s->wsi); } - for (int i = 0; i < 10 && list_length(&a->sessions) > 0; i++) { INDENT + for (int i = 0; i < 10 && list_length(&a->sessions) > 0; i++) { info("Wait for API sessions to close"); usleep(1 * 1e6); } diff --git a/lib/hist.c b/lib/hist.c index c38fbb9e3..0d969ef00 100644 --- a/lib/hist.c +++ b/lib/hist.c @@ -135,7 +135,7 @@ double hist_stddev(struct hist *h) } void hist_print(struct hist *h, int details) -{ INDENT +{ if (h->total > 0) { hist_cnt_t missed = h->total - h->higher - h->lower; diff --git a/lib/kernel/if.c b/lib/kernel/if.c index d72e09e93..f0c050e17 100644 --- a/lib/kernel/if.c +++ b/lib/kernel/if.c @@ -71,7 +71,7 @@ int if_start(struct interface *i) { info("Starting interface '%s' which is used by %zu sockets", rtnl_link_get_name(i->nl_link), list_length(&i->sockets)); - { INDENT + { /* Set affinity for network interfaces (skip _loopback_ dev) */ //if_set_affinity(i, i->affinity); @@ -124,12 +124,10 @@ int if_stop(struct interface *i) { info("Stopping interface '%s'", rtnl_link_get_name(i->nl_link)); - { INDENT - if_set_affinity(i, -1L); + if_set_affinity(i, -1L); - if (i->tc_qdisc) - tc_reset(i); - } + if (i->tc_qdisc) + tc_reset(i); return 0; } diff --git a/lib/kernel/rt.c b/lib/kernel/rt.c index 76b9ca98b..de1fd0b21 100644 --- a/lib/kernel/rt.c +++ b/lib/kernel/rt.c @@ -35,7 +35,7 @@ int rt_init(int priority, int affinity) { info("Initialize real-time sub-system"); - { INDENT + { #ifdef __linux__ int is_rt; diff --git a/lib/kernel/vfio.c b/lib/kernel/vfio.c index 0e1bd04cc..380f60cd2 100644 --- a/lib/kernel/vfio.c +++ b/lib/kernel/vfio.c @@ -335,7 +335,7 @@ int vfio_pci_reset(struct vfio_device *d) return ret; debug(5, "VFIO: dependent devices for hot-reset:"); - for (int i = 0; i < reset_info->count; i++) { INDENT + for (int i = 0; i < reset_info->count; i++) { struct vfio_pci_dependent_device *dd = &reset_info->devices[i]; debug(5, "%04x:%02x:%02x.%01x: iommu_group=%u", dd->segment, dd->bus, PCI_SLOT(dd->devfn), PCI_FUNC(dd->devfn), dd->group_id); @@ -508,7 +508,7 @@ void vfio_dump(struct vfio_container *v) ); - for (size_t i = 0; i < list_length(&g->devices); i++) { INDENT + for (size_t i = 0; i < list_length(&g->devices); i++) { struct vfio_device *d = (struct vfio_device *) list_at(&g->devices, i); info("Device %s: regions=%u, irqs=%u, flags=%#x", d->name, @@ -517,7 +517,7 @@ void vfio_dump(struct vfio_container *v) d->info.flags ); - for (int i = 0; i < d->info.num_regions && i < 8; i++) { INDENT + for (int i = 0; i < d->info.num_regions && i < 8; i++) { struct vfio_region_info *region = &d->regions[i]; if (region->size > 0) @@ -529,7 +529,7 @@ void vfio_dump(struct vfio_container *v) ); } - for (int i = 0; i < d->info.num_irqs; i++) { INDENT + for (int i = 0; i < d->info.num_irqs; i++) { struct vfio_irq_info *irq = &d->irqs[i]; if (irq->count > 0) diff --git a/lib/log.c b/lib/log.c index 988239409..a5913d491 100644 --- a/lib/log.c +++ b/lib/log.c @@ -89,30 +89,6 @@ static const char *facilities_strs[] = { "ib", /* LOG_IB */ }; -#ifdef __GNUC__ -/** The current log indention level (per thread!). */ -static __thread int indent = 0; - -int log_indent(int levels) -{ - int old = indent; - indent += levels; - return old; -} - -int log_noindent() -{ - int old = indent; - indent = 0; - return old; -} - -void log_outdent(int *old) -{ - indent = *old; -} -#endif - static void log_resize(int signal, siginfo_t *sinfo, void *ctx) { int ret; @@ -304,16 +280,6 @@ void log_vprint(struct log *l, const char *lvl, const char *fmt, va_list ap) /* Timestamp & Severity */ strcatf(&buf, "%10.3f %-5s ", time_delta(&l->epoch, &ts), lvl); - /* Indention in case we log to the terminal */ -#ifdef __GNUC__ - if (l->file == stderr || l->file == stdout) { - for (int i = 0; i < indent; i++) - strcatf(&buf, "%s ", BOX_UD); - - strcatf(&buf, "%s ", BOX_UDR); - } -#endif - /* Format String */ vstrcatf(&buf, fmt, ap); diff --git a/lib/log_config.c b/lib/log_config.c index 4151c061b..c8a12dec1 100644 --- a/lib/log_config.c +++ b/lib/log_config.c @@ -89,7 +89,7 @@ void jerror(json_error_t *err, const char *fmt, ...) va_end(ap); log_print(l, LOG_LVL_ERROR, "%s:", buf); - { INDENT + { log_print(l, LOG_LVL_ERROR, "%s in %s:%d:%d", err->text, err->source, err->line, err->column); if (l->syslog) diff --git a/lib/memory.c b/lib/memory.c index 7cc3b63c1..6de729999 100644 --- a/lib/memory.c +++ b/lib/memory.c @@ -54,7 +54,7 @@ int memory_init(int hugepages) struct rlimit l; pagecnt = kernel_get_nr_hugepages(); - if (pagecnt < hugepages) { INDENT + if (pagecnt < hugepages) { if (getuid() == 0) { kernel_set_nr_hugepages(hugepages); debug(LOG_MEM | 2, "Increased number of reserved hugepages from %d to %d", pagecnt, hugepages); diff --git a/lib/node.c b/lib/node.c index c06b3160a..80df9502c 100644 --- a/lib/node.c +++ b/lib/node.c @@ -326,7 +326,7 @@ int node_start(struct node *n) assert(node_type(n)->state == STATE_STARTED); info("Starting node %s", node_name_long(n)); - { INDENT + { ret = node_direction_start(&n->in, n); if (ret) return ret; @@ -355,7 +355,7 @@ int node_stop(struct node *n) return 0; info("Stopping node %s", node_name(n)); - { INDENT + { ret = node_direction_stop(&n->in, n); if (ret) return ret; diff --git a/lib/node_type.c b/lib/node_type.c index b1ff6eb6e..7059cf467 100644 --- a/lib/node_type.c +++ b/lib/node_type.c @@ -37,7 +37,7 @@ int node_type_start(struct node_type *vt, struct super_node *sn) return 0; info("Initializing " CLR_YEL("%s") " node type which is used by %zu nodes", node_type_name(vt), list_length(&vt->instances)); - { INDENT + { ret = vt->type.start ? vt->type.start(sn) : 0; } @@ -55,7 +55,7 @@ int node_type_stop(struct node_type *vt) return 0; info("De-initializing " CLR_YEL("%s") " node type", node_type_name(vt)); - { INDENT + { ret = vt->type.stop ? vt->type.stop() : 0; } diff --git a/lib/nodes/comedi.c b/lib/nodes/comedi.c index 624cec3d8..44b1bb6ca 100644 --- a/lib/nodes/comedi.c +++ b/lib/nodes/comedi.c @@ -226,9 +226,8 @@ static int comedi_start_in(struct node *n) if (ret < 0) error("Invalid command for input subdevice of node '%s'", node_name(n)); - info("Input command:"); { INDENT - comedi_dump_cmd(&cmd, 1); - } + info("Input command:") + comedi_dump_cmd(&cmd, 1); ret = comedi_command(c->dev, &cmd); if (ret < 0) @@ -319,9 +318,8 @@ static int comedi_start_out(struct node *n) if (ret < 0) error("Invalid command for input subdevice of node '%s'", node_name(n)); - info("Output command:"); { INDENT - comedi_dump_cmd(&cmd, 1); - } + info("Output command:") + comedi_dump_cmd(&cmd, 1); ret = comedi_command(c->dev, &cmd); if (ret < 0) diff --git a/lib/super_node.c b/lib/super_node.c index 7f00521f2..cb782bf48 100644 --- a/lib/super_node.c +++ b/lib/super_node.c @@ -79,7 +79,7 @@ int super_node_parse_uri(struct super_node *sn, const char *uri) info("Parsing configuration"); - if (uri) { INDENT + if (uri) { FILE *f; AFILE *af; @@ -110,7 +110,7 @@ int super_node_parse_uri(struct super_node *sn, const char *uri) config_setting_t *json_root = NULL; warn("Failed to parse JSON configuration. Re-trying with old libconfig format."); - { INDENT + { warn("Please consider migrating to the new format using the 'conf2json' command."); } @@ -134,7 +134,7 @@ int super_node_parse_uri(struct super_node *sn, const char *uri) ret = config_read(&cfg, f); if (ret != CONFIG_TRUE) { - { INDENT + { warn("conf: %s in %s:%d", config_error_text(&cfg), uri, config_error_line(&cfg)); warn("json: %s in %s:%d:%d", err.text, err.source, err.line, err.column); } @@ -163,7 +163,7 @@ int super_node_parse_uri(struct super_node *sn, const char *uri) return super_node_parse_json(sn, sn->cfg); } - else { INDENT + else { warn("No configuration file specified. Starting unconfigured. Use the API to configure this instance."); } @@ -355,7 +355,7 @@ int super_node_start(struct super_node *sn) #endif info("Starting node-types"); - for (size_t i = 0; i < list_length(&sn->nodes); i++) { INDENT + for (size_t i = 0; i < list_length(&sn->nodes); i++) { struct node *n = (struct node *) list_at(&sn->nodes, i); ret = node_type_start(n->_vt, sn); @@ -364,11 +364,11 @@ int super_node_start(struct super_node *sn) } info("Starting nodes"); - for (size_t i = 0; i < list_length(&sn->nodes); i++) { INDENT + for (size_t i = 0; i < list_length(&sn->nodes); i++) { struct node *n = (struct node *) list_at(&sn->nodes, i); int refs = list_count(&sn->paths, (cmp_cb_t) path_uses_node, n); - if (refs > 0) { INDENT + if (refs > 0) { ret = node_start(n); if (ret) error("Failed to start node: %s", node_name(n)); @@ -378,10 +378,10 @@ int super_node_start(struct super_node *sn) } info("Starting paths"); - for (size_t i = 0; i < list_length(&sn->paths); i++) { INDENT + for (size_t i = 0; i < list_length(&sn->paths); i++) { struct path *p = (struct path *) list_at(&sn->paths, i); - if (p->enabled) { INDENT + if (p->enabled) { ret = path_init2(p); if (ret) error("Failed to start path: %s", path_name(p)); @@ -404,7 +404,7 @@ int super_node_stop(struct super_node *sn) int ret; info("Stopping paths"); - for (size_t i = 0; i < list_length(&sn->paths); i++) { INDENT + for (size_t i = 0; i < list_length(&sn->paths); i++) { struct path *p = (struct path *) list_at(&sn->paths, i); ret = path_stop(p); @@ -413,7 +413,7 @@ int super_node_stop(struct super_node *sn) } info("Stopping nodes"); - for (size_t i = 0; i < list_length(&sn->nodes); i++) { INDENT + for (size_t i = 0; i < list_length(&sn->nodes); i++) { struct node *n = (struct node *) list_at(&sn->nodes, i); ret = node_stop(n); @@ -422,7 +422,7 @@ int super_node_stop(struct super_node *sn) } info("Stopping node-types"); - for (size_t i = 0; i < list_length(&plugins); i++) { INDENT + for (size_t i = 0; i < list_length(&plugins); i++) { struct plugin *p = (struct plugin *) list_at(&plugins, i); if (p->type == PLUGIN_TYPE_NODE) { diff --git a/lib/table.c b/lib/table.c index 8da1652ba..e7784cf87 100644 --- a/lib/table.c +++ b/lib/table.c @@ -61,7 +61,7 @@ static int table_resize(struct table *t, int width) } void table_header(struct table *t) -{ NOINDENT +{ struct log *l = global_log ? global_log : &default_log; if (t->width != l->width) @@ -120,7 +120,7 @@ void table_header(struct table *t) } void table_row(struct table *t, ...) -{ NOINDENT +{ struct log *l = global_log ? global_log : &default_log; if (t->width != l->width) { @@ -155,7 +155,7 @@ void table_row(struct table *t, ...) } void table_footer(struct table *t) -{ NOINDENT +{ struct log *l = global_log ? global_log : &default_log; if (t->width != l->width) diff --git a/lib/web.c b/lib/web.c index 106dc4e34..381e147a4 100644 --- a/lib/web.c +++ b/lib/web.c @@ -242,7 +242,7 @@ int web_start(struct web *w) info("Starting Web sub-system: webroot=%s", w->htdocs); - { INDENT + { /* update web root of mount point */ mounts[0].origin = w->htdocs; @@ -273,7 +273,7 @@ int web_stop(struct web *w) info("Stopping Web sub-system"); - { INDENT + { lws_cancel_service(w->context); /** @todo Wait for all connections to be closed */ @@ -297,7 +297,7 @@ int web_destroy(struct web *w) if (w->state == STATE_DESTROYED) return 0; - if (w->context) { INDENT + if (w->context) { lws_context_destroy(w->context); }