Oops: PREEMPT SMP (решено)

Недавно купил новый комп, сегодня он подвис на полминуты, я посмотрел в лог ядра и онаружл интересное сообщение:

Apr 30 22:20:09 sergey kernel: general protection fault: 0000 [#1] PREEMPT SMP 
Apr 30 22:20:09 sergey kernel: CPU 0 
Apr 30 22:20:09 sergey kernel: Modules linked in: nls_utf8 nls_cp866 vfat fat joydev ipv6 coretemp hwmon speedstep_lib cpufreq_userspace cpufreq_powersave cpufreq_conservative acpi_cpufreq mperf snd_hda_codec_hdmi snd_hda_codec_via snd_hda_intel snd_hda_codec snd_hwdep snd_pcm snd_timer snd atl1c iTCO_wdt i2c_i801 snd_page_alloc iTCO_vendor_support ext4 mbcache jbd2 crc16 thermal fan psmouse sg xhci_hcd processor i915 drm_kms_helper drm intel_agp i2c_algo_bit cfbcopyarea button intel_gtt i2c_core video cfbimgblt cfbfillrect
Apr 30 22:20:09 sergey kernel: 
Apr 30 22:20:09 sergey kernel: Pid: 19040, comm: chrome Tainted: G    B        3.3.3-calculate #1 Gigabyte Technology Co., Ltd. To be filled by O.E.M./H77M-D3H
Apr 30 22:20:09 sergey kernel: RIP: 0010:[<ffffffff810c9aaf>]  [<ffffffff810c9aaf>] unlink_anon_vmas+0x13f/0x1e0
Apr 30 22:20:09 sergey kernel: RSP: 0018:ffff8802121edcf8  EFLAGS: 00010292
Apr 30 22:20:09 sergey kernel: RAX: dead000000200200 RBX: ffff8802122e5b40 RCX: 0000000180380005
Apr 30 22:20:09 sergey kernel: RDX: dead000000100100 RSI: ffffea0008320400 RDI: ffff8802122e5b40
Apr 30 22:20:09 sergey kernel: RBP: ffff8802121edd38 R08: 0000000000000001 R09: ffffffff810c9374
Apr 30 22:20:09 sergey kernel: R10: dead000000200200 R11: dead000000100100 R12: dead0000001000f0
Apr 30 22:20:09 sergey kernel: R13: ffff8802127c8a00 R14: dead000000100100 R15: ffff88020c812798
Apr 30 22:20:09 sergey kernel: FS:  00007f041fd11940(0000) GS:ffff88021f200000(0000) knlGS:0000000000000000
Apr 30 22:20:09 sergey kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Apr 30 22:20:09 sergey kernel: CR2: 00007f040e6611e0 CR3: 0000000211d15000 CR4: 00000000000406f0
Apr 30 22:20:09 sergey kernel: DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
Apr 30 22:20:09 sergey kernel: DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Apr 30 22:20:09 sergey kernel: Process chrome (pid: 19040, threadinfo ffff8802121ec000, task ffff880214b59380)
Apr 30 22:20:09 sergey kernel: Stack:
Apr 30 22:20:09 sergey kernel: ffff8802127c89a0 ffff8802127c8a10 0000000000000028 ffff8802127c8840
Apr 30 22:20:09 sergey kernel: ffff8802127c89a0 ffff88020c812798 0000000000000000 0000000000000000
Apr 30 22:20:09 sergey kernel: ffff8802121eddf8 ffffffff810c4115 00007f040e6611e0 ffff880211d13398
Apr 30 22:20:09 sergey kernel: Call Trace:
Apr 30 22:20:09 sergey kernel: [<ffffffff810c4115>] vma_adjust+0x1f5/0x550
Apr 30 22:20:09 sergey kernel: [<ffffffff810c4915>] vma_merge+0x295/0x2d0
Apr 30 22:20:09 sergey kernel: [<ffffffff810c693c>] mprotect_fixup+0xcc/0x620
Apr 30 22:20:09 sergey kernel: [<ffffffff810c6fd9>] sys_mprotect+0x149/0x1e0
Apr 30 22:20:09 sergey kernel: [<ffffffff813995a2>] system_call_fastpath+0x16/0x1b
Apr 30 22:20:09 sergey kernel: Code: 55 eb 69 66 0f 1f 84 00 00 00 00 00 48 8b 53 10 48 8b 43 18 49 bb 00 01 10 00 00 00 ad de 49 ba 00 02 20 00 00 00 ad de 48 89 df <48> 89 42 08 48 89 10 4c 89 5b 10 4c 89 53 18 e8 1d e6 ff ff 49 
Apr 30 22:20:09 sergey kernel: RIP  [<ffffffff810c9aaf>] unlink_anon_vmas+0x13f/0x1e0
Apr 30 22:20:09 sergey kernel: RSP <ffff8802121edcf8>
Apr 30 22:20:10 sergey kernel: ---[ end trace 3fc86466ce25c4d0 ]---

Не могу понять в чем проблема. То-ли в хромиуме, то-ли в ядре, то-ли в железе. Кто-нибудь сталкивался с подобным?

Опять сбой, но в логах по другому:

May  1 13:02:30 sergey kernel: BUG: unable to handle kernel paging request at 00000000001000c0
May  1 13:02:30 sergey kernel: IP: [<ffffffff810c3eaa>] unlink_file_vma+0x2a/0x70
May  1 13:02:30 sergey kernel: PGD 2132a0067 PUD 0 
May  1 13:02:30 sergey kernel: Oops: 0000 [#1] PREEMPT SMP 
May  1 13:02:30 sergey kernel: CPU 0 
May  1 13:02:30 sergey kernel: Modules linked in: ipv6 coretemp hwmon speedstep_lib cpufreq_userspace cpufreq_powersave cpufreq_conservative acpi_cpufreq mperf snd_hda_codec_hdmi snd_hda_codec_via snd_hda_intel snd_hda_codec snd_hwdep snd_pcm snd_timer i2c_i801 snd iTCO_wdt atl1c iTCO_vendor_support snd_page_alloc ext4 mbcache jbd2 crc16 sg psmouse xhci_hcd thermal fan processor joydev i915 drm_kms_helper drm intel_agp i2c_algo_bit cfbcopyarea button intel_gtt i2c_core video cfbimgblt cfbfillrect
May  1 13:02:30 sergey kernel: 
May  1 13:02:30 sergey kernel: Pid: 21452, comm: as Not tainted 3.3.3-calculate #1 Gigabyte Technology Co., Ltd. To be filled by O.E.M./H77M-D3H
May  1 13:02:30 sergey kernel: RIP: 0010:[<ffffffff810c3eaa>]  [<ffffffff810c3eaa>] unlink_file_vma+0x2a/0x70
May  1 13:02:30 sergey kernel: RSP: 0018:ffff880213681d18  EFLAGS: 00010206
May  1 13:02:30 sergey kernel: RAX: ffff88021311bdc0 RBX: ffff88021311bdc0 RCX: 00000000367e8ac0
May  1 13:02:30 sergey kernel: RDX: ffff88021311be30 RSI: ffff88021405e630 RDI: ffff88021311bdc0
May  1 13:02:30 sergey kernel: RBP: ffff880213681d38 R08: 0000000000013e70 R09: ffffffff810c80f3
May  1 13:02:30 sergey kernel: R10: dead000000200200 R11: dead000000100100 R12: ffff880213681d98
May  1 13:02:30 sergey kernel: R13: 0000000000100000 R14: 0000000000000000 R15: 0000003d9be00000
May  1 13:02:30 sergey kernel: FS:  0000000000000000(0000) GS:ffff88021f200000(0000) knlGS:0000000000000000
May  1 13:02:30 sergey kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
May  1 13:02:30 sergey kernel: CR2: 00000000001000c0 CR3: 0000000214941000 CR4: 00000000000406f0
May  1 13:02:30 sergey kernel: DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
May  1 13:02:30 sergey kernel: DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
May  1 13:02:30 sergey kernel: Process as (pid: 21452, threadinfo ffff880213680000, task ffff880214217500)
May  1 13:02:30 sergey kernel: Stack:
May  1 13:02:30 sergey kernel: ffff88021311ba50 ffff880213681d98 0000000000000000 0000000000000000
May  1 13:02:30 sergey kernel: ffff880213681d88 ffffffff810bde43 ffff880213681d58 ffff88021311bdc0
May  1 13:02:30 sergey kernel: ffff880213681d88 ffff880214f73e70 ffff88020f5c0e00 ffff880213681d98
May  1 13:02:30 sergey kernel: Call Trace:
May  1 13:02:30 sergey kernel: [<ffffffff810bde43>] free_pgtables+0xa3/0x100
May  1 13:02:30 sergey kernel: [<ffffffff810c6153>] exit_mmap+0xe3/0x120
May  1 13:02:30 sergey kernel: [<ffffffff8102f4af>] mmput+0x3f/0x110
May  1 13:02:30 sergey kernel: [<ffffffff81033fb8>] exit_mm+0xf8/0x120
May  1 13:02:30 sergey kernel: [<ffffffff81035db0>] do_exit+0x670/0x870
May  1 13:02:30 sergey kernel: [<ffffffff810d9fe5>] ? kmem_cache_free+0x15/0x90
May  1 13:02:30 sergey kernel: [<ffffffff810c3a70>] ? remove_vma+0x60/0x80
May  1 13:02:30 sergey kernel: [<ffffffff810c4d92>] ? do_munmap+0x2d2/0x360
May  1 13:02:30 sergey kernel: [<ffffffff8103623f>] do_group_exit+0x4f/0xb0
May  1 13:02:30 sergey kernel: [<ffffffff810362b2>] sys_exit_group+0x12/0x20
May  1 13:02:30 sergey kernel: [<ffffffff813995a2>] system_call_fastpath+0x16/0x1b
May  1 13:02:30 sergey kernel: Code: 00 55 48 89 e5 48 83 ec 20 48 89 1c 24 4c 89 64 24 08 48 89 fb 4c 89 6c 24 10 4c 89 74 24 18 4c 8b af 98 00 00 00 4d 85 ed 74 2a <4d> 8b b5 c0 00 00 00 4d 8d 66 40 4c 89 e7 e8 03 21 2d 00 49 8d 
May  1 13:02:30 sergey kernel: RIP  [<ffffffff810c3eaa>] unlink_file_vma+0x2a/0x70
May  1 13:02:30 sergey kernel: RSP <ffff880213681d18>
May  1 13:02:30 sergey kernel: CR2: 00000000001000c0
May  1 13:02:30 sergey kernel: ---[ end trace 4cec2c941a1a91c6 ]---

Что только не делал, даже систему переустановил. Ошибка появляется при компиляции какого-нибудь большого приложения. В логах ядра куча ошибок вида:

May  1 21:10:44 sergey kernel: BUG: Bad page state in process emerge  pfn:1d9bdd
May  1 21:21:28 sergey kernel: BUG: Bad page state in process cc1plus  pfn:90261
May  1 21:22:26 sergey kernel: BUG: Bad page state in process cc1plus  pfn:cfd51
May  1 21:41:15 sergey kernel: BUG: Bad page map in process rm  pte:20d25a025 pmd:21355c067
May  1 21:41:15 sergey kernel: BUG: Bad page state in process rm  pfn:20d25a
May  1 21:46:45 sergey kernel: BUG: Bad page map in process cmake  pte:00100000 pmd:211ea2067
May  1 21:54:47 sergey kernel: BUG: Bad page state in process cc1plus  pfn:1757b1
May  1 22:14:45 sergey kernel: BUG: Bad page map in process cmake  pte:00100000 pmd:21526d067
May  1 22:17:22 sergey kernel: BUG: Bad page map in process cmake  pte:00100000 pmd:211ae5067
May  1 22:20:27 sergey kernel: BUG: Bad page map in process cc1plus  pte:00100000 pmd:20fe2a067
May  1 22:22:17 sergey kernel: BUG: Bad page map in process x86_64-pc-linux  pte:00100000 pmd:2153b2067
May  1 22:22:36 sergey kernel: BUG: Bad page map in process sh  pte:00100000 pmd:2153b0067
May  1 22:32:25 sergey kernel: BUG: Bad page map in process x86_64-pc-linux  pte:80000001a4f3f067 pmd:214c83067
May  1 22:36:43 sergey kernel: BUG: Bad page state in process cc1plus  pfn:15ecb1

У меня система установлена на SSD. Может есть какие-то тонкости использования SSD?

Пальба наугад:

# Оперативка или SSD битые
# Нехватка памяти
# Нет места в каталоге, где происходит сборка пакетов
# Проблемы с проприетарным драйвером, например видеокарты
# Проблема с материнской платой

Я бы поменял машинку…

1. memtest не выдает ошибок. smart SSD говорит что нет bad’ов
2. оперативной памяти 8 гигабайт
3. на системном диске свободно 28 гигабайт
4. Видеокарта intel, встроенная в процессор. Сегодня с работы принесу на пробу radeon.
5. Может проблема с bios EFI?

Все железо новое. Если менять по гарантии - нужно выяснить причину. Компьютер может работать непрерывно сутки, потом начинаю что нибудь устанавливать, и он виснет.
Еще заметил что частота всех 4х ядер процессора увеличивается до 3.4 ГГц при компиляции, хотя максимальная частота процессора 3.1 ГГц. Мне кажется это странно. Я думал что при turbo boost только одно ядро должно работать на максимальной частоте. Пробовал отключить turbo boost в bios - не отключается.

Сергей Кузьминов wrote:

  1. Может проблема с bios EFI?

Обычно с EFI проблема только в том, что не все дистрибутивы в состоянии загрузится с него. Но если система грузится, то проблем быть не должно.

Еще заметил что частота всех 4х ядер процессора увеличивается до 3.4 ГГц при компиляции, хотя максимальная частота процессора 3.1 ГГц. Мне кажется это странно. Я думал что при turbo boost только одно ядро должно работать на максимальной частоте. Пробовал отключить turbo boost в bios - не отключается.

Может оперативная память не выдерживает при повышении частоты turbo boost? Т.е. пробуем нагрузить компьютер, разогреть и паралельно запустить тест памяти. И какая температура, перед зависанием?

Еще как вариант попробуйте либо выгрузить вручную модули из /etc/conf.d/modules (modprobe -r модуль), либо закомментировать временно все строки в /etc/conf.d/modules и просто перезагрузится, чтобы проверить в них ли дело. Там присутствуют модули, управляющие частотой процессора.

P.S.

Укажите конфигурацию

Еще заметил что частота всех 4х ядер процессора увеличивается до 3.4 ГГц при компиляции, хотя максимальная частота процессора 3.1 ГГц.

Вообще - что за CPU, может он “уставший”?
Измените в биосе множитель либо частоту шины (первое предпочтительней).

Еще такой вопрос - ядро пересобирали?

Может оперативная память не выдерживает при повышении частоты turbo boost?

Вроде при работе turbo boost увеличивается только множитель процессора, а частота шины не меняется. Температура процессора в простое 37 градусов, в момент зависания 57 градусов. Возможно что один из модулей ядра поднимает именно частоту шины а не множитель, вечером поразбираюсь.

Ядро не пересобирал.

Конфигурация:

  1. Материнская плата: GigaByte GA-H77M-D3H
  2. Процессор: Intel Core i5-2400 3.1 ГГц/SVGA, LGA1155
  3. Память: Corsair XMS3 DDR-III 8Gb KIT 2*4Gb PC3-10600
  4. SSD: Plextor PX-128M3

Компиляция пакетов перестала прерываться после того как выгрузил модули ядра: “acpi-cpufreq cpufreq_conservative cpufreq_powersave cpufreq_userspace mperf speedstep-lib”. Три раза подряд успешно собрал пакет app-office/calligra. Раньше сборка прерывалась и комп начинал глючить. Частота процессора держится на отметке 3092 мегагерца и не меняется. Температура 38 градусов в простое и 51 градус при полной загрузке всех ядер. Установил видеокарту radeon HD2400 и температура процессора изменилась: 34 градуса в простое и 46 градусов при полной загрузке.

Несмотря на то, что глюков не видно, в логах ядра все же кое-что нехорошее есть:

May  2 22:12:38 sergey kernel: BUG: Bad page map in process sh  pte:00100000 pmd:211628067
May  2 22:12:38 sergey kernel: addr:00007f251cc8b000 vm_flags:08000070 anon_vma:          (null) mapping:ffff88020e511d28 index:101
May  2 22:12:38 sergey kernel: vma->vm_ops->fault: filemap_fault+0x0/0x470
May  2 22:12:38 sergey kernel: vma->vm_file->f_op->mmap: ext4_file_mmap+0x0/0x60 [ext4]
May  2 22:12:38 sergey kernel: Pid: 13661, comm: sh Not tainted 3.3.3-calculate #1
May  2 22:12:38 sergey kernel: Call Trace:
May  2 22:12:38 sergey kernel: [<ffffffff810bd48e>] print_bad_pte+0x19e/0x210
May  2 22:12:38 sergey kernel: [<ffffffff810cf6dc>] ? swap_info_get+0x9c/0xe0
May  2 22:12:38 sergey kernel: [<ffffffff810bf0bb>] unmap_vmas+0x3db/0x720
May  2 22:12:38 sergey kernel: [<ffffffff810c6128>] exit_mmap+0xb8/0x120
May  2 22:12:38 sergey kernel: [<ffffffff8102f4af>] mmput+0x3f/0x110
May  2 22:12:38 sergey kernel: [<ffffffff81033fb8>] exit_mm+0xf8/0x120
May  2 22:12:38 sergey kernel: [<ffffffff81035db0>] do_exit+0x670/0x870
May  2 22:12:38 sergey kernel: [<ffffffff810df799>] ? vfs_write+0x159/0x180
May  2 22:12:38 sergey kernel: [<ffffffff8103623f>] do_group_exit+0x4f/0xb0
May  2 22:12:38 sergey kernel: [<ffffffff810362b2>] sys_exit_group+0x12/0x20
May  2 22:12:38 sergey kernel: [<ffffffff813995a2>] system_call_fastpath+0x16/0x1b
May  2 22:12:38 sergey kernel: Disabling lock debugging due to kernel taint

Думаю наложились друг на друга сразу две проблемы. Время покажет что еще не так. Компьютер не глючит, спасибо за помощь.

Не помогло. Похоже что виновата материнка или процессор.
SSD использовал на другом компьютере - сбоев нет.
Вместо SSD устанавливал HDD с другого компьютера - ничего не меняется, сбои.
Менял блок питания, устанавливал другую видеокарту - без изменений.
Будет время - поставлю винду (чтобы показать продавцу). Если в ней будут сбои - пойду менять материнку и проц.

Главное не упустить время, когда его можно просто обменять в магазине, так как позднее покупка может обернуться сплошными путешествиями по сервисам.

Ядро не пересобирали? При загрузке с ЗАВЕДОМО ЖИВОЙ LiveCD в логах так же присутствуют эти проблемы?
Кстати, можно загрузиться в режиме LiveCD и не нарезая болванки

Ядро не пересобирал. При загрузке LiveCD в логах чисто. Ошибка возникает во время компиляции.

Упаковал фильм 4 Гб одновременно разными архиваторами, при этом были загружены все ядра, частота поднялась до 3.4 ГГц. Ошибки не появлялись. Повторил операцию - ошибок нет. Хотел в винде нагрузить процессор архиваторами, теперь вот думаю ставить ли ее, т.к. скорее всего ошибок не будет. Попробую установить CLD 32-бит (сейчас 64-бит).

Ядро не пересобирал. При загрузке LiveCD в логах чисто. Ошибка возникает во время компиляции.

Так с liveCD покомпилируйте что-то
Можете в scratch-режиме загрузиться и в cl-builder что-то собрать(так доп соят в iso-шку добавляется), можете просто с liveCD стартануть и что-то пересобрать.

Установил cld-20120505-i686. Ошибок нет. Правда оперативы видит только 3,5 Гб.

Вот похожие проблемы:
http://www.calculate-linux.ru/boards/16/topics/11047
http://www.calculate-linux.ru/boards/16/topics/8878?r=8885#message-8885

У меня в логах в 64-битной версии тоже есть:

May  8 21:44:44 sergey kernel: python2.7[6332]: segfault at 0 ip 00007ff77aa4b325 sp 00007fff32250d40 error 6 in sip.so[7ff77aa3b000+19000]

И …segfault… libc тоже было, правда я снес тот дистр с логами.

Сергей Кузьминов wrote:

Установил cld-20120505-i686. Ошибок нет. Правда оперативы видит только 3,5 Гб.

Пересоберите ядро (“cl-kernel -m”), добавив поддержку большего кол-ва памяти.

Пересобрал с pae, память увиделась. После двух неудачных попыток собрать пакет app-office/calligra вернулся к прежнему ядру. Ошибок в логе ядра не было, пакет просто не собирался. После возврата к прежнему ядру пакет собрался с первого раза.

Отнес на работу память Corsair и принес samsung такого же номинала. Сегфолты в х64 сразу пропали. На работе Corsair работает стабильно (win7 х64). Вот так решилась моя проблема. Я удивлен что memtest не выявлял проблему. Думаю моя материнка устанавливает экстремальные тайминги для Corsair и возможно в дальнейшем новые bios поправят это.