Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  event-mod.tc   Sprache: unbekannt

 
Spracherkennung für: .tc vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

#!/bin/sh
# SPDX-License-Identifier: GPL-2.0
# description: event tracing - enable/disable with module event
# requires: set_event "Can enable module events via: :mod:":README
# flags: instance

rmmod trace-events-sample ||:
if ! modprobe trace-events-sample ; then
  echo "No trace-events sample module - please make CONFIG_SAMPLE_TRACE_EVENTS=m"
  exit_unresolved;
fi
trap "rmmod trace-events-sample" EXIT

# Set events for the module
echo ":mod:trace-events-sample" > set_event

test_all_enabled() {

 # Check if more than one is enabled
 grep -q sample-trace:foo_bar set_event
 grep -q sample-trace:foo_bar_with_cond set_event
 grep -q sample-trace:foo_bar_with_fn set_event

 # All of them should be enabled. Check via the enable file
 val=`cat events/sample-trace/enable`
 if [ $val -ne 1 ]; then
  exit_fail
 fi
}

clear_events() {
 echo > set_event
 val=`cat events/enable`
 if [ "$val" != "0" ]; then
  exit_fail
 fi
 count=`cat set_event | wc -l`
 if [ $count -ne 0 ]; then
  exit_fail
 fi
}

test_all_enabled

echo clear all events
echo 0 > events/enable

echo Confirm the events are disabled
val=`cat events/sample-trace/enable`
if [ $val -ne 0 ]; then
 exit_fail
fi

echo And the set_event file is empty

cnt=`wc -l set_event`
if [ $cnt -ne 0 ]; then
 exit_fail
fi

echo now enable all events
echo 1 > events/enable

echo Confirm the events are enabled again
val=`cat events/sample-trace/enable`
if [ $val -ne 1 ]; then
 exit_fail
fi

echo disable just the module events
echo '!:mod:trace-events-sample' >> set_event

echo Should have mix of events enabled
val=`cat events/enable`
if [ "$val" != "X" ]; then
 exit_fail
fi

echo Confirm the module events are disabled
val=`cat events/sample-trace/enable`
if [ $val -ne 0 ]; then
 exit_fail
fi

echo 0 > events/enable

echo now enable the system events
echo 'sample-trace:mod:trace-events-sample' > set_event

test_all_enabled

echo clear all events
echo 0 > events/enable

echo Confirm the events are disabled
val=`cat events/sample-trace/enable`
if [ $val -ne 0 ]; then
 exit_fail
fi

echo Test enabling foo_bar only
echo 'foo_bar:mod:trace-events-sample' > set_event

grep -q sample-trace:foo_bar set_event

echo make sure nothing is found besides foo_bar
if grep -q -v sample-trace:foo_bar set_event ; then
 exit_fail
fi

echo Append another using the system and event name
echo 'sample-trace:foo_bar_with_cond:mod:trace-events-sample' >> set_event

grep -q sample-trace:foo_bar set_event
grep -q sample-trace:foo_bar_with_cond set_event

count=`cat set_event | wc -l`

if [ $count -ne 2 ]; then
 exit_fail
fi

clear_events

rmmod trace-events-sample

echo ':mod:trace-events-sample' > set_event

echo make sure that the module shows up, and '-' is converted to '_'
grep -q '\*:\*:mod:trace_events_sample' set_event

modprobe trace-events-sample

test_all_enabled

clear_events

rmmod trace-events-sample

echo Enable just the system events
echo 'sample-trace:mod:trace-events-sample' > set_event
grep -q 'sample-trace:mod:trace_events_sample' set_event

modprobe trace-events-sample

test_all_enabled

clear_events

rmmod trace-events-sample

echo Enable event with just event name
echo 'foo_bar:mod:trace-events-sample' > set_event
grep -q 'foo_bar:mod:trace_events_sample' set_event

echo Enable another event with both system and event name
echo 'sample-trace:foo_bar_with_cond:mod:trace-events-sample' >> set_event
grep -q 'sample-trace:foo_bar_with_cond:mod:trace_events_sample' set_event
echo Make sure the other event was still there
grep -q 'foo_bar:mod:trace_events_sample' set_event

modprobe trace-events-sample

echo There should be no :mod: cached events
if grep -q ':mod:' set_event; then
 exit_fail
fi

echo two events should be enabled
count=`cat set_event | wc -l`
if [ $count -ne 2 ]; then
 exit_fail
fi

echo only two events should be enabled
val=`cat events/sample-trace/enable`
if [ "$val" != "X" ]; then
 exit_fail
fi

val=`cat events/sample-trace/foo_bar/enable`
if [ "$val" != "1" ]; then
 exit_fail
fi

val=`cat events/sample-trace/foo_bar_with_cond/enable`
if [ "$val" != "1" ]; then
 exit_fail
fi

clear_trace

[ Dauer der Verarbeitung: 0.35 Sekunden  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge