Hi Bruce, On Mon, 6 Feb 2017 13:49:03 +0000, Bruce Richardson <bruce.richard...@intel.com> wrote: > On Mon, Feb 06, 2017 at 02:29:08PM +0100, Olivier Matz wrote: > > The objective of this RFC patchset is to introduce a framework to > > support dynamic log types in EAL. It also provides one example of > > use (in i40e). > > > > Features: > > - log types are identified by a string > > - at registration, a uniq identifier is associated to a log type > > - each log type can have its level changed dynamically > > - extend command line parameters to set the log level of a specific > > type, or logs matching a regular expression > > - keep compat with other legacy types (eal, malloc, ring, user*, > > etc... keep their hardcoded log type value) > > > > At the end, when, we can expect that all non-dataplane logs are > > moved to be dynamic, so we can enable/disable them at runtime, > > without recompiling. Many debug options can probably be removed from > > configuration: > > $ git grep DEBUG config/common_base | wc -l > > 89 > > > > Comments are welcome! > > > Initial scan through the patches this looks pretty good. However, > rather than continuing with our own logging system, have you > investigated what other tracing and logging systems might be out > there that we could possibly re-use? Could LTTng be a good fit for > DPDK, perhaps?
I did not investigate much about existing logging system. I agree that could be a good alternative too. On the other hand, I'm not really confident in adding a dependency to an external lib for a core component like eal. What if we deicide tomorrow to port dpdk to windows or any baremetal env? Also, as far as I remember, the components that depend on external libraries are disabled today because we don't know how to properly manage the dependency (ex: pmd-pcap, vhost-numa, pmd-mlx, ...). Olivier