You are not logged in.
After the latest upgrade, my EeePC is taking an incredibly long time (20+ seconds) at the "Loading Modules" stage of the boot process. I cannot find any error messages, and after the pause, the machine boots normally. This process used to be almost instantantaneous before the upgrade. The modules being loaded are rfkill and eeepc_laptop.
Can anyone help?
Thanks in advance
Last edited by myrlin (2011-06-27 10:28:21)
Offline
if you think its related to the upgrade, at least tell us what packages you upgraded. Everyone does not get the same upgrades at the same time.
Have you changed the rc.conf to the new format? Show us your MODULES array. Are you blacklisting any modules in a .conf file under /etc/modprobe.d?
There's no such thing as a stupid question, but there sure are a lot of inquisitive idiots !
Offline
Thank you for your fast reply, Inxsible.
EDIT: Here is a revised reply to your questions, which contains informationI have just discovered. Please forgive me for the confusion, but this is stretching my level of knowledge.
rc.conf
I have changed the rc.conf to the new format, in an attempt to correct the problem (so it occurred with the old format too)
Blacklisting:
I discovered a file "framebuffer_blacklist.conf" in /etc/modprobe.d. The blacklisted modules are: aty128fb, atyfb, cirrusfb, cyber2000fb, i810fb, kyrofb, neofb, nvidiafb, pm2fb, radeonfb, rivafb, s3fb, savagefb, sisfb, sstfb, tdfxfb, tridentfb, udlfb, uvesafb, viafb, vmlfb, vt8623fb.
Removing this file has no effect on the problem
Module Loading (rc.conf) contains only 2 modules, rfkill and eeepc_ laptop. Removing these (and disabling the daemons) seems to move the delay on to the next stage in the boot process, "Waiting for udev events to be processed"
The output of "lsmod" is very long, so I have not posted it. Please let me know if this is needed, and how I should post it.
Pacman.log
I am embarrassed and ashamed to admit that I have lost my pacman.log file, so I can't tell which packages were upgraded. I know there was an upgarde to the latest kernel, though, if that's any help.
Last edited by myrlin (2011-06-16 16:21:17)
Offline
My 901 sped up considerably under the new approach (admittedly, I had lazily enable mod autoload).
Paste your rc.conf and your blacklist file (the one you created, not the framebuffer one - which you should restore...)
Offline
Hi Jason, thank you for helping me.
Here is my rc.conf:
#
# /etc/rc.conf - Main Configuration for Arch Linux
#
# -----------------------------------------------------------------------
# LOCALIZATION
# -----------------------------------------------------------------------
#
# LOCALE: available languages can be listed with the 'locale -a' command
# DAEMON_LOCALE: If set to 'yes', use $LOCALE as the locale during daemon
# startup and during the boot process. If set to 'no', the C locale is used.
# HARDWARECLOCK: set to "UTC" or "localtime", any other value will result
# in the hardware clock being left untouched (useful for virtualization)
# Note: Using "localtime" is discouraged.
# TIMEZONE: timezones are found in /usr/share/zoneinfo
# KEYMAP: keymaps are found in /usr/share/kbd/keymaps
# CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
# CONSOLEMAP: found in /usr/share/kbd/consoletrans
# USECOLOR: use ANSI color sequences in startup messages
# VERBOSE: Verbose level (from 1 to 8). man 3 syslog for level info
#
LOCALE="en_GB.UTF-8"
DAEMON_LOCALE="no"
HARDWARECLOCK="UTC"
TIMEZONE="Europe/London"
KEYMAP="uk"
CONSOLEFONT=
CONSOLEMAP=
USECOLOR="yes"
VERBOSE="3"
# -----------------------------------------------------------------------
# HARDWARE
# -----------------------------------------------------------------------
#
# MODULES: Modules to load at boot-up. Blacklisting is no longer supported.
# Replace every !module by an entry as on the following line in a file in
# /etc/modprobe.d:
# blacklist module
# See "man modprobe.conf" for details.
#
MOD_AUTOLOAD="yes"
MODULES=(rfkill eeepc_laptop)
# Udev settle timeout (default to 30)
UDEV_TIMEOUT=30
# Scan for FakeRAID (dmraid) Volumes at startup
USEDMRAID="no"
# Scan for BTRFS volumes at startup
USEBTRFS="no"
# Scan for LVM volume groups at startup, required if you use LVM
USELVM="no"
# -----------------------------------------------------------------------
# NETWORKING
# -----------------------------------------------------------------------
#
# HOSTNAME: Hostname of machine. Should also be put in /etc/hosts
#
HOSTNAME="eeepc"
# Use 'ip addr' or 'ls /sys/class/net/' to see all available interfaces.
#
# Wired network setup
# - interface: name of device (required)
# - address: IP address (leave blank for DHCP)
# - netmask: subnet mask (ignored for DHCP)
# - gateway: default route (ignored for DHCP)
#
# Static IP example
# interface=eth0
# address=192.168.0.2
# netmask=255.255.255.0
# gateway=192.168.0.1
#
# DHCP example
# interface=eth0
# address=
# netmask=
# gateway=
interface=eth0
address=
netmask=
gateway=
# Setting this to "yes" will skip network shutdown.
# This is required if your root device is on NFS.
NETWORK_PERSIST="no"
# Enable these netcfg profiles at boot-up. These are useful if you happen to
# need more advanced network features than the simple network service
# supports, such as multiple network configurations (ie, laptop users)
# - set to 'menu' to present a menu during boot-up (dialog package required)
# - prefix an entry with a ! to disable it
#
# Network profiles are found in /etc/network.d
#
# This requires the netcfg package
#
#NETWORKS=(main)
# -----------------------------------------------------------------------
# DAEMONS
# -----------------------------------------------------------------------
#
# Daemons to start at boot-up (in this order)
# - prefix a daemon with a ! to disable it
# - prefix a daemon with a @ to start it up in the background
#
# If something other takes care of your hardware clock (ntpd, dual-boot...)
# you should disable 'hwclock' here.
#
DAEMONS=(syslog-ng dbus hal networkmanager privoxy netfs rfkill eeepc_laptop @ufw @crond @alsa !bluetooth @samba @cups)
Here is my blacklist.conf (I have restored the framebuffer one):
blacklist rt2800pci
blacklist rt61pci
blacklist rt2x00pci
blacklist rt2800usb
blacklist rt2800lib
blacklist rt2x00usb
blacklist rt2x00lib
And here is the output of lsmod:
Module Size Used by
fuse 58669 3
ipt_REJECT 2029 1
ipt_LOG 6518 5
xt_multiport 1498 2
xt_limit 1423 7
xt_tcpudp 1883 7
xt_addrtype 2393 4
nf_conntrack_ipv4 9601 7
nf_defrag_ipv4 1023 1 nf_conntrack_ipv4
xt_state 971 7
ip6table_filter 1072 1
ip6_tables 10461 1 ip6table_filter
ipv6 249260 12
nf_conntrack_netbios_ns 801 0
nf_conntrack_broadcast 961 1 nf_conntrack_netbios_ns
nf_conntrack_pptp 3857 0
nf_conntrack_proto_gre 3241 1 nf_conntrack_pptp
nf_conntrack 50208 6 nf_conntrack_ipv4,xt_state,nf_conntrack_netbios_ns,nf_conntrack_broadcast,nf_conntrack_pptp,nf_conntrack_proto_gre
iptable_filter 1100 1
ip_tables 9186 1 iptable_filter
x_tables 11774 11 ipt_REJECT,ipt_LOG,xt_multiport,xt_limit,xt_tcpudp,xt_addrtype,xt_state,ip6table_filter,ip6_tables,iptable_filter,ip_tables
btusb 9897 0
bluetooth 115465 1 btusb
uvcvideo 55020 0
videodev 70734 1 uvcvideo
media 8545 1 videodev
joydev 7535 0
snd_hda_codec_realtek 225687 1
i915 557262 2
snd_hda_intel 19261 1
snd_hda_codec 66793 2 snd_hda_codec_realtek,snd_hda_intel
snd_hwdep 4919 1 snd_hda_codec
drm_kms_helper 24245 1 i915
snd_pcm 60311 2 snd_hda_intel,snd_hda_codec
drm 147653 3 i915,drm_kms_helper
uhci_hcd 19344 0
snd_timer 15542 1 snd_pcm
ehci_hcd 34847 0
rt2860sta 479236 1
intel_agp 8664 1 i915
psmouse 55927 0
snd 43527 8 snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer
usbcore 119004 5 btusb,uvcvideo,uhci_hcd,ehci_hcd
i2c_algo_bit 4431 1 i915
iTCO_wdt 10333 0
i2c_i801 7039 0
serio_raw 3430 0
pcspkr 1415 0
sg 21022 0
i2c_core 16665 6 videodev,i915,drm_kms_helper,drm,i2c_algo_bit,i2c_i801
evdev 7310 15
intel_gtt 11417 3 i915,intel_agp
crc_ccitt 1103 1 rt2860sta
iTCO_vendor_support 1553 1 iTCO_wdt
soundcore 5018 1 snd
battery 8905 0
processor 21884 0
eeepc_laptop 12452 0
atl1e 24804 0
button 3654 1 i915
sparse_keymap 2636 1 eeepc_laptop
thermal 6603 0
ac 2545 0
video 9852 1 i915
snd_page_alloc 5909 2 snd_hda_intel,snd_pcm
pci_hotplug 21978 1 eeepc_laptop
agpgart 22160 3 drm,intel_agp,intel_gtt
rfkill 12510 2 bluetooth,eeepc_laptop
ext4 334626 3
mbcache 4321 1 ext4
jbd2 59098 1 ext4
crc16 1077 2 bluetooth,ext4
sd_mod 25515 5
ata_piix 18569 3
pata_acpi 2396 0
libata 154349 2 ata_piix,pata_acpi
scsi_mod 110670 3 sg,sd_mod,libata
I hope this all means more to you than it does to me!!!!
Offline
In /etc/rc.conf remove
MOD_AUTOLOAD="yes"
Your blacklist file looks good. You could also look at removing hal - unless you have something that explicitly requires it.
Offline
Lol: I put the autoload line in after reading your first post!!!
I will try removing Hal to see what happens.
Offline
No progress.
There is a consistent delay of about 30s every time.
Offline
Is the pause still at udev -- or later in the daemons?
Offline
After re-instating "rfkill" and "eeepc_laptop" in "Modules" in rc.conf, the delay returned to the "Loading Modules" section.
If I boot from the Archlinux Fall-Back option, the pause occurs atr the next step, "Waiting for udev events to be processed"
Is there a way to step through the loading process to see where the pause occurs?
Last edited by myrlin (2011-06-17 09:06:46)
Offline
Mmm. The only module I load is fuse (for TrueCrypt), and I blacklist eeepc_laptop and use the laptop-mode daemon.
I don't think there is any way to pause the init process, except to disable the clearing of boot messages (but that won't help you).
Offline
SUCCESS!!!!
Blacklisting eeepc_laptop solved the problem, so that's obviously where the problem lies.
The trouble is that I've no lost all the hot key functions, but it's a small price to pay.
Can you tell me more about the laptop-mode daemon?
Many thanks for all your help
Last edited by myrlin (2011-06-17 10:26:53)
Offline
laptop-mode is for battery life.
To be honest, it is so long since I set it up, that I have forgotten how I did it. But all of my extra key functions work, using acpi-eeepc-generic but without listing those modules...
Let me look at it over the weekend and try to reconstruct what I did.
Offline
Thank you so much again for your help, Jason.
Offline
OK. This isn't logical, but it works.
1. I can replicate the pause at udev during boot by commenting out eeepc_laptop in my modprobe blacklist conf.
2. Udev loads all my modules (as stated above except for fuse)
3. lsmod shows me that, even with eeepc_laptop in the blacklist file it and rfkill are both loaded!
4. All my hotkeys work, with either eeepc_laptop blacklisted or not
5. Blacklisting eeepc_laptop improves boot speed and does not impact on aacpi performance (wtf, etc...)
You could try seeing how this goes for you. The only other thing that I have done is gone through every aacpi file in /etc/acpi/eeepc/ and set the values to the ones that I require.
I'll keep digging because now I am intrigued how it actually works.
Offline
Here are some more of my observations:
1. I disable rfkill and eeepc_laptop in the daemons section of rc.conf, and remove them from "MODULES()"
2. Blacklisting eeepc_laptop then prevents it from loading, but rfkill loads automatically.
3. Hot keys are disabled
4 Commenting out "blacklist eeepc_laptop" (but not re-enabling it in daemons) , re-introduces the pause, but at the "waiting for udev events" stage.
I too will keep digging, and report back.
Offline
Just a thought: do you want to paste your /etc/conf.d/acpi-eeepc-generic.conf?
And I found out why eeepc_laptop was being loaded even though I had blacklisted it: I have
modprobe eeepc_laptop &
in my /etc/rc.local
Give that a go...
Offline
Putting the line in rc.local did the trick, and eeepc_laptop loads without causing the pause. It still has to be blacklisted to stop it loading in the boot process and slowing everything down.
I need to do some experiments with my acpi-generic.conf file to see if I can get things working. My brightness control seems OK, but nothing else works, so maybe it's just a case of getting the right scripts to work.
I'll post back when I have more information.
Thanks again for all your help.
Last edited by myrlin (2011-06-18 21:40:00)
Offline
Hot keys are now working again - I did need HAL to be added to the Daemons list in rc.conf, but, strangely, not eeepc_laptop!
So, it looks as though everything is back to normal, and the only real change necessary was to load the eeepc_laptop module from rc.local, not rc.conf.
Thanks again for your help and motivation, Jason!
Offline
No problem. The bad news is that hal is deprecated and that you are going to need to dump it at some point...
Offline
Hmm - that's cheered me up!
I guess you are not using HAL, but your 901 is still working correctly, so my question is "what's different?" If I haven't driven you crazy already , I would be interested to explore this further.
Offline
Only the things I have mentioned in the thread. Additionally, my daemons array is
DAEMONS=(syslog-ng crond dbus @rpcbind @nfs-common @netfs @wicd @alsa @laptop-mode @ufw)
and I have moved all most all of my xorg.conf into files in /etc/X11/xorg.conf.d/
Hope that helps...
Offline
Thanks, Jason. The daemons array is really useful.
Looks like I'm going to have some fun experimenting
Offline
I think I have your answer. My hotkeys stopped working today -- after quite a bit of tinkering, it seems that the acpid daemon wasn't being started (obviously, something was starting it previously).
Anyway
sudo rc.d start acpid
should return all the button functions and putting acpid in the daemons array will fix it from your next boot.
Offline
Yes, this fixed the problem. All hot-keys now working without HAL.
For some reason, "Suspend" and "Hibernate" have disappeared from the logout options, but since I don't use them anyway, that's not a problem.
Thank you once again for all your help and patience, Jason
Offline