Skip to content

Day24 - Hybrid Mode Stress Test

Objective

Validate:

  • Polling behavior
  • IRQ behavior
  • Hybrid mode switching
  • Race condition stability

Environment

  • Raspberry Pi 5
  • hwmon interface

Example path:

/sys/class/hwmon/hwmonX/

Test Script

#!/bin/bash

HWMON=$1

POLL="$HWMON/polling_enable"
IRQ="$HWMON/irq_enable"
STATUS="$HWMON/debug_status"

echo "[INFO] Start hybrid stress test"

# Test 1: mode switching
echo "[TEST] mode switching"

echo 0 > $POLL
echo 0 > $IRQ
sleep 1
cat $STATUS

echo 1 > $POLL
sleep 1
cat $STATUS

echo 0 > $POLL
echo 1 > $IRQ
sleep 1
cat $STATUS

echo 1 > $POLL
echo 1 > $IRQ
sleep 1
cat $STATUS

# Test 2: rapid toggle
echo "[TEST] rapid toggle"

for i in {1..20}; do
    echo 1 > $POLL
    sleep 0.2
    echo 0 > $POLL
    sleep 0.2
done

cat $STATUS

# Test 3: hybrid stress
echo "[TEST] hybrid stress"

for i in {1..30}; do
    echo 1 > $POLL
    echo 1 > $IRQ
    sleep 0.2

    echo 0 > $POLL
    sleep 0.2

    echo 1 > $POLL
    echo 0 > $IRQ
    sleep 0.2
done

cat $STATUS

echo "[DONE]"

Verification Checklist

  • polling_enable=0 → poll_count stops
  • irq_enable=0 → irq_count stops
  • mode reflects configuration
  • last_source is reasonable
  • no kernel crash or hang