-# Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
+# Copyright (C) 2009, 2010, 2011, 2012 Nicira, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
- # If openvswitch_mod is already loaded then we're done.
- test -e /sys/module/openvswitch_mod && return 0
+ # If openvswitch is already loaded then we're done.
+ test -e /sys/module/openvswitch -o -e /sys/module/openvswitch_mod && \
+ return 0
- # Load openvswitch_mod. If that's successful then we're done.
- action "Inserting openvswitch module" modprobe openvswitch_mod && return 0
+ # Load openvswitch. If that's successful then we're done.
+ action "Inserting openvswitch module" modprobe openvswitch && return 0
test -e /sys/module/bridge || return 1
bridges=`echo /sys/class/net/*/bridge | sed 's,/sys/class/net/,,g;s,/bridge,,g'`
if test "$bridges" != "*"; then
test -e /sys/module/bridge || return 1
bridges=`echo /sys/class/net/*/bridge | sed 's,/sys/class/net/,,g;s,/bridge,,g'`
if test "$bridges" != "*"; then
- test -e /sys/module/brcompat_mod && return 0
- action "Inserting brcompat module" modprobe brcompat_mod
+ if test -e /sys/module/bridge; then
+ log_warning_msg "bridge module is loaded, not loading brcompat"
+ return 1
+ fi
+ test -e /sys/module/brcompat -o -e /sys/module/brcompat_mod && return 0
+ action "Inserting brcompat module" modprobe brcompat
set "$@" --remote=punix:"$DB_SOCK"
set "$@" --remote=db:Open_vSwitch,manager_options
set "$@" --private-key=db:SSL,private_key
set "$@" --certificate=db:SSL,certificate
set "$@" --bootstrap-ca-cert=db:SSL,ca_cert
set "$@" --remote=punix:"$DB_SOCK"
set "$@" --remote=db:Open_vSwitch,manager_options
set "$@" --private-key=db:SSL,private_key
set "$@" --certificate=db:SSL,certificate
set "$@" --bootstrap-ca-cert=db:SSL,ca_cert
- # Increase the limit on the number of open file descriptors since
- # ovs-vswitchd needs a few per bridge
- ulimit -n 4096
+ # Increase the limit on the number of open file descriptors.
+ # ovs-vswitchd needs 16 per datapath, plus a few extra, so this
+ # should allow for 256 (or more) bridges.
+ ulimit -n 5000
fi
if daemon_is_running ovs-brcompatd; then
log_success_msg "ovs-brcompatd is already running"
elif test X"$BRCOMPAT" = Xyes; then
set ovs-brcompatd
fi
if daemon_is_running ovs-brcompatd; then
log_success_msg "ovs-brcompatd is already running"
elif test X"$BRCOMPAT" = Xyes; then
set ovs-brcompatd
- set "$@" -vANY:CONSOLE:EMER -vANY:SYSLOG:ERR -vANY:FILE:INFO
- start_daemon "$OVS_BRCOMPATD_PRIORITY" "$@"
+ set "$@" -vconsole:emer -vsyslog:err -vfile:info
+ start_daemon "$OVS_BRCOMPATD_PRIORITY" "$OVS_BRCOMPATD_WRAPPER" "$@"
fi
if test -e /sys/module/openvswitch_mod; then
action "Removing openvswitch module" rmmod openvswitch_mod
fi
if test -e /sys/module/openvswitch_mod; then
action "Removing openvswitch module" rmmod openvswitch_mod
log="logger -p daemon.$level -t ovs-save"
$log "force-reload-kmod interface restore script exited with status $rc:"
$log -f "$script"
log="logger -p daemon.$level -t ovs-save"
$log "force-reload-kmod interface restore script exited with status $rc:"
$log -f "$script"
OVSDB_SERVER_PRIORITY=-10
OVS_VSWITCHD_PRIORITY=-10
OVS_BRCOMPATD_PRIORITY=-10
OVSDB_SERVER_PRIORITY=-10
OVS_VSWITCHD_PRIORITY=-10
OVS_BRCOMPATD_PRIORITY=-10
- if (lsb_release --id) >/dev/null 2>&1; then
+ type_file=$etcdir/system-type.conf
+ version_file=$etcdir/system-version.conf
+
+ if test -e "$type_file" ; then
+ SYSTEM_TYPE=`cat $type_file`
+ SYSTEM_VERSION=`cat $version_file`
+ elif (lsb_release --id) >/dev/null 2>&1; then
SYSTEM_TYPE=`lsb_release --id -s`
system_release=`lsb_release --release -s`
system_codename=`lsb_release --codename -s`
SYSTEM_TYPE=`lsb_release --id -s`
system_release=`lsb_release --release -s`
system_codename=`lsb_release --codename -s`
--ovs-vswitchd-priority=NICE set ovs-vswitchd's niceness (default: $OVS_VSWITCHD_PRIORITY)
--ovs-brcompatd-priority=NICE set ovs-brcompatd's niceness (default: $OVS_BRCOMPATD_PRIORITY)
--ovs-vswitchd-priority=NICE set ovs-vswitchd's niceness (default: $OVS_VSWITCHD_PRIORITY)
--ovs-brcompatd-priority=NICE set ovs-brcompatd's niceness (default: $OVS_BRCOMPATD_PRIORITY)
+Debugging options for "start" and "force-reload-kmod":
+ --ovsdb-server-wrapper=WRAPPER
+ --ovs-vswitchd-wrapper=WRAPPER
+ --ovs-vswitchd-wrapper=WRAPPER
+ run specified daemon under WRAPPER (either 'valgrind' or 'strace')
+
Options for "start", "force-reload-kmod", "load-kmod", "status", and "version":
--brcompat enable Linux bridge compatibility module and daemon
Options for "start", "force-reload-kmod", "load-kmod", "status", and "version":
--brcompat enable Linux bridge compatibility module and daemon