After filing the report, I noticed other errors.  With the attached
patch applied, I was able to run the following commands:

opcontrol --list-events
opcontrol --event CPU_CLK_UNHALTED:90000:0:1:1
opcontrol --reset
opcontrol --start
opcontrol --stop

Best regards,

        Marko
--- /usr/bin/opcontrol.orig     2006-09-22 07:08:59.000000000 +0300
+++ /usr/bin/opcontrol  2006-10-24 15:38:33.000000000 +0300
@@ -316,7 +316,7 @@ do_save_setup()
        >$SETUP_FILE
 
        if test "$NR_CHOSEN" != "0"; then
-               for f in `seq 0 $((NR_CHOSEN - 1))`; do
+               for f in `seq 0 $(($NR_CHOSEN - 1))`; do
                        get_event $f
                        echo "CHOSEN_EVENTS_${f}=$GOTEVENT" >>$SETUP_FILE
                done
@@ -537,7 +537,7 @@ verify_counters()
        OPHELP_ARGS=
 
        if test "$NR_CHOSEN" != 0; then
-               for f in `seq 0 $((NR_CHOSEN - 1))`; do
+               for f in `seq 0 $(($NR_CHOSEN - 1))`; do
                        get_event $f
                        if test "$GOTEVENT" != ""; then
                                OPHELP_ARGS="$OPHELP_ARGS $GOTEVENT"
@@ -559,7 +559,7 @@ normalise_events()
                return
        fi
 
-       for f in `seq 0 $((NR_CHOSEN - 1))`; do
+       for f in `seq 0 $(($NR_CHOSEN - 1))`; do
                get_event $f
                if test "$GOTEVENT" != ""; then
                        EVENT=`echo $GOTEVENT | awk -F: '{print $1}'`
@@ -1106,7 +1106,7 @@ do_param_setup()
        verify_counters
 
        OPROFILED_EVENTS=
-       for f in `seq 0 $((NR_CHOSEN - 1))`; do
+       for f in `seq 0 $(($NR_CHOSEN - 1))`; do
                get_event $f
                if test "$GOTEVENT" != ""; then
                        EVENT=`echo $GOTEVENT | awk -F: '{print $1}'`
@@ -1119,7 +1119,7 @@ do_param_setup()
                        UNIT_MASK=`echo $GOTEVENT | awk -F: '{print $3}'`
                        KERNEL=`echo $GOTEVENT | awk -F: '{print $4}'`
                        USER=`echo $GOTEVENT | awk -F: '{print $5}'`
-                       CTR=`echo $HW_CTRS | awk "{print \\$$((f + 1))}"`
+                       CTR=`echo $HW_CTRS | awk "{print \\$$(($f + 1))}"`
 
                        if test "$EVENT" = "RTC_INTERRUPTS"; then
                                set_param rtc_value $COUNT
@@ -1127,7 +1127,7 @@ do_param_setup()
                        else
                                set_ctr_param $CTR enabled 1                    
        
                                set_ctr_param $CTR event $EVENT_VAL
-                               let loop_count=1
+                               loop_count=1
                                for i in ${EVENT_STR}; do
                                        #Skip first argument of EVENT_STR 
(event val) since we've already
                                        #processed that value.
@@ -1136,7 +1136,7 @@ do_param_setup()
                                                VAL=`echo $i | awk -F: '{print 
$2}'`
                                                set_ctr_param "" $KEY $VAL
                                        fi
-                                       let loop_count="$loop_count"+1
+                                       loop_count="$loop_count"+1
                                done                            
                                set_ctr_param $CTR count $COUNT
                                set_ctr_param $CTR kernel $KERNEL
@@ -1238,7 +1238,7 @@ do_status()
        fi
 
        if test "$NR_CHOSEN" != "0"; then
-               for f in `seq 0 $((NR_CHOSEN - 1))`; do
+               for f in `seq 0 $(($NR_CHOSEN - 1))`; do
                        get_event $f
                        echo "Event $f: $GOTEVENT"
                done

Reply via email to