You are not logged in.
Pages: 1
Ok so im compiling my own custom kernel just to see if i can do it and learn more about the linux kernel.
Im noticing that it has ALOT of drivers and i cant imagine i would need all them if this was just a personal kernel only going to be used on one system of which its hardware will never change. When in the config (nconfig) i didnt see any options to not including some drivers so i was wondering if it was possible?
Also i heard about people loading modules they use into their kernel to improve performance and i was wondering how to do this, i saw nothing in the wiki and couldnt find anything in the forums.
Last edited by markbabc (2010-12-25 15:40:21)
Offline
You want make localmodconfig. Have a look at my kernel26-ck package (in my sig) - pay attention to the notes and warnings about it. You might also want to grab/install the modprobed_db package from the AUR which will keep track of your modules and which ones you actually need. Note that until 2.6.37, the make localmodconfig isn't quiet right. Again, see my PKGBUILD which I have commented with links. Note that my PKGBUILD uses the git version of the script that make localmodconfig calls which is fixed and will be included in 2.6.37.
Enjoy!
Last edited by graysky (2010-12-25 00:18:53)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
You want make localmodconfig. Have a look at my kernel26-ck package (in my sig) - pay attention to the notes and warnings about it. You might also want to grab/install the modprobed_db package from the AUR which will keep track of your modules and which ones you actually need. Note that until 2.6.37, the make localmodconfig isn't quiet right. Again, see my PKGBUILD which I have commented with links. Note that my PKGBUILD uses the git version of the script that make localmodconfig calls which is fixed and will be included in 2.6.37.
Enjoy!
Ok so i looked into that and i just finished compiling with makepkg -s and now in the dir im in i get this output with ls
0001-bfq_iosched-block-prepare_IO_context_code-v1-2.6.36.patch kernel26-ck-2.6.36.2-5-i686.pkg.tar.xz patch-2.6.36-ck2.bz2
0002-bfq_iosched-block-add-cgroups-kconfig-and-build-bits-for-BFQ-v1-2.6.36.patch kernel26-ck-headers-2.6.36.2-5-i686.pkg.tar.xz pkg
0003-bfq_iosched-block-introduce_BFQ-v1-2.6.36.patch kernel26.install PKGBUILD
2.6.36-ck2-bfs-360.patch kernel26.preset src
config linux-2.6.36.tar.bz2 streamline_config.pl.new
config.x86_64 patch-2.6.36.2-1-ARCH.bz2
(sorry if thats really messy) and i just wanted to be sure that all im pacman -U'ing is kernel26-ck-2.6.36.2-5-i686.pkg.tar.xz
Offline
Are you really asking which of those files is an Arch package?
Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.
Offline
@markbabc - It's a split package making the kernel and headers. Just do an ls *.xz to see the packages.
...I hope didn't just you edit the PKGBUILD and enable the "_localmodcfg" option did you? You really need run the modprobed_db package for at least a week or so and let it see exactly which modules you tend to use (i.e. mount every type of filesystem you will use, use all types of USB devices, crypt modules, etc. etc.); once you compile with that option, you will only get the modules that are currently probed. It took me several iterations over 2 months or so before I captured all the modules I need for my system (I think).
Are you really asking which of those files is an Arch package?
@markbabc - the main purpose for pointing you to the package was for you to read the comments and browse the links therein (re-read my post). I mean to offense by this next statement: if you're unsure which of the files in the directory are the packages, you'll probably find yourself in trouble down the road...
Last edited by graysky (2010-12-25 12:28:57)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
If you really want to learn, you need to do it the hard way: disable what you think you don't need, build your kernel, point your bootloader to it, keep your regular kernel as a backup. If your kernel doesn't boot, reboot with the regular kernel, fix your kernel.
Repeat process.
Yes, it will take time, but you'll learn from it. Trust me. I've done it myself.
Got Leenucks? :: Arch: Power in simplicity :: Get Counted! Registered Linux User #392717 :: Blog thingy
Offline
Ok so im compiling my own custom kernel just to see if i can do it and learn more about the linux kernel.
Im noticing that it has ALOT of drivers and i cant imagine i would need all them if this was just a personal kernel only going to be used on one system of which its hardware will never change. When in the config (nconfig) i didnt see any options to not including some drivers so i was wondering if it was possible?
Also i heard about people loading modules they use into their kernel to improve performance and i was wondering how to do this, i saw nothing in the wiki and couldnt find anything in the forums.
You do know that almost all of those are built as modules, and are not loaded into kernel space unless really needed?
Evil #archlinux@libera.chat channel op and general support dude.
. files on github, Screenshots, Random pics and the rest
Offline
Also i heard about people loading modules they use into their kernel to improve performance and i was wondering how to do this, i saw nothing in the wiki and couldnt find anything in the forums.
Ah, I glanced over that, it's called make localyesconfig. See this.
1.8. Easy local kernel configuration
Most people uses the kernel shipped by distros - and that's good. But some people like to compile their own kernels from kernel.org, or maybe they like following the Linux development and want to try it. Configuring your own kernel, however, has become a very difficult and tedious task - there're too many options, and some times userspace software will stop working if you don't enable some key option. You can use a standard distro .config file, but it takes too much time to compile all the options it enables.
To make the process of configuration easier, a new build target has been added: make localmodconfig. It runs "lsmod" to find all the modules loaded on the current running system. It will read all the Makefiles to map which CONFIG enables a module. It will read the Kconfig files to find the dependencies and selects that may be needed to support a CONFIG. Finally, it reads the .config file and removes any module "=m" that is not needed to enable the currently loaded modules. With this tool, you can strip a distro .config of all the unuseful drivers that are not needed in our machine, and it will take much less time to build the kernel. There's an additional "make localyesconfig" target, in case you don't want to use modules and/or initrds.
...it's unclear to me how hard-coding the modules into the kernel will boost performance though.
Last edited by graysky (2010-12-25 14:00:59)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
Are you really asking which of those files is an Arch package?
No, ik which ones are packages i just didnt know if i needed the headers one but i asked in our irc channel and they explained it to me
@graysky i got modprobed_db but i didnt know i had to run it for so long but it makes sense. i will keep it running and recompile in a month or two.
...it's unclear to me how hard-coding the modules into the kernel will boost performance though.
iv heard people say that and the way i rationalized it was that the kernel then doesnt have to find which module it needs to load and already has module x at hand ready to go. But i could be wrong, like i said im still very new to messing with the kernel
EDIT: Im going to mark this as solved because my question has been answered
Last edited by markbabc (2010-12-25 15:40:00)
Offline
iv heard people say that and the way i rationalized it was that the kernel then doesnt have to find which module it needs to load and already has module x at hand ready to go. But i could be wrong, like i said im still very new to messing with the kernel
It won't make your computer perform better, but you might be able to shave a few seconds off your bootup time.
ᶘ ᵒᴥᵒᶅ
Offline
@graysky i got modprobed_db but i didnt know i had to run it for so long but it makes sense. i will keep it running and recompile in a month or two.
You will likely find that something in userland doesn't work and need to recompile much sooner! This happened to me 3 or 4 times. As long as you recognize that you're probably missing a kernel module, and you can reboot into the standard -ARCH kernel and repeat whatever it was you did, depending on the interval you selected for modprobe_db's crontab, you'll get the module(s) in your database and be ready to incorporate them into your new build.
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
You will likely find that something in userland doesn't work and need to recompile much sooner! This happened to me 3 or 4 times. As long as you recognize that you're probably missing a kernel module, and you can reboot into the standard -ARCH kernel and repeat whatever it was you did, depending on the interval you selected for modprobe_db's crontab, you'll get the module(s) in your database and be ready to incorporate them into your new build.
I think i will switch back to the standard arch build for a few weeks and let them just build up (will the modprobed.db build up or does it truncate the file each interval you run it?) and then re-compile (and i see what you mean i just plugged in my usb mouse and it doesnt work) Also just a side but would you recommend the BFQ option? i was thinking of just compiling a separate kernel with it enabled to see if i like it or not but i couldnt find anything of people saying that it actually works.
Offline
Pages: 1