erra: (Default)
erra ([personal profile] erra) wrote2011-01-17 12:49 pm
Entry tags:

Ubuntu 10.10 + Toshiba + omnibook: troubleshooting standby mode

При обновлении дистрибутива Убунты столкнулся с проблемой: ноутбук перестал нормально уходить в спящий режим. Навскидку единственное, что вызвало подозрения, это работа модуля omnibook. В dmesg это выглядело так:
[    6.205903] omnibook: Driver version 2.20090707-trunk.
[    6.205965] omnibook: Unknown model.
[    6.206030] BUG: unable to handle kernel paging request at 00008800
[    6.206137] IP: [<00008800>] 0x8800
[    6.206209] *pde = 00000000 
[    6.206278] Oops: 0000 [#1] SMP 
[    6.206375] last sysfs file: /sys/devices/platform/omnibook/uevent
[    6.206416] Modules linked in: omnibook(+) toshiba_bluetooth(+) cfg80211(+) videodev(+) v4l1_compat intel_agp(+) i2c_algo_bit soundcore video psmouse serio_raw lp output agpgart snd_page_alloc parport usbhid hid firewire_ohci sdhci_pci sdhci led_class ahci firewire_core crc_itu_t sky2 libahci
[    6.207380] 
[    6.207416] Pid: 526, comm: modprobe Not tainted 2.6.35-25-generic #43-Ubuntu Satellite U400/Satellite U400
[    6.207464] EIP: 0060:[<00008800>] EFLAGS: 00010206 CPU: 1
[    6.207505] EIP is at 0x8800
[    6.207541] EAX: 00000000 EBX: f8154584 ECX: 00000000 EDX: 00008800
[    6.207583] ESI: 00000000 EDI: ffffffea EBP: f5195e38 ESP: f5195e18
[    6.207625]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[    6.207665] Process modprobe (pid: 526, ti=f5194000 task=f5148cb0 task.ti=f5194000)
[    6.207708] Stack:
[    6.207743]  f83540f1 00000296 00000000 f8354224 00000246 f8154588 00000005 13b13b2a
[    6.207845] <0> f5195e54 f835429c 00000040 000080d0 f52a1208 f8153e34 f8153e34 f5195e5c
[    6.207850] <0> c04021c1 f5195e80 c0400fa0 f52a12d8 f5195e80 c0408627 00000000 f52a1208
[    6.207854] Call Trace:
[    6.207861]  [] ? omnibook_init+0xb5/0x194 [omnibook]
[    6.207866]  [] ? omnibook_probe+0x54/0x132 [omnibook]
[    6.207872]  [] ? omnibook_probe+0xcc/0x132 [omnibook]
[    6.207877]  [] ? platform_drv_probe+0x11/0x20
[    6.207880]  [] ? really_probe+0x50/0x150
[    6.207883]  [] ? pm_runtime_barrier+0x57/0xb0
[    6.207885]  [] ? driver_probe_device+0x3c/0x60
[    6.207888]  [] ? __device_attach+0x49/0x60
[    6.207891]  [] ? bus_for_each_drv+0x53/0x80
[    6.207893]  [] ? device_attach+0x72/0x90
[    6.207896]  [] ? __device_attach+0x0/0x60
[    6.207898]  [] ? bus_probe_device+0x25/0x40
[    6.207902]  [] ? device_add+0x29c/0x3b0
[    6.207906]  [] ? kobject_set_name_vargs+0x64/0x70
[    6.207909]  [] ? platform_device_add+0xf7/0x1b0
[    6.207912]  [] ? platform_device_alloc+0x54/0x70
[    6.207917]  [] ? omnibook_module_init+0xdf/0x100 [omnibook]
[    6.207921]  [] ? do_one_initcall+0x32/0x1a0
[    6.207926]  [] ? omnibook_module_init+0x0/0x100 [omnibook]
[    6.207930]  [] ? sys_init_module+0x9b/0x1e0
[    6.207934]  [] ? sys_close+0x75/0xc0
[    6.207938]  [] ? syscall_call+0x7/0xb
[    6.207940] Code:  Bad EIP value.
[    6.207942] EIP: [<00008800>] 0x8800 SS:ESP 0068:f5195e18
[    6.207947] CR2: 0000000000008800
[    6.207950] ---[ end trace 29f14589ebe98ce0 ]---
Поскольку единственная причина, по которой я грузил этот модуль, заключалась в неработающем Bluetooth в Ubuntu 9.10, я решил проверить, будет ли всё работать без этого модуля. И вот тут-то начался цирк:
  • Строчка blacklist omnibook в /etc/modprobe.d/blacklist.conf не помогает
  • Строчка blacklist omnibook в /etc/modprobe.d/omnibook.conf согласно Debian Wiki тоже не помогает!
WTF? Как оказалось, загрузка модуля была прописана в файле /etc/modules. После его зачистки модуль наконец-то перестал грузиться, и спящий режим тоже заработал.

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting