You are not logged in.
Pages: 1
I am enjoying my Arch experience so far, with some minor exceptions.
-I am unable to get screen blanking to work using the fn+f3 key. Probably an easy fix, but I haven't found a solution.
-When I suspend to ram (fn+f4), and resume, the sound no longer works. On my previous install using ubuntu, a file was available to allow specifying modules that needed to be reloaded on resume. I simply put my sound module in this file, and sound was restored (it also forced all apps using sound to quit.) Is there an Arch way of doing this? Also, suspend to ram stops working randomly. I haven't determined what causes that.
-Haven't been able to get hiberation working after installing kernel26suspend2. Haven't spent much time beyond doing what the wiki said and browsing these forums. This may be an issue for another topic.
Last edited by webbrewer (2007-07-11 00:11:10)
Offline
Hi webbrewer, welcome to Arch Linux
Have you looked at http://thinkwiki.org? This is a wonderful site for running linux on thinkpads, it has a lot of useful information.
Are you using hibernate-script? It's configuration has a place to list all the modules and services you need to restart.
Start here, and come back if you get stuck
Good luck!
Offline
The hibernate scripts seem to be my solution. Now, how do I execute hibernate from my fn keys?
Offline
The Ubuntu install on thinkwiki (http://www.thinkwiki.org/wiki/Installin … er-Suspend) details which modules need to be reloaded on suspend. So I added these (sb uart401 sound soundcore maestro cs4281 snd-cs46xx) to the /etc/hibernate/blacklisted-modules file. When I run hibernate, it reponds with:
Some modules failed to unload: snd_cs46xx snd_rawmidi snd_ac97_codec snd_seq_device snd_pcm snd_timer snd soundcore
hibernate: Aborting suspend due to errors in ModulesUnloadBlacklist (use --force to override).
Offline
[root@stifflers-laptop hibernate]# lsmod
Module Size Used by
ath_pci 88224 0
button 6288 0
psmouse 35080 0
wlan_wep 6272 1
ipv6 252992 8
irtty_sir 5632 0
sir_dev 11268 1 irtty_sir
pcmcia 31404 0
ppdev 7428 0
lp 9220 0
rtc_sysfs 3840 0
rtc_proc 3844 0
nsc_ircc 16016 0
rtc_dev 6792 0
irda 113848 2 sir_dev,nsc_ircc
crc_ccitt 2304 1 irda
parport_pc 35940 1
parport 31176 3 ppdev,lp,parport_pc
ppp_generic 23572 0
serio_raw 5636 0
rtc_cmos 7188 0
rtc_core 7684 4 rtc_sysfs,rtc_proc,rtc_dev,rtc_cmos
rtc_lib 3456 2 rtc_sysfs,rtc_core
uhci_hcd 22032 0
i2c_piix4 7820 0
i2c_core 17664 1 i2c_piix4
wlan_scan_sta 12416 1
ath_rate_sample 12160 1
pcspkr 2944 0
intel_agp 21404 1
shpchp 29332 0
pci_hotplug 27720 1 shpchp
yenta_socket 23308 3
rsrc_nonstatic 11136 1 yenta_socket
pcmcia_core 32920 3 pcmcia,yenta_socket,rsrc_nonstatic
agpgart 27608 1 intel_agp
sg 26780 0
tsdev 6464 0
thermal 11656 0
processor 24788 1 thermal
evdev 8192 0
fan 3972 0
battery 8580 0
ac 4100 0
ibm_acpi 28568 0
snd_cs46xx 77768 1
gameport 11784 2 snd_cs46xx
snd_rawmidi 19232 1 snd_cs46xx
snd_ac97_codec 95396 1 snd_cs46xx
snd_seq_device 6796 1 snd_rawmidi
snd_pcm 68484 2 snd_cs46xx,snd_ac97_codec
snd_timer 19076 1 snd_pcm
snd_page_alloc 7816 2 snd_cs46xx,snd_pcm
snd 44388 8 snd_cs46xx,snd_rawmidi,snd_ac97_codec,snd_seq_device,snd_pcm,snd_timer
soundcore 6496 1 snd
ac97_bus 2432 1 snd_ac97_codec
slhc 6272 1 ppp_generic
3c59x 39592 0
mii 4992 1 3c59x
wlan 188740 5 ath_pci,wlan_wep,wlan_scan_sta,ath_rate_sample
ath_hal 190032 3 ath_pci,ath_rate_sample
usbcore 111880 2 uhci_hcd
ext3 118536 1
jbd 54952 1 ext3
mbcache 6916 1 ext3
sr_mod 14372 0
cdrom 34080 1 sr_mod
sd_mod 16640 3
ata_piix 11780 2
ata_generic 5636 0
libata 102036 2 ata_piix,ata_generic
Offline
There's something using those modules, most likely an application, make sure those are turned off. There's a way to kill programs in the hibernate script.
For the buttons, you'll need to configure those through acpid, see: http://thinkwiki.org/wiki/How_to_configure_acpid.
A trick I found is to automatically enable ibm hotkeys using a little hack in modprobe.conf. YMMV, I've got at T30
# Enable experimental featues, and hotkeys in ibm-acpi
# options ibm-acpi experimental=1
install ibm-acpi /sbin/modprobe --ignore-install ibm-acpi; \
echo enable > /proc/acpi/ibm/hotkey
Offline
There's something using those modules, most likely an application, make sure those are turned off. There's a way to kill programs in the hibernate script.
I am unable to determine what is using the module. When I exit out of xfce, it works.
Offline
Offline
It seems xfce desktop is using the sound module for some reason. Disabling it allows me to remove that module.
Last edited by webbrewer (2007-07-12 20:43:51)
Offline
The hibernate scripts don't provide a interface for killing applications. In order for my sound apps to be killed and restarted I wrote a daemon based upon the scripts provided from the ubuntu install page on thinkwiki.
#!/bin/bash
# Based on work:
# Copyright (C) 2003 by MandrakeSoft, Chmouel Boudjnah <chmouel@mandrakesoft.com>
# Redistribution of this file is permitted under the terms of the GNU
# Public License (GPL)
. /etc/rc.conf
. /etc/rc.d/functions
SOUND_RUN=/var/run/pm-soundprogs
XMMS_PLAYLIST=/var/run/pm-xmms-playlist.m3u
XMMS_CURRENT=/var/run/pm-xmms-current
case "$1" in
stop)
stat_busy "Killing all sound apps"
rm -rf $SOUND_RUN
for n in `lsof -n|grep /dev|egrep ' (14|116),'|sed -e 's/ \+/|/g'|cut '-d|' -f1-3`; do
SOUNDPID=`echo $n |cut '-d|' -f2`
SOUNDPROG=`ps -p $SOUNDPID -o args=`
SOUNDUSER=`echo $n |cut '-d|' -f3`
if [[ -f $SOUND_RUN ]] && grep -q "$SOUNDPROG.*$SOUNDUSER.*" $SOUND_RUN;then
continue;
fi
SOUNDDISPLAY=`perl -e 's/\000/\n/g;' -p /proc/$SOUNDPID/environ|grep ^DISPLAY=|cut -d= -f2-`
#specific programs here
if [[ $SOUNDPROG == "xmms" ]];then
su --shell="/bin/bash" - "$SOUNDUSER" -c \
'xmms-shell -e currenttrack|cut -d" " -f3|tr /./ " "' > $XMMS_CURRENT
su --shell="/bin/bash" - "$SOUNDUSER" -c \
"xmms-shell -e \"save /tmp/.tmp.xmms.list;fade left 0 1 50000;xmmsquit\"" > $XMMS_PLAYLIST
mv -f /tmp/.tmp.xmms.list $XMMS_PLAYLIST
else
kill $SOUNDPID
ps "$SOUNDPID" &>/dev/null && kill -9 $SOUNDPID
fi
echo "$SOUNDPROG|$SOUNDPID|$SOUNDUSER|$SOUNDDISPLAY" >>$SOUND_RUN
done
stat_done
;;
start)
stat_busy "Restarting all sound apps"
if [[ -f $SOUND_RUN ]];then
# at least we can restart the programs using sound on
# the right display
for n in `cat $SOUND_RUN`; do
SOUNDPROG=`echo $n|cut '-d|' -f1`
SOUNDPID=`echo $n|cut '-d|' -f2`
SOUNDUSER=`echo $n|cut '-d|' -f3`
SOUNDDISPLAY=`echo $n|cut '-d|' -f4`
if [[ $SOUNDPROG == "xmms" ]];then
CURRENT=$(cat $XMMS_CURRENT)
su --shell="/bin/bash" - "$SOUNDUSER" -c \
"source ~/.bashrc;[ -f ~/.bash_profile ] && source ~/.bash_profile;export DISPLAY=\"$SOUNDDISPLAY\"; xmms $XMMS_PLAYLIST &"
su --shell="/bin/bash" - "$SOUNDUSER" -c \
"source ~/.bashrc;[ -f ~/.bash_profile ] && source ~/.bash_profile;export DISPLAY=\"$SOUNDDISPLAY\"; xmms-shell -e \"jump $CURRENT;play\" >/dev/null 2>/dev/null"
else
su --shell="/bin/bash" - "$SOUNDUSER" -c \
"source /etc/profile;[ -f ~/.bashrc ] && \
source ~/.bashrc;[ -f ~/.bash_profile ] && \
source ~/.bash_profile;export DISPLAY="$SOUNDDISPLAY";$SOUNDPROG &"
fi
done
rm -f $SOUND_RUN $XMMS_PLAYLIST $XMMS_CURRENT
fi
stat_done
;;
*)
usage $0 "{stop|start}"
esac
I couldn't, however get the hibernate scripts to work for me. It went into this eternal loop of suspending every time I resumed. Rather than trying to troubleshoot this, I simplified by writing a my own suspend-to-ram script, and attaching it to my acpi handler.
#!/bin/bash
/etc/rc.d/alsa stop
/etc/rc.d/sound-apps stop
/sbin/rmmod snd-cs46xx
echo -n "mem" > /sys/power/state
/sbin/modprobe snd-cs46xx
/etc/rc.d/sound-apps start
/etc/rc.d/alsa start
I would like to get hhibernation working at some point, but I am content for now. Thanks for your help!
Offline
A new problem as arisen (or perhaps overlooked before): After resuming from suspend to ram, the thinkpad fn keys no longer work. I tried restarting acpid and I verified that the cat /proc/acpi/ibm/hotkey is still enabled.
Also, my solution that I posted doesn't work with the standard arch kernel, only the suspend2 kernel, despite not being able to get suspend2 to work reliably (hibernate doesn't die after resuming, and when I kill it, to returns to suspend.) Intriguing...hmmm...
Offline
Ok, disregard most things on this thread. I tried using apm instead of acpi, as detailed in the thinkwiki apm page, and now everything works flawlessly. I did need to modify /etc/apm_proxy to start and stop the sound module, but now I am very pleased with my system (I almost retreated to xubuntu...)
I am thinking about starting a T20 on ARCH page on thinkwiki, anyone else have info to contribute?
Offline
Pages: 1