#include "ovsdb-idl.h"
#include "ovs-rcu.h"
#include "ovs-router.h"
+#include "ovs-thread.h"
#include "openvswitch/poll-loop.h"
#include "simap.h"
#include "stream-ssl.h"
#include "openvswitch/vconn.h"
#include "openvswitch/vlog.h"
#include "lib/vswitch-idl.h"
+#include "lib/dns-resolve.h"
VLOG_DEFINE_THIS_MODULE(vswitchd);
int retval;
set_program_name(argv[0]);
+ ovsthread_id_init();
+ dns_resolve_init(true);
ovs_cmdl_proctitle_init(argc, argv);
service_start(&argc, &argv);
remote = parse_options(argc, argv, &unixctl_path);
#ifdef HAVE_MLOCKALL
if (mlockall(MCL_CURRENT | MCL_FUTURE)) {
VLOG_ERR("mlockall failed: %s", ovs_strerror(errno));
+ } else {
+ set_memory_locked();
}
#else
VLOG_ERR("mlockall not supported on this system");
service_stop();
vlog_disable_async();
ovsrcu_exit();
+ dns_resolve_destroy();
return 0;
}
OPT_BOOTSTRAP_CA_CERT,
OPT_ENABLE_DUMMY,
OPT_DISABLE_SYSTEM,
+ OPT_DISABLE_SYSTEM_ROUTE,
DAEMON_OPTION_ENUMS,
OPT_DPDK,
SSL_OPTION_ENUMS,
{"bootstrap-ca-cert", required_argument, NULL, OPT_BOOTSTRAP_CA_CERT},
{"enable-dummy", optional_argument, NULL, OPT_ENABLE_DUMMY},
{"disable-system", no_argument, NULL, OPT_DISABLE_SYSTEM},
+ {"disable-system-route", no_argument, NULL, OPT_DISABLE_SYSTEM_ROUTE},
{"dpdk", optional_argument, NULL, OPT_DPDK},
{"dummy-numa", required_argument, NULL, OPT_DUMMY_NUMA},
{NULL, 0, NULL, 0},
break;
case OPT_DISABLE_SYSTEM:
- dp_blacklist_provider("system");
+ dp_disallow_provider("system");
+ break;
+
+ case OPT_DISABLE_SYSTEM_ROUTE:
ovs_router_disable_system_routing_table();
break;