From df0e4fadd832220f5556fc3c4e9e70669e1e7048 Mon Sep 17 00:00:00 2001 From: fuzzle <jens@viisauksena.de> Date: Tue, 27 Sep 2016 04:38:15 +0200 Subject: [PATCH] add emergency script which reload after 10 minutes without batctl gw --- files/lib/gluon/ssid-changer/emergency.sh | 34 +++++++++++++++++++++++ files/usr/lib/micron.d/emergency | 1 + files/usr/lib/micron.d/ssid-changer | 1 - 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100755 files/lib/gluon/ssid-changer/emergency.sh create mode 100755 files/usr/lib/micron.d/emergency mode change 100644 => 100755 files/usr/lib/micron.d/ssid-changer diff --git a/files/lib/gluon/ssid-changer/emergency.sh b/files/lib/gluon/ssid-changer/emergency.sh new file mode 100755 index 0000000..4e9a8e7 --- /dev/null +++ b/files/lib/gluon/ssid-changer/emergency.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +# set some sysctl +sysctl -w vm.panic_on_oom=0 # deact reboot on oom +sysctl -w kernel.panic=80 # 80s after panic reboot +sysctl -w vm.overcommit_memory=2 # calc if enough mem is avail mmaloc + +# raise prob. of proc to kill +# echo 10 > /proc/$(cat /var/run/fastd.mesh_vpn.pid)/oom_adj # deprecated +echo 700 > /proc/$(pgrep fastd)/oom_score_adj # fastd +echo 900 > /proc/$(pgrep ntp)/oom_score_adj # ntp +echo 950 > /proc/$(pgrep /usr/sbin/batadv-vis)/oom_score_adj # batvis + +# if we see bat GW just exit +netz=$(batctl gwl -H|wc -l) +if [ $netz -ne 0 ] ; then + logger "emergency found network, exiting" + echo 0 > /tmp/emergency + exit 0 +fi + +# see ath9k for stopped +# cat /sys/kernel/debug/ieee80211/phy0/ath9k/queues + +# simple counter +touch /tmp/emergency +counter=$(cat /tmp/emergency) +if [ -z $counter ] ; then counter=0 ; fi +if [ $counter -lt 10 ] + then let counter+=1; echo $counter > /tmp/emergency + else reboot +fi +echo $counter + diff --git a/files/usr/lib/micron.d/emergency b/files/usr/lib/micron.d/emergency new file mode 100755 index 0000000..fe138ed --- /dev/null +++ b/files/usr/lib/micron.d/emergency @@ -0,0 +1 @@ +* * * * * /lib/gluon/ssid-changer/emergency.sh diff --git a/files/usr/lib/micron.d/ssid-changer b/files/usr/lib/micron.d/ssid-changer old mode 100644 new mode 100755 index 92f3c21..e3a99fa --- a/files/usr/lib/micron.d/ssid-changer +++ b/files/usr/lib/micron.d/ssid-changer @@ -1,2 +1 @@ * * * * * /lib/gluon/ssid-changer/ssid-changer.sh - -- GitLab