Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
wiki:scripts_and_tools [2012/04/30 18:07] – sfz to hydrogen emrumwiki:scripts_and_tools [2012/05/10 00:00] – [save and restore irq process priorities] emrum
Line 397: Line 397:
   * ardour3 + video patch   * ardour3 + video patch
  
 +\\
 \\ \\
 +
 +
 +==== JACKdbus - Desktop integration - backend-switching ====
 +  * [[http://gareus.org/blog/jack2dbus| jack2 backend switching ]]
 +  * [[http://gareus.org/wiki/jack2contol|jack2 dbus control ]]
  
 \\ \\
 +\\
 +
 +==== save and restore irq process priorities ====
 +\\
 +<code bash>
 +
 +#!/bin/bash
 +#
 +# rtirq_power: save and restore irq process priorities
 +#
 +# This script is called when a change in power status happens, when
 +# suspending it saves a list of all irq process priorities, when
 +# resuming it changes the priorities of the proper irq processes
 +# to the saved values
 +#
 +# Copyright (c) 2012 Fernando Lopez-Lezcano
 +#
 +#   This program is free software; you can redistribute it and/or
 +#   modify it under the terms of the GNU General Public License
 +#   as published by the Free Software Foundation; either version 2
 +#   of the License, or (at your option) any later version.
 +#
 +#   This program is distributed in the hope that it will be useful,
 +#   but WITHOUT ANY WARRANTY; without even the implied warranty of
 +#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 +#   GNU General Public License for more details.
 +#
 +#   You should have received a copy of the GNU General Public License along
 +#   with this program; if not, write to the Free Software Foundation, Inc.,
 +#   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 +
 +. "${PM_FUNCTIONS}"
 +
 +case $1 in
 +    hibernate|suspend)
 + /bin/ps -eo rtprio=,comm= --sort -rtprio | /bin/egrep ' irq/[0-9]*' | savestate rtirq
 +        ;;
 +    thaw|resume)
 + restorestate rtirq | while read IRQPRIO IRQCOMM ; do
 +     if [ -n "${IRQPRIO}" -a -n "${IRQCOMM}" ] ; then
 + IRQPID=`/bin/ps -e -o pid,comm | grep " ${IRQCOMM}" | awk '{print $1}'`
 + if [ -n "${IRQPID}" ] ; then
 +     PRIO=`/bin/ps -p ${IRQPID} -o rtprio=`
 +     if [ ${PRIO} -ne ${IRQPRIO} ] ; then
 + /usr/bin/chrt -f -p ${IRQPRIO} ${IRQPID}
 +     fi
 + fi
 +     fi
 + done
 +        ;;
 +    *) exit $NA
 +        ;;
 +esac
 +
 +
 +</code>
 +
 +\\
 +<quote>
 +
 +A first try at using a pm-utils script. This script saves the priority state of all irq* processes and restores them after a resume. It only restores the priority for processes that still exist after the resume, and will do nothing for new processes (ie: you plugin a usb card while the computer is sleeping). That would be taken care by my previously posted udev script which would change priority of newly inserted soundcards. I put 05rtirq it in /etc/pm/sleep.d/ directory... it seems to be working fine in my laptop.
 +
 +</quote>
 +\\
 +\\
 +\\
 +\\
 +
  
  
wiki/scripts_and_tools.txt · Last modified: 2017/12/03 12:22 by nilsge