eal: initialize logging before bus

Any log messages during bus initialization maybe lost because
the bus registration constructor is called before the logging constructor.

Fixes: a97725791eec ("bus: introduce bus abstraction")
Cc: stable@dpdk.org

Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
This commit is contained in:
Stephen Hemminger 2017-08-28 11:13:31 -07:00 committed by Thomas Monjalon
parent 53d266ac7b
commit f0dab530f4
2 changed files with 3 additions and 2 deletions

View File

@ -289,7 +289,8 @@ static const struct logtype logtype_strings[] = {
{RTE_LOGTYPE_USER8, "user8"}
};
RTE_INIT(rte_log_init);
/* Logging should be first initialzer (before drivers and bus) */
RTE_INIT_PRIO(rte_log_init, 101);
static void
rte_log_init(void)
{

View File

@ -285,7 +285,7 @@ struct rte_bus *rte_bus_find_by_name(const char *busname);
* The constructor has higher priority than PMD constructors.
*/
#define RTE_REGISTER_BUS(nm, bus) \
RTE_INIT_PRIO(businitfn_ ##nm, 101); \
RTE_INIT_PRIO(businitfn_ ##nm, 110); \
static void businitfn_ ##nm(void) \
{\
(bus).name = RTE_STR(nm);\