LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 10-14-2014, 09:16 AM   #1
colweb
LQ Newbie
 
Registered: Oct 2014
Location: planet Earth
Distribution: Slackware
Posts: 21

Rep: Reputation: Disabled
Slackware 14.1-64 how to create vmlinux-huge-3.10.17


Hi all,

After installing Slackware 14.1-64 I see that vmlinuz-huge-3.10.17 is 6.290 kb in size. And I'm wondering what config file is/was used to create such a big file. And where can I find that config file?

When I compile the kernel (no matter what config file I use), the biggest vmlinux that I can create is about half the size.

greetings,
Colweb
 
Old 10-14-2014, 09:24 AM   #2
frushiyama
Member
 
Registered: Oct 2010
Location: Brazil, SP - Cosmópolis
Distribution: Slackware
Posts: 171

Rep: Reputation: 40
Hi colweb, in the source dir:
ftp://ftp.osuosl.org/pub/slackware/s...14.1/source/k/
The config file for the huge:
ftp://ftp.osuosl.org/pub/slackware/s...ge-3.10.17.x64
 
Old 10-14-2014, 09:53 AM   #3
GazL
LQ Veteran
 
Registered: May 2008
Posts: 7,014

Rep: Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144Reputation: 5144
Depends on how much you build-in as modules. Slackware's generic kernel runs in at 3,372k. My hand crafted 'custom' kernel runs in at 4,164k, which looks bigger but I build-in almost everything I want and have far fewer kernel modules as a result.
 
Old 10-14-2014, 11:04 AM   #4
keefaz
LQ Guru
 
Registered: Mar 2004
Distribution: Slackware
Posts: 6,552

Rep: Reputation: 872Reputation: 872Reputation: 872Reputation: 872Reputation: 872Reputation: 872Reputation: 872
Quote:
Originally Posted by GazL View Post
4,164k... I build-in almost everything I want and have far fewer kernel modules as a result.
I just configure some filesystems and sata drivers as built-in but always end with a ~4.2MB kernel file size, I guess I need to remove more features
 
Old 10-14-2014, 11:31 AM   #5
colweb
LQ Newbie
 
Registered: Oct 2014
Location: planet Earth
Distribution: Slackware
Posts: 21

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by frushiyama View Post
Well, I did download that source and places config-huge-3.10.17.x64 in the same directory. Of course, I copied it to .config and then did make -j200

After a very long time (dual core 2.66 Ghz machine) I have a vmlinux that is 27270182 bytes (26 MiB). That's 4.2 times bigger then vmlinuz-huge.3.10.17 as found in /boot.

Still wondering what Pat used to create the vmlinuz-huge that is in /boot and where I can find that config file.

Last edited by colweb; 10-14-2014 at 11:33 AM.
 
Old 10-14-2014, 11:42 AM   #6
frushiyama
Member
 
Registered: Oct 2010
Location: Brazil, SP - Cosmópolis
Distribution: Slackware
Posts: 171

Rep: Reputation: 40
Quote:
Originally Posted by colweb View Post
Well, I did download that source and places config-huge-3.10.17.x64 in the same directory. Of course, I copied it to .config and then did make -j200

After a very long time (dual core 2.66 Ghz machine) I have a vmlinux that is 27270182 bytes (26 MiB). That's 4.2 times bigger then vmlinuz-huge.3.10.17 as found in /boot.

Still wondering what Pat used to create the vmlinuz-huge that is in /boot and where I can find that config file.
You did not run make oldconfig ?
It is your premise but why 200 multiple jobs on a dual core? Just curious because i have a dual core machine too.
 
Old 10-14-2014, 12:26 PM   #7
colweb
LQ Newbie
 
Registered: Oct 2014
Location: planet Earth
Distribution: Slackware
Posts: 21

Original Poster
Rep: Reputation: Disabled
No, didn't run make oldconfig.

I thought that if there is a .config file you don't need to run make oldconfig. Maybe I'm wrong here.

200 multiple jobs to speed things up. Just doing make takes forever. Make -j did run out of memory (while it has 6 gig intern and 6 gig swap).
 
Old 10-14-2014, 12:49 PM   #8
frushiyama
Member
 
Registered: Oct 2010
Location: Brazil, SP - Cosmópolis
Distribution: Slackware
Posts: 171

Rep: Reputation: 40
I always follow some parts of http://docs.slackware.com/howtos:sla...nd_configuring when i build my kernels.
From the link
Quote:
Run make oldconfig in the kernel source directory so that the defaults are used from the .config file you just installed.
Maybe what you built is the whole kernel (with what all config to default?)...
 
Old 10-14-2014, 12:51 PM   #9
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,182

Rep: Reputation: Disabled
Just use a provided -generic kernel and be happy.

Unless you need to build you own, of course, but unless I missed something you didn't state that need yet.

Last edited by Didier Spaier; 10-14-2014 at 01:03 PM.
 
Old 10-14-2014, 01:38 PM   #10
colweb
LQ Newbie
 
Registered: Oct 2014
Location: planet Earth
Distribution: Slackware
Posts: 21

Original Poster
Rep: Reputation: Disabled
Usually I build my own kernel. And currently it is about 2.8 MiB.

It is not that I need to build vmlinuz-huge but when you do a clean install of 14.1-64 you would expect to be able to build both the huge and generic kernels that are installed in /boot

There are 2 config files in /boot as well and I tried both of them. But no matter what I tried, it never creates the same 6.1 MiB vmlinuz-huge file. Why not? Is /boot/config-huge-3.10.17 not the config file that is used to create vmlinuz-huge?
 
Old 10-14-2014, 01:51 PM   #11
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,182

Rep: Reputation: Disabled
The procedure used by Pat is here.
 
Old 10-14-2014, 02:08 PM   #12
rogan
Member
 
Registered: Aug 2004
Distribution: Slackware
Posts: 216

Rep: Reputation: 117Reputation: 117
Quote:
Originally Posted by colweb View Post
Usually I build my own kernel. And currently it is about 2.8 MiB.

It is not that I need to build vmlinuz-huge but when you do a clean install of 14.1-64 you would expect to be able to build both the huge and generic kernels that are installed in /boot

There are 2 config files in /boot as well and I tried both of them. But no matter what I tried, it never creates the same 6.1 MiB vmlinuz-huge file. Why not? Is /boot/config-huge-3.10.17 not the config file that is used to create vmlinuz-huge?
There are a few steps to carry out:
cd /usr/src/linux
make mrproper
cp /boot/config-huge-3.10.17 .config
make oldconfig
and/or make menuconfig and add/remove the stuff you want/don't want
make -j(number of processors*cores on your computer NOT more) bzImage

Now go check the size of arch/x86/boot/bzImage:
ls -l arch/x86/boot/bzImage

Last edited by rogan; 10-14-2014 at 02:09 PM.
 
Old 10-18-2014, 03:10 AM   #13
colweb
LQ Newbie
 
Registered: Oct 2014
Location: planet Earth
Distribution: Slackware
Posts: 21

Original Poster
Rep: Reputation: Disabled
I want to thank you all for telling me how to compile a kernel.

But... so far, none of you could tell me what to do to create an exact copy of the huge kernel found in /boot.

Even if I follow the steps that Pat uses, it doesn't create the same file. And please take notice: I don't need to re-create the same file, I'm just wondering what to do to create the same thing.

If anybody managed to re-create the same file, please don't hesitate to post how you did it.
 
Old 10-18-2014, 03:56 AM   #14
pamu1
LQ Newbie
 
Registered: Oct 2013
Posts: 20

Rep: Reputation: Disabled
Maybe Pat has a special configuration file. For the purposes of the new edition of Slackware.
Or something in your machine is wrong
 
Old 10-18-2014, 05:40 AM   #15
55020
Senior Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 1,307
Blog Entries: 4

Rep: Reputation: Disabled
When I use the documented procedure, arch/x86/boot/bzImage is 6438016 bytes. /boot/vmlinuz-huge-3.10.17 is 6441264 bytes. That's 3248 bytes difference. That's plenty close enough.

If you want a bit-for-bit exactly reproducible executable, that is not possible without the use of experimental tools. There are multiple sources of nondeterminism; date and time stamps are just one example. We already had another thread about that this week (here). If you want to know more, look at https://wiki.debian.org/ReproducibleBuilds and https://wiki.debian.org/SameKernel
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Slackware 14.0 installed with HUGE.S does not load modules Yaakov Ben-Avraham Slackware 18 02-14-2013 07:22 AM
Slackware 13.1 huge smp is not huge cs_strong Slackware 4 11-16-2010 07:41 AM
Can't boot 12.1 - How to re-create huge initrd? JustInterested Slackware 10 10-17-2008 07:48 PM
Huge /etc/profile problem in Slackware 10.0 digitalbrush Slackware 3 01-28-2005 05:52 PM
Huge icons and no wireless slackware 9.0 jzneff Linux - Newbie 2 03-26-2004 08:01 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 07:08 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration