Список используемых модулей

Всегда и везде ядро я собирал через make menuconfig. Обновил материку на MSI PH67S-C43 и проц на Core i5 2500. Как ни пересобираю ядро ... все равно тормоза есть. Если же ядро собраю genkernel`ом, то все летает. Вот и возникла задача, решить которую сам пока не в состоянии.

lsmod выводит весь список загруженных модулей. lspci -k выводит модули только для оборудования. Как правильно получить список задействованных модулей с учетом работы iptables, lm_sensor, KVM, ethX, bridge, tapX и пр. программами, использующими модули ядра? Подозреваю что их больше чем lspci -k и меньше чем lsmod.

Может быть cat

Может быть

cat /proc/modules

?

joydev 8096 0 - Live

joydev 8096 0 - Live 0xffffffffa0586000
e1000 77240 0 - Live 0xffffffffa04cd000
jfs 132176 0 - Live 0xffffffffa0444000
raid10 16904 0 - Live 0xffffffffa043c000
raid456 41736 0 - Live 0xffffffffa042e000
и т.д.

Нет, это не то ибо этого оборудования у меня нет.

Правильно заданный вопрос - половина ответа!
Логики и довода — недостаточно. Надо еще зачморить тех, кто думает не так как мы. (South Park)

Как вариант:— идёте сюда;—

Как вариант:
— идёте сюда;
— вставляете в окошко вывод команды lspci -n;
— получаете список модулей для своего ядра;
— вдумчиво «допиливаете» конфигурационный файл ядра :D

Я Gentoo & Funtoo

Вы меня не совсем правильно

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

Правильно заданный вопрос - половина ответа!
Логики и довода — недостаточно. Надо еще зачморить тех, кто думает не так как мы. (South Park)

Тогда плюс к предложенному —

Тогда плюс к предложенному — поработать с ядром от genkernel, затем посмотреть вновь появившиеся и используемые в данный момент модули. Но и это не 100%-ное решение вашей задачи — а вдруг вы потом захотите какое-либо новое оборудование? ;)
Я для себя пришёл к такому компромиссу — беру конфигурационный файл от SystemRescueCD, настраиваю его в соответствии с имеющимся у меня оборудованием, исключая явно избыточные для меня опции и включая явно необходимое. Ну и «экспериментирую», ...неоднократно.

Я Gentoo & Funtoo

Lupo Alberto

Lupo Alberto написал(а):
посмотреть вновь появившиеся и используемые в данный момент модули

Как это посмотреть? Интересует второе. Пересобирать ядро туда-сюда с вкл/выкл модулей и потом гордиться что я умею их включать что-то не улыбается. Меня интересует именно список используемых модулей. Не загруженных, не оборудования, а именно используемых.

Правильно заданный вопрос - половина ответа!
Логики и довода — недостаточно. Надо еще зачморить тех, кто думает не так как мы. (South Park)

Не претендуя на истину: число

Не претендуя на истину:
число в третьем поле вывода команды lsmod показывает количество модулей, зависящих от данного, в четвёртом поле — перечислены эти модули.
Не до конца понятна стоящая перед вами задача — чтобы понять, нужна ли вам определённая опция ядра надо либо много читать, либо много «экспериментировать» с включением-выключением опций в ядре. Так, к примеру, у себя я полностью включаю поддержку всех модулей netfilter — ведь какие именно опции конфигурации iptables я захочу использовать в будущем, я не знаю.

P.S. IMHO, в большинстве случаев в данный момент оптимизация ядра больше хобби, чем насущная необходимость.

Я Gentoo & Funtoo

для примера:libata

для примера:

libata                129060  54 libsas,pdc_adma,sata_inic162x,sata_mv,ata_piix,ahci,libahci,sata_qstor,sata_vsc,sata_uli,sata_sis,sata_sx4,sata_nv,sata_via,sata_svw,sata_sil24,sata_sil,sata_promise,pata_sl82c105,
pata_cs5530,pata_cs5520,pata_via,pata_jmicron,pata_marvell,pata_sis,pata_netcell,pata_sc1200,pata_pdc202xx_old,pata_triflex,pata_atiixp,pata_opti,pata_amd,pata_ali,pata_it8213,
pata_pcmcia,pata_ns87415,pata_ns87410,pata_serverworks,pata_platform,pata_oldpiix,pata_artop,pata_it821x,pata_optidma,pata_hpt3x2n,pata_hpt3x3,pata_hpt37x,pata_hpt366,pata_cmd64x,
pata_efar,pata_rz1000,pata_sil680,pata_radisys,pata_pdc2027x,pata_mpiix

из этого списка у меня всего два модуля для материнки.

Какие модули для моего оборудования нужны я знаю, но при этом ядро, собранное make заметно тормозит хотя и работает. Вот я хочу выцепить те модули которых не хватае.
Возможно они (модули) управляют прерываниями, частотой проца и/или чем то еще чего. Возможно это специфические модули, которые динамически управляют параметрами других модулей.
Я это не знаю и хочу их ... что бы не тормозило.

Правильно заданный вопрос - половина ответа!
Логики и довода — недостаточно. Надо еще зачморить тех, кто думает не так как мы. (South Park)

..

Всегда и везде ядро я собирал через make menuconfig.

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

По теме, сравните конфиги. Найдёте разницу.

_SerEga_ написал(а): Всегда и

_SerEga_ написал(а):
Всегда и везде ядро я собирал через make menuconfig.Эта команда не собирает ядро.

Написано же через!!! Разумеется далее следовали make && make modules_install )) А что касается сравнения ... разница в несколько сот строк ибо в конфиге у генкернела почти везде стоит = m и определить используемость данного m не представляется возможным.

Правильно заданный вопрос - половина ответа!
Логики и довода — недостаточно. Надо еще зачморить тех, кто думает не так как мы. (South Park)

Торопился, забыл смайлик

Торопился, забыл смайлик поставить. Хотел намекнуть, что неправильно делить сборку ядра на make menuconfig и genkernel. Более правильный способ: вы собираете ядро по своему конфигу(menuconfig) или по чужому. В обоих случаях можно юзать genkernel, а можно нет.

Выкинте 100% лишнее(драйверы устройств которых у вас нет - это быстро и просто), загрузитесь, если все нормально, то из оставшегося начинайте убирать, то что вам кажется лишним. При этом периодически собирайте новое ядро и проверяйте. С каждым разом лишнего будет все меньше и меньше.

>...и меньше чем

>...и меньше чем lsmod.

Имхо,отнюдь не так.
Если вы ручками,или самописными скриптами, или через /etc/conf.d/modules ничего не грузили, то в списке будут только те модули, которые ядро с удевом посчитали определённо необходимыми.
Там может чего-то не хватать,или быть определено не оптимально (есть случаи когда подходят несколько альтернативных модулей), но лишнего не будет.
Так что, да. один из этапов настройки ядра - это загрузка универсального модульного ядра и просмотр, что загрузилось, чтоб не пропустить чего важного.
(Ну и + то, что вам выше надиктовали)

Это ответ на вторую часть Вашего сообщения.

По сути же,то на что Вы жалуетесь в первой части сообщения слабо связано со второй.
Имеются веские предпосылки, что дело не столько в отсутствии отдельных драйверов (модулей), сколько в изначально не верной конфигурации ядра, так что универсальная конфигурация в Вашем случае оказывается более выгодной.
Возможные ошибки:
Неверное указание семейства и типа процессора, установка некорректных параметров для вашего проца, памяти, чипсета, злоупотребление параметрами,необходимость которых не очевидна.

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

Если такое не для Вас, то наилучший компромиссный выход - это взять сгенеренный генкернелом конфиг и потихоньку отключать то, чего у вас явно нет СНИЗУ ВВЕРХ не трогая то, в чем Вы не уверены.

:)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".