3.8.3 build error, compiler segfault

Nils Kassube kassube at gmx.net
Thu Mar 28 14:49:06 UTC 2013


Gene Heskett wrote:
> On Thursday 28 March 2013 08:02:28 Nils Kassube did opine:
> > Gene Heskett wrote:
> > > On Wednesday 27 March 2013 17:57:43 Nils Kassube did opine:
> > > > Gene Heskett wrote:
> > > So I backtracked to 3.0.19, and had that work, once.  But now I
> > > cannot make it work again because every time I touch the .config
> > > file with a make xconfig, the SOB nukes any and all mention of
> > > support for / on an ext4 formatted drive that needs 'sata_nv'
> > > built in as a starter.> 
> > Are you sure that it needs 'sata_nv' built in? Wouldn't it be
> > sufficient to add it to /etc/modules and run
> 
> It is not in etc modules now, and it works with the linuxcnc kernel,
> 2.6.32-122-rtai.  Do we have a util that can extract a list of what
> modules are builtin to vmlinuz, and from the currant initrd?  That
> would be extremely helpful in configuring a new kernel build. 

I don't know of a particilar tool to extract that info. I can't tell you 
for your -rtai kernel but the standard Ubuntu kernels come with a file 
/boot/config-$(uname -r) which is the .config from the kernel build. 
There you could search for '=y', but it would list more than only parts 
which can be compiled either as module or built-in. I checked the 
contents of the initrd and it seems the file /etc/modules isn't included 
there. Obviously it is run later in the boot sequence, not from the 
initrd. Sorry for that misleading suggestion.

> Presently, i2c_nforce is a dozen entries up from the bottom of the
> lsmod listing, and sata_nv is the bottom entry, with 13 links to it
> ATM.

If you see sata_nv with lsmod, it isn't built-in and obviously it was 
loaded automatically when the hardware was found..

> The problem is that I can edit .config and enable the sata_nv build
> with gedit, but touching it with a "make oldconfig" nukes it, running
> a "make menuconfig" nukes it, and a "make xconfig" nukes it.  And the
> make oldconfig is starting with this kernels working .config unless I
> am doing it wrong.

If you run "make menuconfig", you should check if the option 
CONFIG_SATA_NV is set before you save the configuration. You can find it 
at "Device Drivers" -> "Serial ATA and Parallel ATA drivers" -> "NVIDIA 
SATA support". It should show <*> instead of <M> if you want it built-
in. But maybe you disabled one of the dependencies while wou removed 
unwanted modules?

> So, what are the usual setup pre-req's to do an initial "make
> oldconfig"?
> > > Even a make oldconfdig using this 2.6.32 kernels .config as a
> > > starter
> > > is a non-starter, falling over because it can't find the root
> > > drive's
> > > UUID about 4.9 seconds into the boot.  Same old same old for 2
> > > newer
> > > kernels in between.  Its plain to me that something in the "make
> > > *config" barn is broken.
> > > 
> > > And its hell to try and get rid of the modules I don't need, but
> > > which take another hour to build, with just a 'gedit .config'
> > > session.> 
> > Who cares about the extra modules? They will only waste some MB on
> > your disk, not in memory (if you don't load them). For me it takes
> > more time to remove modules from the configuration than to build
> > them.
> BY building only what I need, build time is cut by 50% or more.
> 
> What cpu do you have?  This is an older, 2.1 Ghz, Phenom 9550, and a
> make - j3 keeps all 4 cores at 70% or more, and 25-30 minutes run
> time.

I use a 2 GHz core 2 duo laptop and it takes about 100 minutes to 
compile a 10.04 kernel package with the original Ubuntu configuration, 
i.e. including all the modules. Deciding for all the modules  if I need 
them or not to remove unnecessary things from the configuration would 
take more than 1 hour, so I leave them all included. But I must admit 
that I don't really care if it would take twice as long because I only 
compile a new kernel when there is an update.

> I have added sata_nv to /etc/modules, and will retest a 3.0.19 build
> using these lines in my "makeit" script to make a new initrd:
> 
> VER=3.0.19
> export MKINITRD=mkinitramfs && \
> $MKINITRD -o initrd-$VER.img && \
> depmod -a -e -F System.map $VER && \
> 
> If something is wrong above, please advise.

While it looks right, I don't think it will help because the contents of 
/etc/modules doesn't seem to be included in the initrd anyway (see 
above). 


Nils





More information about the ubuntu-users mailing list