Skip to content

Commit 755b00d

Browse files
committed
realtime.in: Format script
1 parent 44ab472 commit 755b00d

1 file changed

Lines changed: 134 additions & 122 deletions

File tree

scripts/realtime.in

Lines changed: 134 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,17 @@ CheckKernel() {
2626
# Shellcheck doesn't know about substitution
2727
# shellcheck disable=SC2194
2828
case "@KERNEL_VERS@" in
29-
"") ;;
29+
"")
30+
;;
3031
*)
31-
if [ "$(uname -r)" != "@KERNEL_VERS@" ]; then
32-
cat 1>&2 << EOF
32+
if [ "$(uname -r)" != "@KERNEL_VERS@" ]; then
33+
cat 1>&2 << EOF
3334
RTAPI requires the real-time kernel @KERNEL_VERS@ to run. Before running
3435
this realtime application, reboot and choose this kernel at the boot menu.
3536
EOF
36-
exit 1
37-
fi
37+
exit 1
38+
fi
39+
;;
3840
esac
3941
}
4042

@@ -71,8 +73,8 @@ CheckConfig(){
7173
fi
7274
fi
7375
if [ -z "$RTAPICONF" ] ; then
74-
echo "Missing rtapi.conf. Check your installation." 1>&2
75-
exit 1
76+
echo "Missing rtapi.conf. Check your installation." 1>&2
77+
exit 1
7678
fi
7779
INSMOD="@INSMOD@"
7880
RMMOD="@RMMOD@"
@@ -94,7 +96,9 @@ CheckConfig(){
9496
MODULES_LOAD=
9597
MODULES_UNLOAD=
9698
case $RTPREFIX in
97-
uspace) SHM_DEV=/dev/zero;;
99+
uspace)
100+
SHM_DEV=/dev/zero
101+
;;
98102
esac
99103
for MOD in $MODULES ; do
100104
eval MOD=\${MODPATH_"$MOD"}
@@ -108,81 +112,85 @@ CheckConfig(){
108112
MODULES_UNLOAD="$MOD $MODULES_UNLOAD"
109113
done
110114
case $RTPREFIX in
111-
(*rtai*)
112-
MODULES_LOAD="$MODULES_LOAD $RTLIB_DIR/rtapi$MODULE_EXT $RTLIB_DIR/hal_lib$MODULE_EXT"
113-
MODULES_UNLOAD="hal_lib rtapi $MODULES_UNLOAD"
114-
SHM_DEV=/dev/rtai_shm
115-
;;
116-
(*)
117-
MODULES_UNLOAD=
115+
*rtai*)
116+
MODULES_LOAD="$MODULES_LOAD $RTLIB_DIR/rtapi$MODULE_EXT $RTLIB_DIR/hal_lib$MODULE_EXT"
117+
MODULES_UNLOAD="hal_lib rtapi $MODULES_UNLOAD"
118+
SHM_DEV=/dev/rtai_shm
119+
;;
120+
*)
121+
MODULES_UNLOAD=
122+
;;
118123
esac
119124
}
120125

121126
CheckStatus(){
122127
case $RTPREFIX in
123-
uspace)
124-
if [ -z "$($PS -o stat= -o comm= -C rtapi_app | $GREP -v '^Z')" ]; then
125-
echo rtapi_app is not running
126-
return 1
127-
else
128-
echo rtapi_app is running
129-
return 0
130-
fi ;;
131-
*)
132-
# check loaded/unloaded status of modules
133-
unset NOTLOADED
134-
for MOD in $MODULES_UNLOAD ; do
135-
if "$LSMOD" | awk '{print $1}' | $GREP -x "$MOD" >/dev/null ; then
136-
echo "$MOD is loaded"
128+
uspace)
129+
if [ -z "$($PS -o stat= -o comm= -C rtapi_app | $GREP -v '^Z')" ]; then
130+
echo rtapi_app is not running
131+
return 1
137132
else
138-
echo "$MOD is not loaded"
139-
NOTLOADED=NOT
133+
echo rtapi_app is running
134+
return 0
140135
fi
141-
done
142-
if [ -z "$NOTLOADED" ]; then
143-
return 0
144-
else
145-
return 1
146-
fi
136+
;;
137+
*)
138+
# check loaded/unloaded status of modules
139+
unset NOTLOADED
140+
for MOD in $MODULES_UNLOAD ; do
141+
if "$LSMOD" | awk '{print $1}' | $GREP -x "$MOD" >/dev/null ; then
142+
echo "$MOD is loaded"
143+
else
144+
echo "$MOD is not loaded"
145+
NOTLOADED=NOT
146+
fi
147+
done
148+
if [ -z "$NOTLOADED" ]; then
149+
return 0
150+
else
151+
return 1
152+
fi
153+
;;
147154
esac
148155
}
149156

150157
CheckMem(){
151158
# check for user space processes using shared memory
152159
if [ -e /dev/mbuff ] ; then
153-
# device file exists, check for processes using it
154-
if $FUSER -s /dev/mbuff 2>/dev/null; then
155-
# at least one process is using it
156-
echo "ERROR: Can't remove RTLinux modules, kill the following process(es) first"
157-
$FUSER -v /dev/mbuff
158-
exit 1
159-
fi
160+
# device file exists, check for processes using it
161+
if $FUSER -s /dev/mbuff 2>/dev/null; then
162+
# at least one process is using it
163+
echo "ERROR: Can't remove RTLinux modules, kill the following process(es) first"
164+
$FUSER -v /dev/mbuff
165+
exit 1
166+
fi
160167
elif [ -e /dev/rtai_shm ] ; then
161-
# device file exists, check for processes using it
162-
if $FUSER -s /dev/rtai_shm 2>/dev/null; then
163-
# at least one process is using it
164-
echo "ERROR: Can't remove RTAI modules, kill the following process(es) first"
165-
$FUSER -v /dev/rtai_shm
166-
exit 1
167-
fi
168+
# device file exists, check for processes using it
169+
if $FUSER -s /dev/rtai_shm 2>/dev/null; then
170+
# at least one process is using it
171+
echo "ERROR: Can't remove RTAI modules, kill the following process(es) first"
172+
$FUSER -v /dev/rtai_shm
173+
exit 1
174+
fi
168175
fi
169176
}
170177

171178
Load(){
172179
CheckKernel
173180
case $RTPREFIX in
174-
uspace)
175-
rtapi_app start
176-
;;
177-
(*rtai*)
178-
for MOD in $MODULES_LOAD ; do
179-
if ! [ -d "/sys/module/$(basename "$MOD" .ko)" ]; then
180-
$INSMOD "$MOD" || return $?
181-
fi
182-
done
183-
if [ "$DEBUG" != "" ] && [ -w /proc/rtapi/debug ] ; then
184-
echo "$DEBUG" > /proc/rtapi/debug
185-
fi
181+
uspace)
182+
rtapi_app start
183+
;;
184+
*rtai*)
185+
for MOD in $MODULES_LOAD ; do
186+
if ! [ -d "/sys/module/$(basename "$MOD" .ko)" ]; then
187+
$INSMOD "$MOD" || return $?
188+
fi
189+
done
190+
if [ "$DEBUG" != "" ] && [ -w /proc/rtapi/debug ] ; then
191+
echo "$DEBUG" > /proc/rtapi/debug
192+
fi
193+
;;
186194
esac
187195
}
188196

@@ -202,29 +210,32 @@ CheckLoaded(){
202210

203211
Unload(){
204212
CheckKernel
213+
205214
case $RTPREFIX in
206-
uspace)
207-
rtapi_app exit
215+
uspace)
216+
rtapi_app exit
208217

209-
# wait 5 seconds for rtapi_app to die and be reaped by its parent
210-
START=$SECONDS
211-
local NPROCS
212-
while [ 5 -gt $((SECONDS-START)) ]; do
218+
# wait 5 seconds for rtapi_app to die and be reaped by its parent
219+
START=$SECONDS
220+
local NPROCS
221+
while [ 5 -gt $((SECONDS-START)) ]; do
222+
NPROCS=$(ps -C rtapi_app -o stat= -o comm= | $GREP -v '^Z' | wc -l)
223+
if [ "$NPROCS" -eq 0 ]; then
224+
break
225+
fi
226+
sleep 0.1
227+
done
213228
NPROCS=$(ps -C rtapi_app -o stat= -o comm= | $GREP -v '^Z' | wc -l)
214-
if [ "$NPROCS" -eq 0 ]; then
215-
break
229+
if [ "$NPROCS" -gt 0 ]; then
230+
echo "ERROR: rtapi_app failed to die" 1>&2
216231
fi
217-
sleep 0.1
218-
done
219-
NPROCS=$(ps -C rtapi_app -o stat= -o comm= | $GREP -v '^Z' | wc -l)
220-
if [ "$NPROCS" -gt 0 ]; then
221-
echo "ERROR: rtapi_app failed to die" 1>&2
222-
fi
223232

224-
ipcrm -M 0x48414c32 2>/dev/null ;# HAL_KEY
225-
ipcrm -M 0x90280A48 2>/dev/null ;# RTAPI_KEY
226-
ipcrm -M 0x48484c34 2>/dev/null ;# UUID_KEY
233+
ipcrm -M 0x48414c32 2>/dev/null ;# HAL_KEY
234+
ipcrm -M 0x90280A48 2>/dev/null ;# RTAPI_KEY
235+
ipcrm -M 0x48484c34 2>/dev/null ;# UUID_KEY
236+
;;
227237
esac
238+
228239
for module in $MODULES_UNLOAD ; do
229240
$RMMOD "$module"
230241
done
@@ -233,12 +244,13 @@ Unload(){
233244
Verify(){
234245
HAS_REALTIME=false
235246
case $RTPREFIX in
236-
uspace)
237-
rtapi_app check_rt && HAS_REALTIME=true
238-
;;
239-
(*rtai*)
240-
echo "RTAI"
241-
HAS_REALTIME=true
247+
uspace)
248+
rtapi_app check_rt && HAS_REALTIME=true
249+
;;
250+
*rtai*)
251+
echo "RTAI"
252+
HAS_REALTIME=true
253+
;;
242254
esac
243255

244256
if [ $HAS_REALTIME = true ]; then
@@ -252,50 +264,50 @@ CheckUnloaded(){
252264
# checks to see if all modules were unloaded
253265
STATUS=
254266
for module in $MODULES_UNLOAD ; do
255-
# check to see if the module is installed
256-
if "$LSMOD" | awk '{print $1}' | $GREP -x "$module" >/dev/null ; then
257-
echo "ERROR: Could not unload '$module'"
258-
STATUS=error
259-
fi
267+
# check to see if the module is installed
268+
if "$LSMOD" | awk '{print $1}' | $GREP -x "$module" >/dev/null ; then
269+
echo "ERROR: Could not unload '$module'"
270+
STATUS=error
271+
fi
260272
done
261273
if [ -n "$STATUS" ] ; then
262-
exit 1
274+
exit 1
263275
fi
264276
}
265277

266278
CMD=$1
267279

268280
case "$CMD" in
269-
start|load)
270-
CheckConfig
271-
Load || exit $?
272-
CheckLoaded
273-
;;
274-
restart|force-reload)
275-
CheckConfig
276-
CheckMem
277-
Unload
278-
CheckUnloaded
279-
Load || exit $?
280-
CheckLoaded
281-
;;
282-
stop|unload)
283-
CheckConfig
284-
CheckMem
285-
Unload || exit $?
286-
;;
287-
status)
288-
CheckConfig
289-
CheckStatus || exit $?
290-
;;
291-
verify)
292-
CheckConfig
293-
Verify || exit $?
294-
;;
295-
*)
296-
echo "Usage: $0 {start|load|stop|unload|restart|force-reload|status|verify}" >&2
297-
exit 1
298-
;;
281+
start|load)
282+
CheckConfig
283+
Load || exit $?
284+
CheckLoaded
285+
;;
286+
restart|force-reload)
287+
CheckConfig
288+
CheckMem
289+
Unload
290+
CheckUnloaded
291+
Load || exit $?
292+
CheckLoaded
293+
;;
294+
stop|unload)
295+
CheckConfig
296+
CheckMem
297+
Unload || exit $?
298+
;;
299+
status)
300+
CheckConfig
301+
CheckStatus || exit $?
302+
;;
303+
verify)
304+
CheckConfig
305+
Verify || exit $?
306+
;;
307+
*)
308+
echo "Usage: $0 {start|load|stop|unload|restart|force-reload|status|verify}" >&2
309+
exit 1
310+
;;
299311
esac
300312

301313
exit 0

0 commit comments

Comments
 (0)