View previous topic :: View next topic |
Author |
Message |
jeffk l33t
Joined: 13 Sep 2003 Posts: 671
|
Posted: Mon Mar 28, 2011 10:23 pm Post subject: Using lsmod info to inform kernel config? |
|
|
Can someone advise what can be learned from lsmod output with the gentoo LiveCD, so I can check for missing settings in my genkernel config?
The hardware is an Intel Xeon on VMWare vSphere 4.1U1:
Code: | Linux livecd 2.6.36-gentoo-r5 #1 SMP Thu Feb 24 13:41:14 UTC 2011 x86_64 Intel(R) Xeon(R) CPU E5620 @ 2.40GHz GenuineIntel GNU/Linux |
Code: | (chroot) livecd kernels # lsmod
Module Size Used by
ipv6 206212 12
video 11079 0
backlight 3332 1 video
output 1596 1 video
ac 2112 0
battery 5558 0
button 4602 0
fan 2290 0
thermal 7461 0
processor 25489 0
thermal_sys 10469 4 video,fan,thermal,processor
floppy 48917 0
rtc 4951 0
tg3 106290 0
libphy 14410 1 tg3
e1000 82410 0
fuse 53142 0
jfs 138057 0
raid10 18211 0
raid456 43608 0
async_raid6_recov 1161 1 raid456
async_memcpy 1134 1 raid456
async_pq 3010 1 raid456
async_xor 2121 2 raid456,async_pq
xor 4140 1 async_xor
async_tx 1622 5 raid456,async_raid6_recov,async_memcpy,async_pq,async_xor
raid6_pq 77394 2 async_raid6_recov,async_pq
raid1 18057 0
raid0 6835 0
dm_snapshot 24303 0
dm_crypt 9987 0
dm_mirror 11490 0
dm_region_hash 6344 1 dm_mirror
dm_log 7288 2 dm_mirror,dm_region_hash
dm_mod 54734 4 dm_snapshot,dm_crypt,dm_mirror,dm_log
scsi_wait_scan 663 0
sbp2 17235 0
ohci1394 23859 0
ieee1394 59454 2 sbp2,ohci1394
sl811_hcd 8630 0
usbhid 29429 0
ohci_hcd 17773 0
uhci_hcd 17932 0
usb_storage 38582 0
ehci_hcd 30941 0
usbcore 108389 7 sl811_hcd,usbhid,ohci_hcd,uhci_hcd,usb_storage,ehci_hcd
aic94xx 63941 0
libsas 34296 1 aic94xx
lpfc 379212 0
qla2xxx 281797 0
megaraid_sas 37273 0
megaraid_mbox 23613 0
megaraid_mm 6897 1 megaraid_mbox
megaraid 35887 0
aacraid 60335 0
sx8 11093 0
DAC960 61751 0
cciss 38709 0
3w_9xxx 28682 0
3w_xxxx 20500 0
mptsas 42747 0
scsi_transport_sas 20845 3 aic94xx,libsas,mptsas
mptfc 11989 0
scsi_transport_fc 35443 3 lpfc,qla2xxx,mptfc
scsi_tgt 8344 1 scsi_transport_fc
mptspi 13159 1
mptscsih 23931 3 mptsas,mptfc,mptspi
mptbase 74685 4 mptsas,mptfc,mptspi,mptscsih
atp870u 23553 0
dc395x 27547 0
qla1280 19271 0
dmx3191d 9004 0
sym53c8xx 62559 0
gdth 72993 0
advansys 50333 0
initio 15329 0
BusLogic 19282 0
arcmsr 23484 0
aic7xxx 104791 0
aic79xx 119712 0
scsi_transport_spi 18315 5 mptspi,dmx3191d,sym53c8xx,aic7xxx,aic79xx
sg 23380 0
pdc_adma 5202 0
sata_inic162x 6503 0
sata_mv 23475 0
ata_piix 20548 1
ahci 19337 0
libahci 15797 1 ahci
sata_qstor 5001 0
sata_vsc 3822 0
sata_uli 2857 0
sata_sis 3570 0
sata_sx4 7854 0
sata_nv 18743 0
sata_via 7672 0
sata_svw 3998 0
sata_sil24 10545 0
sata_sil 7060 0
sata_promise 9521 0
pata_sl82c105 3145 0
pata_cs5530 4061 0
pata_cs5520 3443 0
pata_via 7479 0
pata_jmicron 2248 0
pata_marvell 2689 0
pata_sis 9776 1 sata_sis
pata_netcell 2078 0
pata_sc1200 2786 0
pata_pdc202xx_old 4120 0
pata_triflex 2878 0
pata_atiixp 3449 0
pata_opti 2615 0
pata_amd 9908 0
pata_ali 8839 0
pata_it8213 3247 0
pata_pcmcia 9893 0
pcmcia 28342 1 pata_pcmcia
firmware_class 5019 7 tg3,aic94xx,libsas,qla2xxx,qla1280,advansys,pcmcia
pcmcia_core 10317 1 pcmcia
pata_ns87415 3065 0
pata_ns87410 2621 0
pata_serverworks 5261 0
pata_platform 3232 0
pata_artop 4603 0
pata_it821x 8157 0
pata_optidma 4358 0
pata_hpt3x2n 4515 0
pata_hpt3x3 2917 0
pata_hpt37x 9962 0
pata_hpt366 4846 0
pata_cmd64x 5432 0
pata_efar 3363 0
pata_rz1000 2610 0
pata_sil680 4313 0
pata_radisys 2743 0
pata_pdc2027x 5771 0
pata_mpiix 2715 0
libata 133311 53 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,sx |
Are any tools available to configure the genkernel config based on the above information, so everything detected is available as a module or compiled in, but not everything in the whole kernel gets built? The target kernel is 2.6.38-gentoo-r1.
Thanks. |
|
Back to top |
|
|
DONAHUE Watchman
Joined: 09 Dec 2006 Posts: 7651 Location: Goose Creek SC
|
Posted: Mon Mar 28, 2011 11:41 pm Post subject: |
|
|
The tool you ask for is Code: | genkernel --menuconfig all | Pruning the genkernel would reduce the disk space the kernel requires: I have a 3.9MB kernel versus a 2.8MB genkernel plus 3.4MB initramfs plus 1.6MB system.map. A trivial 4.9MB difference in a terabyte world. The unpruned genkernel boot should be slower; but not enough for me to notice. Pruning will take a lot of time and seems not worth the effort. http://kernel-seeds.org/ is a repository of efficient kernel configurations good as a basis for manual configuration. _________________ Defund the FCC. |
|
Back to top |
|
|
jeffk l33t
Joined: 13 Sep 2003 Posts: 671
|
Posted: Wed Mar 30, 2011 5:17 pm Post subject: |
|
|
Thanks for the reply. I am always impressed by the supported hardware of a full-config Linux kernel. I'm also more than happy to trade disk space for the benefit.
I've always customized my genkernel configs, and it's worked out well. On this new VMWare virtualized hardware, there was just a lot of unfamiliar territory for what needs to be compiled in for best performance and reliability. My main objective on this server, after full hardware and acceleration support, is to reduce compile time, which can be considerable for the full config, and considerably shorter for a config pared down to the expected hardware.
There's also some interest from my users about disabling the running kernel's support for unneeded hardware e.g. USB for security reasons.
Thanks. |
|
Back to top |
|
|
jbouzan Tux's lil' helper
Joined: 23 Nov 2007 Posts: 138
|
Posted: Wed Mar 30, 2011 7:01 pm Post subject: |
|
|
Quote: | /usr/src/linux $ make help
Cleaning targets:
clean - Remove most generated files but keep the config and
enough build support to build external modules
mrproper - Remove all generated files + config + various backup files
distclean - mrproper + remove editor backup and patch files
Configuration targets:
config - Update current config utilising a line-oriented program
nconfig - Update current config utilising a ncurses menu based program
menuconfig - Update current config utilising a menu based program
xconfig - Update current config utilising a QT based front-end
gconfig - Update current config utilising a GTK based front-end
oldconfig - Update current config utilising a provided .config as base
localmodconfig - Update current config disabling modules not loaded
localyesconfig - Update current config converting local mods to core
silentoldconfig - Same as oldconfig, but quietly, additionally update deps
defconfig - New config with default from ARCH supplied defconfig
savedefconfig - Save current config as ./defconfig (minimal config)
allnoconfig - New config where all options are answered with no
allyesconfig - New config where all options are accepted with yes
allmodconfig - New config selecting modules when possible
alldefconfig - New config with all symbols set to default
randconfig - New config with random answer to all options
listnewconfig - List new options
oldnoconfig - Same as silentoldconfig but set new symbols to n (unset) |
I think these options create a kernel .config by seeing currently loaded modules. Start with the appropriate version seed, then run make localyesconfig, and see if it boots. |
|
Back to top |
|
|
krinn Watchman
Joined: 02 May 2003 Posts: 7470
|
Posted: Wed Mar 30, 2011 7:31 pm Post subject: |
|
|
lspci -k can also answer that
the make allmodconfig + setting criticals part build-in (read mostly disk controller) can also add options your hardware handle but not the livecd kernel |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|