LINUX.ORG.RU

Не стартуют иксы с новым ядром

 


0

1

Всем привет!

Решил попробовать поставить еще одно новое ядро и чтобы была возможность загружаться с обоих со старого и нового. Сделал следующее:

Скачал новое ядро (4.11.3):
https://www.kernel.org/

Распаковал
tar -xvf linux-4.11.3

Скопировал в папку /usr/src/:
cp -r linux-4.11.3 /usr/src/

Перешел в новую папку:
cd /usr/src/linux-4.11.3

//Настраивать ядро пока не стал(пропустил этот пункт):
//make menuconfig

Собрал ядро:
make -j9 bzImage
make -j9 modules

Скопировал необходимые файлы ядра:
cp .config /boot/config-4.11.3
cp System.map /boot/System.map-4.11.3
cp arch/x86_64/boot/bzImage /boot/vmlinuz-4.11.3

Обновил загрузчик(grub2):
grub-mkconfig -o /boot/grub/grub.cfg

При обновлении он нашел новую версию ядра 4.11.3

Перезагрузил компьютер: И после перезагрузки в меню новый пункт с версией 4.11.3 не появился был только старый с версией 4.9.16 нажал на него ядро загрузилось. Ввел команду uname -r отобразилась версия 4.11.3 т.е. загрузилось новое ядро почему-то(хотя этого пункта даже не было в меню). Решил попробовать запустить иксы, но они не загрузились.

Подскажите что я сделал не так?

Make modules_install забыл, опции в конфиге часто меняются и не подхватываются, блободрова нужно собирать под новое ядро.

anonymous ()

Подскажите что я сделал не так?

//Настраивать ядро пока не стал(пропустил этот пункт): //make menuconfig

Скопируй .config предыдущего рабочего ядра в /usr/src/linux-4.11.3 и пересобери.

make && make modules_install && make install

Samsky ()

Подскажите что я сделал не так?

собрал с чьим то, для твоего железа не рабочим, конфигом, потому что пропустил шаг. Скопируй конфиг предыдущего, как рекомендует @Samsky

Crystal_HMR ★★★ ()

cp .config /boot/config-4.11.3
cp System.map /boot/System.map-4.11.3

для чего это?

initrd тоже пересобирать надо, если в нём есть модули ядра.

anonymous ()
Ответ на: комментарий от ving2

а какой дистр.?

Gentoo

Make modules_install забыл

Сделал пока все так же ничего не изменилось

Скопируй .config предыдущего рабочего ядра в /usr/src/linux-4.11.3 и пересобери.

Щас попробую.

dicros ()
Ответ на: комментарий от Samsky

Кстати, а зачем брать ядро не из репозитория?

Чтобы попа не погасла.

awesomebuntu ()
Ответ на: комментарий от anonymous

Попробовал сделать все заново:

1. Настройка символьной ссылки:
eselect kernel list
Выбрал пункт с новым ядром

2. Скопировал рабочий конфиг
cp /usr/src/linux-4.9.16-gentoo/.config /usr/src/linux/

3. Конфигурация ядра:
cd /usr/src/linux
make olddefconfig

4. Переустановка внешних модулей ядра:
make modules_prepare
emerge --ask @module-rebuild

5. Компиляция:
make -j9 bzImage

update-initramfs -u -k all
make -j9 modules
make install
make modules_install

6. Обновление grub2:
grub-mkconfig -o /boot/grub/grub.cfg

Результат тот же...

dicros ()
Ответ на: комментарий от dicros

Результат тот же...

Давай лог xorg-server`а, вывод dmesg, xorg.conf и содержимое файлов в xorg.conf.d, конфиг ядра.

Вывод команды

lsmod

Какая у тебя видео карта, какой драйвер используешь?

kostik87 ★★★★★ ()
Последнее исправление: kostik87 (всего исправлений: 1)
Ответ на: комментарий от kostik87

Лог:

[   202.843] 
X.Org X Server 1.19.2
Release Date: 2017-03-02
[   202.843] X Protocol Version 11, Revision 0
[   202.843] Build Operating System: Linux 4.9.16-gentoo x86_64 Gentoo
[   202.844] Current Operating System: Linux Gentoo 4.11.3 #1 SMP Sat May 27 14:20:45 MSK 2017 x86_64
[   202.844] Kernel command line: BOOT_IMAGE=/vmlinuz-4.11.3 root=/dev/sdc4 ro
[   202.844] Build Date: 03 April 2017  11:29:43PM
[   202.844]  
[   202.844] Current version of pixman: 0.34.0
[   202.845] 	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
[   202.845] Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   202.846] (==) Log file: "/var/log/Xorg.0.log", Time: Sat May 27 15:50:03 2017
[   202.913] (==) Using config directory: "/etc/X11/xorg.conf.d"
[   202.913] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[   202.952] (==) No Layout section.  Using the first Screen section.
[   202.952] (==) No screen section available. Using defaults.
[   202.952] (**) |-->Screen "Default Screen Section" (0)
[   202.952] (**) |   |-->Monitor "<default monitor>"
[   202.952] (==) No device specified for screen "Default Screen Section".
	Using the first device section listed.
[   202.952] (**) |   |-->Device "nvidia"
[   202.952] (==) No monitor specified for screen "Default Screen Section".
	Using a default monitor configuration.
[   202.952] (==) Automatically adding devices
[   202.952] (==) Automatically enabling devices
[   202.952] (==) Automatically adding GPU devices
[   202.952] (==) Max clients allowed: 256, resource mask: 0x1fffff
[   202.952] (WW) The directory "/usr/share/fonts/misc/" does not exist.
[   202.952] 	Entry deleted from font path.
[   202.952] (WW) The directory "/usr/share/fonts/TTF/" does not exist.
[   202.952] 	Entry deleted from font path.
[   202.952] (WW) The directory "/usr/share/fonts/OTF/" does not exist.
[   202.952] 	Entry deleted from font path.
[   202.952] (WW) The directory "/usr/share/fonts/Type1/" does not exist.
[   202.952] 	Entry deleted from font path.
[   202.952] (WW) The directory "/usr/share/fonts/100dpi/" does not exist.
[   202.952] 	Entry deleted from font path.
[   202.952] (WW) The directory "/usr/share/fonts/75dpi/" does not exist.
[   202.952] 	Entry deleted from font path.
[   202.952] (==) FontPath set to:
	
[   202.952] (**) ModulePath set to "/usr/lib64/opengl/nvidia,/usr/lib64/xorg/modules"
[   202.952] (II) The server relies on udev to provide the list of input devices.
	If no devices become available, reconfigure udev or disable AutoAddDevices.
[   202.952] (II) Loader magic: 0x811cc0
[   202.952] (II) Module ABI versions:
[   202.952] 	X.Org ANSI C Emulation: 0.4
[   202.952] 	X.Org Video Driver: 23.0
[   202.952] 	X.Org XInput driver : 24.1
[   202.952] 	X.Org Server Extension : 10.0
[   202.953] (--) PCI: (0:0:2:0) 8086:0412:1458:d000 rev 6, Mem @ 0xdb400000/4194304, 0xc0000000/268435456, I/O @ 0x0000f000/64
[   202.953] (--) PCI:*(0:1:0:0) 10de:104a:1458:3611 rev 161, Mem @ 0xda000000/16777216, 0xd0000000/134217728, 0xd8000000/33554432, I/O @ 0x0000e000/128, BIOS @ 0x????????/131072
[   202.953] (II) LoadModule: "glx"
[   203.009] (II) Loading /usr/lib64/opengl/nvidia/extensions/libglx.so
[   203.538] (II) Module glx: vendor="NVIDIA Corporation"
[   203.538] 	compiled for 4.0.2, module version = 1.0.0
[   203.538] 	Module class: X.Org Server Extension
[   203.539] (II) NVIDIA GLX Module  378.13  Tue Feb  7 18:25:34 PST 2017
[   203.545] (II) LoadModule: "nvidia"
[   203.605] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
[   203.662] (II) Module nvidia: vendor="NVIDIA Corporation"
[   203.662] 	compiled for 4.0.2, module version = 1.0.0
[   203.662] 	Module class: X.Org Video Driver
[   203.663] (II) NVIDIA dlloader X Driver  378.13  Tue Feb  7 18:01:51 PST 2017
[   203.663] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[   203.664] (--) using VT number 7

[   203.677] (II) Loading sub module "fb"
[   203.677] (II) LoadModule: "fb"
[   203.677] (II) Loading /usr/lib64/xorg/modules/libfb.so
[   203.691] (II) Module fb: vendor="X.Org Foundation"
[   203.691] 	compiled for 1.19.2, module version = 1.0.0
[   203.691] 	ABI class: X.Org ANSI C Emulation, version 0.4
[   203.691] (II) Loading sub module "wfb"
[   203.691] (II) LoadModule: "wfb"
[   203.740] (II) Loading /usr/lib64/xorg/modules/libwfb.so
[   203.754] (II) Module wfb: vendor="X.Org Foundation"
[   203.754] 	compiled for 1.19.2, module version = 1.0.0
[   203.754] 	ABI class: X.Org ANSI C Emulation, version 0.4
[   203.754] (II) Loading sub module "ramdac"
[   203.754] (II) LoadModule: "ramdac"
[   203.754] (II) Module "ramdac" already built-in
[   203.779] (EE) NVIDIA: Failed to initialize the NVIDIA kernel module. Please see the
[   203.779] (EE) NVIDIA:     system's kernel log for additional error messages and
[   203.779] (EE) NVIDIA:     consult the NVIDIA README for details.
[   203.779] (EE) No devices detected.
[   203.779] (EE) 
Fatal server error:
[   203.779] (EE) no screens found(EE) 
[   203.779] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[   203.779] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[   203.779] (EE) 
[   203.785] (EE) Server terminated with error (1). Closing log file.

xorg.conf - нет такого файла

содержимое файлов в xorg.conf.d: 20opengl.conf

Section "Files"
	ModulePath "/usr/lib64/opengl/nvidia"
	ModulePath "/usr/lib64/xorg/modules"
EndSection

nvidia.conf

Section "Device"
   Identifier "nvidia"
   Driver "nvidia"
EndSection

dmesg: Скачать dmesg

lsmod:

Module                  Size  Used by
x86_pkg_temp_thermal    16384  0

Видео карта NVIDIA

dicros ()
Ответ на: комментарий от dicros

Судя по dmesg, ядро вообще не знает о модуле. А xorg тем более. И вот еще странность.

[    0.000000] Your BIOS is broken; DMAR reported at address 0!
               BIOS vendor: American Megatrends Inc.; Ver: F2; Product Version: To be filled by O.E.M.
[    0.000000] Modules linked in:
[    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.11.3 #1
[    0.000000] Hardware name: Gigabyte Technology Co., Ltd. Z87P-D3/Z87P-D3, BIOS F2 04/29/2013
[    0.000000] Call Trace:
[    0.000000]  dump_stack+0x4d/0x65
[    0.000000]  __warn+0xcc/0xf0
[    0.000000]  warn_slowpath_fmt_taint+0x3f/0x50
[    0.000000]  ? acpi_os_map_iomem+0x11e/0x1a0
[    0.000000]  warn_invalid_dmar.part.10+0x66/0x80
[    0.000000]  dmar_validate_one_drhd+0x9b/0xe0
[    0.000000]  dmar_walk_remapping_entries+0x22/0x130
[    0.000000]  detect_intel_iommu+0x52/0xcf
[    0.000000]  ? clkdev_alloc+0x60/0x60
[    0.000000]  pci_iommu_alloc+0x4a/0x6c
[    0.000000]  mem_init+0xf/0x84
[    0.000000]  start_kernel+0x1cf/0x3e0
[    0.000000]  x86_64_start_reservations+0x2a/0x2c
[    0.000000]  x86_64_start_kernel+0xea/0xed
[    0.000000]  start_cpu+0x14/0x14
[    0.000000] ---[ end trace a20607e4fa5ca97b ]---
Samsky ()
Ответ на: комментарий от LongLiveUbuntu

emerge @module-rebuild делал после сборки ядра?

Делал. Решил на всякий случай сделать еще раз там вывелись ошибки решил глянуть повнимательней нашел вот это.

 * Gentoo supports kernels which are supported by NVIDIA
 * which are limited to the following kernels:
 * <sys-kernel/gentoo-sources-4.10
 * <sys-kernel/vanilla-sources-4.10

Я так понимаю, драйвера NVIDIA работают только с ядрами ниже 4.10, а так как тут ядро 4.11 он и неустанавливается. Так?

dicros ()
Ответ на: комментарий от Samsky

в пером посте ссылка битая(там патча нет). Ниже нашел вот этот

iff -durN linux-4.2.0/include/linux/export.h linux-4.2.0-patched/include/linux/export.h
--- linux-4.2.0/include/linux/export.h	2015-08-30 20:34:09.000000000 +0200
+++ linux-4.2.0-patched/include/linux/export.h	2015-08-31 16:35:20.620645230 +0200
@@ -69,14 +69,14 @@
 	__EXPORT_SYMBOL(sym, "")
 
 #define EXPORT_SYMBOL_GPL(sym)					\
-	__EXPORT_SYMBOL(sym, "_gpl")
+	__EXPORT_SYMBOL(sym, "")
 
 #define EXPORT_SYMBOL_GPL_FUTURE(sym)				\
-	__EXPORT_SYMBOL(sym, "_gpl_future")
+	__EXPORT_SYMBOL(sym, "")
 
 #ifdef CONFIG_UNUSED_SYMBOLS
 #define EXPORT_UNUSED_SYMBOL(sym) __EXPORT_SYMBOL(sym, "_unused")
-#define EXPORT_UNUSED_SYMBOL_GPL(sym) __EXPORT_SYMBOL(sym, "_unused_gpl")
+#define EXPORT_UNUSED_SYMBOL_GPL(sym) __EXPORT_SYMBOL(sym, "_unused")
 #else
 #define EXPORT_UNUSED_SYMBOL(sym)
 #define EXPORT_UNUSED_SYMBOL_GPL(sym)

но меня там смущают вот эти строки

iff -durN linux-4.2.0/include/linux/export.h linux-4.2.0-patched/include/linux/export.h
--- linux-4.2.0/include/linux/export.h	2015-08-30 20:34:09.000000000 +0200
+++ linux-4.2.0-patched/include/linux/export.h	2015-08-31 16:35:20.620645230 +0200

я просто раньше никогда с патчами дело не имел, и не представляю даже он таким и должен быть или тут надо как-то все менять. Или может эти строки вообще не нужны. Если кто знает подскажите плиз.

dicros ()
Ответ на: комментарий от dicros

Не советую торопиться, а линк дал чтобы показать что проблема решается. И в скором времени, возможно патч появится в gentoo. Тем более что указанный тобой патч для ядра 4.2.0.

Samsky ()

В Manjaro у меня работает блоб nvidia с ядром 4.11, так что патч точно есть, ищите.

Deleted ()
Ответ на: комментарий от dicros

В выводе lsmod нет модуля nvidia.

Под используемую тобой версию ядра не собирается модуль nvidia используемой тобой версии драйвера.

Если в этой версии драйвера nvidia нет официальной поддержки от Nvidia поддержки этой версии ядра, то тебе нужно искать сторонний патч.

О версии ядра 4.11 как раз и говорится в ebuild`е драйвера nvidia:


	if use kernel_linux && kernel_is ge 4 11; then
		ewarn "Gentoo supports kernels which are supported by NVIDIA"
		ewarn "which are limited to the following kernels:"
		ewarn "<sys-kernel/gentoo-sources-4.11"
		ewarn "<sys-kernel/vanilla-sources-4.11"
		ewarn ""
		ewarn "You are free to utilize epatch_user to provide whatever"
		ewarn "support you feel is appropriate, but will not receive"
		ewarn "support as a result of those changes."
		ewarn ""
		ewarn "Do not file a bug report about this."
		ewarn ""
	fi
https://gitweb.gentoo.org/repo/gentoo.git/plain/x11-drivers/nvidia-drivers/nv...

Читай вывод emerge после установки пакетов, там выводится много полезной информации.

Если используешь Gentoo, то учить читать логи и работать головой, без этого ничего не получится.

Теперь ищи сторонний патч для сборки модуля ядра nvidia на ядре 4.11 и переустанавливай заново пакет nvidia-drivers.

Куда поместить патч читай вот здесь: https://wiki.gentoo.org/wiki//etc/portage/patches

Патч можешь найти в Internet, либо взять из исходников пакета nvidia из Arch Linux (Manjaro).

Не забывай думать головой.

Удачи.

kostik87 ★★★★★ ()
Ответ на: комментарий от Deleted

Чё-то сейчас проверил, 381.22 собирается на 4.12-rc2 без патчей. Работает ли не проверял.

anonymous ()

Шли годы...

anonymous ()
Ответ на: комментарий от kostik87

kostik87 Спасибо учту, просто учусь еще много не знаю вот и пытаюсь какие-то вещи которые нахожу пробовать. Вроде когда читаешь как это делать кажется легко и все понятно, и у всех получается сразу и легко. А мне что-то совсем не везет каждый раз какие-то проблемы. Вот и тут тоже хотел просто так ради интереса попробовать запустить систему с новым ядром и снова проблемы.

А насчет того, что нужно читать вывод я понимаю просто английский к сожалению еще знаю не таком хорошем уровне, чтобы на нем спокойно читать. А переводить через переводчики конечно можно, но там тоже они не совсем корректно переводят.

Но все равно всем откликнувшимся огромное спасибо. Буду пробовать. Заодно и про патчи тоже почитаю их попробую понакладывать на ядро, может и взлетит мой пингвинчик :)

dicros ()
emerge -av nvidia-drivers

Пользуясь случаем, хочу спросить. У всех S3 Virge на Linux 4.9 работают? У меня консоль работает, а иксы не работают - ошибка сегментирования. Откатываюсь на старое ядро - а с ним работает

ZenitharChampion ★★★★★ ()
Последнее исправление: ZenitharChampion (всего исправлений: 1)

в названии иксы, а к концу про видеокарту с дровами заговорили - чем окончательно меня запутали, не будет ядро 4.11 на дровах работать - только на иксах...

amd_amd ★★★★ ()
Ответ на: комментарий от anonymous

Какой дистрибутив? В Gentoo драйвер максимально под ту версию ядра, поддержку которой обеспечивает Nvidia, для сборки под другие версии, более новые, нужно накладывать патчи.

Патч помещается в /etc/patches/atom-version/ и применяется при сборке драйвера Nvidia.

Если у тебя бинарный дистрибутив, то там либо мантейнеры пакета наложили патчи, либо ты сам.

kostik87 ★★★★★ ()
Ответ на: комментарий от anonymous

Ну хз, значит ТС может пробовать собирать последнюю доступную версию nvidia-drivers в portage, этот код:

	if use kernel_linux && kernel_is ge 4 12; then
		ewarn "Gentoo supports kernels which are supported by NVIDIA"
		ewarn "which are limited to the following kernels:"
		ewarn "<sys-kernel/gentoo-sources-4.12"
		ewarn "<sys-kernel/vanilla-sources-4.12"
		ewarn ""
		ewarn "You are free to utilize epatch_user to provide whatever"
		ewarn "support you feel is appropriate, but will not receive"
		ewarn "support as a result of those changes."
		ewarn ""
		ewarn "Do not file a bug report about this."
		ewarn ""
	fi
информативный.

kostik87 ★★★★★ ()
Ответ на: комментарий от kostik87

Это пи***ц какой-то делаю следующее:

В файл /etc/portage/package.unmask прописываю:

=x11-drivers/nvidia-drivers-381.22

Пытаюсь его установить:

emerge x11-drivers/nvidia-drivers-381.22

Выдает вот это

!!! 'x11-drivers/nvidia-drivers-381.22' is not a valid package atom.
!!! Please check ebuild(5) for full details.

dicros ()
Ответ на: комментарий от dicros

Насколько помню из опыта общения с gentoo, это логично, ибо emerge абстракция над ebuild. Посему либо

 emerge nvidia-drivers 
либо
 ebuild x11-drivers/nvidia-drivers-381.22 merge 
Вроде так... Если не прав, гентушники поправьте.

Samsky ()
Ответ на: комментарий от dicros

равно забыл, emerge -va1 =x11-drivers/nvidia-drivers-381.22 - вот так

Silerus ★★★ ()
Ответ на: комментарий от dicros

Если ты версию точно размаскировал, то можно указывать просто x11-drivers/nvidia-drivers или nvidia-drivers, ну а уж если ты указываешь версию, то пиши и символ равно «=», т.е. =x11-drivers/nvidia-drivers-381.22 или =nvidia-drivers-381.22.

Ты же при размаскировании указывал.

Ну и, возможно, что замаскировано посредством keywords.

А так да, пиздец, надо головой работать.

kostik87 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.