diff options
| author | Simon Horman <horms@verge.net.au> | 2011-09-10 15:09:31 +0900 |
|---|---|---|
| committer | Ben Pfaff <blp@nicira.com> | 2011-09-12 09:31:18 -0700 |
| commit | 64624b3cf405d0ca089fe978898896087337cb90 (patch) | |
| tree | a946b7049b1309a48bc617cf40ac65b8af3657c5 /debian/openvswitch-switch.postinst | |
| parent | 40a751774f4255d7b6af699547d72e823c0be1e1 (diff) | |
| download | openvswitch-64624b3cf405d0ca089fe978898896087337cb90.tar.gz | |
Debian: fail gracefully if modules can't be loaded on install
By registering an error-handler for the init script used
in openvswitch-switch.postinst and detecting if module insertion fails,
it is possible to avoid failure to install in the case where the
openvswitch_mod module is not available.
This is done without altering the behaviour that the start target
of the openvswitch-switch init script will fail if module insertion fails.
This patch also adds a friendly hint as as to why starting
openvswitch-switch has failed if it is due to failure to insert
the openvswtich_mod. This message is displayed as necessary both
on package install and other calls to the start target of the
init script.
[Ben Pfaff fixed up == to = in postinst]
Diffstat (limited to 'debian/openvswitch-switch.postinst')
| -rwxr-xr-x | debian/openvswitch-switch.postinst | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/debian/openvswitch-switch.postinst b/debian/openvswitch-switch.postinst index 74b52ba90..c50853a11 100755 --- a/debian/openvswitch-switch.postinst +++ b/debian/openvswitch-switch.postinst @@ -44,6 +44,23 @@ case "$1" in ;; esac +HAVE_KMOD="no" + +init_script_error () { + if test X"$HAVE_KMOD" = Xno; then + exit 0 + fi + exit 1 +} + +# Do not fail package installation just because the kernel module +# is not available. +if test -x /etc/init.d/openvswitch-switch; then + if invoke-rc.d openvswitch-switch load-kmod; then + HAVE_KMOD="yes" + fi +fi + #DEBHELPER# exit 0 |
