2013-03-23 17:34:58

by gene heskett

[permalink] [raw]
Subject: 3.8.3 build error, compiler segfault

Greetings all;

Trying to build a working 3.8.3 kernel, on a *buntu 10.04-4 LTS system here

My usual 'makeit' script didn't report any errors at the end, but the end
trace on screen was obviously incomplete.

Adding a few more echo's to the script, and verifying that every line in it
was terminated with " && \\r" I reran it, and see an error that should
have stopped it right there, but did not:
==========================
CC net/ipv6/icmp.o
net/ipv4/icmp.c:1115: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.4/README.Bugs> for instructions.
make[2]: *** [net/ipv4/icmp.o] Error 1
make[1]: *** [net/ipv4] Error 2
make[1]: *** Waiting for unfinished jobs....
CC drivers/md/bitmap.o
===========================
as can be seen it kept marching, the error never made it to bash.

Much later in the screen trace:
===========================
LD net/ipv6/built-in.o
make: *** [net] Error 2
make: *** Waiting for unfinished jobs....
CC drivers/of/of_mdio.o
============================

And eventually the screen trace ends with the report from the 'time -p'
from the invocation "time -p ./makeit"

I am using ccache, and cc -v says:
gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1)

My major problem in trying to build a newer kernel that the 2.6.32-122-43-
rtai currently running is that at least 50% of the time I run a make
xconfig, the resultant .config saved has had the ext4 support, which this /
partition is, has been removed, so the boot fails with the can't find the
blkid of this partition error message.

Obviously I have more than one error, so how should I proceed?

The system is completely up to date for a 10.04-4 LTS install as of 2 or 3
hours ago.

Thank you.

Cheers, Gene
--
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
My web page: <http://coyoteden.dyndns-free.com:85/gene> is up!
My views
<http://www.armchairpatriot.com/What%20Has%20America%20Become.shtml>
Our swords shall play the orators for us.
-- Christopher Marlowe
I was taught to respect my elders, but its getting
harder and harder to find any...


2013-03-29 13:27:47

by gene heskett

[permalink] [raw]
Subject: Re: 3.8.3 build error, compiler segfault

On Friday 29 March 2013 09:08:27 Tom H did opine:

CCing the lkml too.

> On Thu, Mar 28, 2013 at 10:49 AM, Nils Kassube <[email protected]> wrote:
> > 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.
> >
> >...
> >
> > 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).
>
> /etc/initramfs-tools/modules

And that brings up a chicken/egg problem, as in if it can't access that
UUID containing /etc/modules, how does it read it to find out its supposed
to do early early loads of sata_nv, and possibly i2c_nforce even if they
are in the generated initrd?

Either way I'm screwed.

When I installed 10.04-4 LTS, it had no complaints about my telling it to
format / as ext4. But now the newer kernels seem to have thrown away that
capability by some sort of tom-foolery.

To bring the lkml up to speed on this, it seems that I can set
CONFIG_SATA_NV=y in the .config file for a later kernel all I want, but
then touching that file with either a 'make menuconfig' or a 'make xconfig'
automatically nukes it, so I'm building kernels here that can't find the
UUID of the / partition formatted as ext4, about 5 secs into the boot.
Reset and go back to the only kernel I have that boots, 2.6.32-122.rtai.

Thanks to anyone who has a fix. Perhaps an option passed to make I can put
in my makeit script to build SATA_NV as part of vmlinuz anyway? I'm not
familiar enough with makefile arguments to have a clue what that syntax
might look like. :(

Cheers, Gene
--
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
My web page: <http://coyoteden.dyndns-free.com:85/gene> is up!
My views
<http://www.armchairpatriot.com/What%20Has%20America%20Become.shtml>
I can't understand why a person will take a year or two to write a
novel when he can easily buy one for a few dollars.
-- Fred Allen
I was taught to respect my elders, but its getting
harder and harder to find any...

2013-03-30 10:25:51

by Tom H

[permalink] [raw]
Subject: Re: 3.8.3 build error, compiler segfault

On Fri, Mar 29, 2013 at 9:27 AM, Gene Heskett <[email protected]> wrote:
> On Friday 29 March 2013 09:08:27 Tom H did opine:
>
> CCing the lkml too.
>
>> On Thu, Mar 28, 2013 at 10:49 AM, Nils Kassube <[email protected]> wrote:
>>> 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.
>>>
>>>...
>>>
>>> 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).
>>
>> /etc/initramfs-tools/modules
>
> And that brings up a chicken/egg problem, as in if it can't access that
> UUID containing /etc/modules, how does it read it to find out its supposed
> to do early early loads of sata_nv, and possibly i2c_nforce even if they
> are in the generated initrd?

There's no chicken and egg. "/etc/initramfs-tools/modules" isn't
"/etc/modules". Having your module listed there'll ensure that it's
loaded in the initrd once you re-run mkinitramfs or update-initramfs.