#/bin/sh

# All available IRQs
IRQS=`grep '^ *[0-9]*:' /proc/interrupts |sed 's/^ *\([0-9]*\):.*/\1/'`

for irq in ${IRQS}
do
  HW=`grep "^ *${irq}:" /proc/interrupts |sed 's/.*\] *\(.*\)$/\1/'`
  PID=`pidof "IRQ ${irq}"`

  if test "${PID}"
  then
    PRI_TEXT=`chrt -p ${PID}`
    POLICY=`echo "${PRI_TEXT}"|sed 's/.*:\(.*\)$/\1/'`
    PRI=`echo $POLICY`
  else
    PRI="-- unknown --"
  fi

  printf "IRQ %2u: %13s (%s)\n" ${irq} "${PRI}" "${HW}"
done

