Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
ACPI/bootmisc borked after baselayout update [partial fixed]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
icantux
Tux's lil' helper
Tux's lil' helper


Joined: 25 Sep 2005
Posts: 122

PostPosted: Tue Oct 04, 2005 7:23 pm    Post subject: ACPI/bootmisc borked after baselayout update [partial fixed] Reply with quote

(wasn't sure where to post this, but since it could be kernel-related I started the thread here!)

Hello gentoo-ers! :D

Need some advice on getting my laptop back into running order.

Issues:
1- fan and cpu/batt/gpu temp sensors gone after baselayout update!!
2- bootmisc is an empty file after baselayout udpate!!
3- ibm-acpi is no longer functional either!

Background: wifi installation ... uncalled-for baselayout update fubar-ed everything!
I'm running an IBM T42 and installed Gentoo last week without many problems. I'm tackling one piece of hardware at a time to get everything on my laptop running right. Yesterday was a day for Wifi! I did like this:
Code:

# emerge ipw2200 ipw2200-firmware


Everything emerged well, in fact I was surprised to see 5 packages emerging instead of just the two. After the emerge I did a etc-update as requested without really reading the warnings (I already kicked myself a few times for that). Thing is none of the config files were backed up either!!

Result:
Well, lo and behold, on re-boot I have three problems now:
1- fan and temp no longer existent in /proc/acpi .... the folders are there, but nothing inside
2- my bootmisc (/etc/init.d) is an empty file. I get ERRORs on bootup
3- ibm-acpi is no longer functional at all - fn keys (like sleep fn-F3) are non-responsive

I need some help with the fan/thermal and ibm-acpi issues. Not quite sure where to start. I looked through the various conf files but can't find anything wrong (except for fan and thermal being empty folders in /proc/acpi)

Here's what I did so far

1) fan/temp issue:
I re-emerged "acpid" and ibm-acpi after I noticed this whole ACPI-related problem. No change!

I still can't get the fan and temp stuff working again. Recompiled the kernel and all and still nothing. My ACPI is built into the kernel (*) - not modules like so:
Code:

# Power management options (ACPI, APM)
#
CONFIG_PM=y
# CONFIG_PM_DEBUG is not set
# CONFIG_SOFTWARE_SUSPEND is not set

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_VIDEO=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_ASUS is not set
CONFIG_ACPI_IBM=m
CONFIG_ACPI_TOSHIBA=m
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_BUS=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=m



2) /etc/init.d/bootmisc issue:
Regarding /etc/init.d/bootmisc can I replace that file with a generic file (or was it somehow tweaked with the installation of other packages over time?)


... bad, bad baselayout!!


Last edited by icantux on Wed Oct 05, 2005 3:04 pm; edited 1 time in total
Back to top
View user's profile Send private message
noleti
Apprentice
Apprentice


Joined: 18 Sep 2003
Posts: 153

PostPosted: Tue Oct 04, 2005 9:02 pm    Post subject: Reply with quote

you can see what was emerged together with the ipw-stuff by looking into the /var/log/emerge.log
maybe this helps on localising the error. here's my bootmisc for a start
Code:
#!/sbin/runscript
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

depend() {
        use clock hostname
        need localmount
        before logger
}

start() {
        [[ ${BOOT} != "yes" ]] && return 0

        #
        # Put a nologin file in /etc to prevent people from logging in before
        # system startup is complete.
        #
        if [[ ${DELAYLOGIN} == "yes" ]] ; then
                echo "System bootup in progress - please wait" > /etc/nologin
                cp /etc/nologin /etc/nologin.boot &> /dev/null
        fi

        if [[ -e /etc/sysctl.conf ]] ; then
                ebegin "Configuring kernel parameters"
                /sbin/sysctl -q -p /etc/sysctl.conf
                eend 0
        fi

        if [[ -z ${CDBOOT} ]] && ! touch /var/run/.keep 2> /dev/null ; then
                ewarn "Skipping /var and /tmp initialization (ro root?)"
                return 0
        fi

        if [[ -x /sbin/env-update.sh ]] ; then
                ebegin "Updating environment"
                /sbin/env-update.sh -u > /dev/null
                eend 0
        fi

        #
        # Take care of random stuff [ /var/lock | /var/run | pam ]
        #

        if [[ -d /var/lib/net-scripts/state ]] ; then
                ebegin "Cleaning /var/lib/net-scripts/state"
                rm -rf /var/lib/net-scripts/state/*
                eend 0
        fi

        ebegin "Cleaning /var/lock, /var/run"
        rm -rf /var/run/console.lock /var/run/console/*

        if [[ -z ${CDBOOT} ]] ; then
                #
                # Clean up any stale locks.
                #
                find /var/lock -type f -print0 | xargs -0 rm -f --
                #
                # Clean up /var/run and create /var/run/utmp so that we can login.
                #
                for x in $(find /var/run/ ! -type d ! -name utmp ! -name innd.pid ! -name random-seed) ; do
                        local daemon=${x##*/}
                        daemon=${daemon%*.pid}
                        # Do not remove pidfiles of already running daemons
                        if [[ -z $(ps --no-heading -C "${daemon}") ]] ; then
                                if [[ -f ${x} || -L ${x} ]] ; then
                                        rm -f "${x}"
                                fi
                        fi
                done
        fi

        # Reset pam_console permissions if we are actually using it
        if [[ -x /sbin/pam_console_apply && ! -c /dev/.devfsd && \
              -n $(grep -v -e '^[[:space:]]*#' /etc/pam.d/* | grep 'pam_console') ]] ; then
                /sbin/pam_console_apply -r
        fi

        # Create the .keep to stop portage from removing /var/lock
        > /var/lock/.keep
        eend 0

        #
        # Clean up /tmp directory
        #
        if [[ -z ${CDBOOT} ]] && [[ -d /tmp ]] ; then
                cd /tmp
                if [[ ${WIPE_TMP} == "yes" ]] ; then
                        ebegin "Wiping /tmp directory"
                        # This eval stuff sucks, so if someone has a better *working*
                        # solution, please file a bug at http://bugs.gentoo.org/                        # Originally ripped from Debian init scripts
                        local exceptions="
                                '!' -name . -a
                                '!' '(' -uid 0 -a
                                        '('
                                                -path './lost+found/*' -o
                                                -path './quota.user/*' -o
                                                -path './aquota.user/*' -o
                                                -path './quota.group/*' -o
                                                -path './aquota.group/*' -o
                                                -path './.journal/*'
                                        ')'
                                ')'"
                        # First kill most files, then kill empty dirs
                        eval find . -xdev -depth ${exceptions} ! -type d -print0 | xargs -0 rm -f --
                        eval find . -xdev -depth ${exceptions}   -type d -empty -exec rmdir '{}' \\';'
                        eend 0
                else
                        ebegin "Cleaning /tmp directory"
                        {
                                rm -f /tmp/.X*-lock /tmp/esrv* /tmp/kio* /tmp/jpsock.* /tmp/.fam*
                                rm -rf /tmp/.esd* /tmp/orbit-* /tmp/ssh-* /tmp/ksocket-* /tmp/.*-unix
                                # Make sure our X11 stuff have the correct permissions
                                mkdir -p /tmp/.{ICE,X11}-unix
                                chown 0:0 /tmp/.{ICE,X11}-unix
                                chmod 1777 /tmp/.{ICE,X11}-unix
                                [[ -x /sbin/restorecon ]] && restorecon /tmp/.{ICE,X11}-unix
                        } &> /dev/null
                        eend 0
                fi
        fi

        #
        # Create an 'after-boot' dmesg log
        #
        touch /var/log/dmesg
        chmod 640 /var/log/dmesg
        dmesg > /var/log/dmesg

        #
        # Check for /etc/resolv.conf, and create if missing
        #
        [[ -f /etc/resolv.conf ]] || touch /etc/resolv.conf &> /dev/null
}


# vim:ts=4
Back to top
View user's profile Send private message
icantux
Tux's lil' helper
Tux's lil' helper


Joined: 25 Sep 2005
Posts: 122

PostPosted: Wed Oct 05, 2005 3:03 pm    Post subject: Reply with quote

Ah ... yes!

Thanks very much for the bootmisc file. That worked without a hitch.

Indeed I peeked into the emerge.log file as one of the first efforts at troubleshooting after the problems arose. Didn't show all that much information, except that a package called "baselayout" was installed along with others (all files emerged: ipw2200, ipw2200-firmware, ieee80211, wireless tools, and baselayout). Problem is the etc-update after that emerge. There were some 14 files (conf mostly) that were "updated" and that messed up my gentoo :cry:

Since that fateful emerge I fixed the following by editing the appropriate conf files:
- localhost name was changed to default - changed it back
- fix rc.conf to fix login manager (back to gdm) - setting was changed to default xdm
- fix alsasound and alsa issues (alsaconf seemed to do the trick)
- fix consolefont in init.d (content was missing like bootmisc)
- fix resolv.conf - messed up
- fix /etc/modules.d/aliases - prior entries were auto-removed

.... there were other changes that baselayout made that broke up my ibm-acpi and kernel config.
I tried re-emerging tpb (thinkpad buttons = required for fn keys to work), ibm-acpi and acpid, but no dice. I think I'll remove those packages altogether, then attempt to do it all over again. Thing is I can't really remember how I got it all working happily together. Suspend-to-ram, among other features are quite important to me as I move around a lot.

Anycase, thanks for your help. At least I got the bootmisc back.

status:
partial fix = 1- fan still not showing up in /proc/acpi.... fixed temp sensors by kernel recompile
fixed = 2- my bootmisc (/etc/init.d/bootmisc) was empty - used above code - no problems
3- ibm-acpi is no longer functional at all - fn keys (like sleep fn-F3) are non-responsive
Back to top
View user's profile Send private message
dadodrake
n00b
n00b


Joined: 19 Mar 2005
Posts: 55
Location: Slovakia

PostPosted: Fri Oct 07, 2005 1:15 pm    Post subject: Reply with quote

This is for fn+<F1,2,3...> buttons:
Code:

echo ffff > /proc/acpi/ibm/hotkey
echo enable > /proc/acpi/ibm/hotkey


And for the fan issue I can just tell, that I have a IBM R51 and I never had fan information from acpi.
Back to top
View user's profile Send private message
icantux
Tux's lil' helper
Tux's lil' helper


Joined: 25 Sep 2005
Posts: 122

PostPosted: Fri Oct 07, 2005 11:23 pm    Post subject: Reply with quote

That's enabled. I tried to re-trace my steps in installing tpb, ibm-acpi and acpi to get all those packages to work with each other, but nothing doing. As for the fan I never had fan control, but I did have a fan RPM output through ACPI (built into the kernel). Now, I can't seem to get that to work anymore. This is getting a bit frustrating, but there are many more things to keep setting up on my lappy to keep me ... er.. happy 8O

I might just remove all ACPI, ibm-acpi and tpb instances on my machine and restart to see where that gets me.

Thanks for the thought!

*edit* by the way I'm running kernel-2.6.12-gentoo-r6 stage 3 install - perhaps ACPI support is different in your kernel?
Back to top
View user's profile Send private message
dadodrake
n00b
n00b


Joined: 19 Mar 2005
Posts: 55
Location: Slovakia

PostPosted: Sat Oct 08, 2005 9:17 am    Post subject: Reply with quote

I'm running this: suspend2-sources-2.6.13-r4
This is the relevant part for acpi in my kernel config:
Code:

dano@picard:/usr/src/linux $ grep ACPI .config | grep -E "=y|=m"
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_VIDEO=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_IBM=y
CONFIG_ACPI_BUS=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=y
CONFIG_HOTPLUG_PCI_ACPI=m
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
CONFIG_PNPACPI=y
CONFIG_SERIAL_8250_ACPI=y

I have ibm-acpi module in the kernel. And the buttons are working with acpi_listen. I'm too lazy to write the acpi scripts for it :)
Back to top
View user's profile Send private message
icantux
Tux's lil' helper
Tux's lil' helper


Joined: 25 Sep 2005
Posts: 122

PostPosted: Sat Oct 08, 2005 3:39 pm    Post subject: Reply with quote

hmmm... first thing I noticed is that you use the stock kernel ibm_acpi. If nothing else works, I'll try that next. Didn't know about "acpi_listen" - that may be worthwhile to get things running until I figure out what's wrong with the scripts/config files. Thanks again. Keep you posted.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum