Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 35202

Summary: Random kernel crashes.
Product: Gentoo Release Media Reporter: Martin Pärtel <lagitus>
Component: EverythingAssignee: Gentoo LiveCD Package Maintainers <livecd>
Status: RESOLVED TEST-REQUEST    
Severity: critical    
Priority: High    
Version: unspecified   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Martin Pärtel 2003-12-06 09:38:40 UTC
I've had the basic install cd kernels crash twice already. 
The first time was using the "gentoo" kernel with the option cdcache. While 
/usr/portage/scripts/bootstrap.sh was compiling gcc, the kernel gave an error about a 
NULL pointer access and crashed. Switching between virtual consoles and SysRQ keys 
worked. Then I tried again with the smp kernel and the cdcache option. This time it 
crashed when bootstrap.sh had been working on console 1 for a few minutes and I tried 
the command "rpm" (to see if it was on the basic cd) on console 4. Links was open on 
console 3. SysRQ worked but switching between consoles didn't this time. I wrote some 
things down from the error messages: 
 
modules loaded: nls-iso8859-i, nls_cp437, vfat, fat, 8139too, mii, floppy, serial, isa-pnp, 
cloop, usb-storage, hid, usb-uhci, ehci-hcd, usbcore 
Oops: 0000 
EIP: 0010 
EFLAGS: 00010002 
some SysRQ command also reported: 
Pid 24495, comm: python tainted GF 
 
I checked the CD using md5sum and the memory using memtest - no problems with 
either. It shouldn't be overheating either; the processor is a Pentium 4 and I set the fan 
to maximum before the second attempt with the smp kernel. 

Reproducible: Sometimes
Steps to Reproduce:
It seems to happen quite randomly. 
Actual Results:  
The kernel crashed. 


The make.conf used: 
 
# Copyright 2000-2002 Daniel Robbins, Gentoo Technologies, Inc. 
# Contains local system settings for Portage system 
# Please review 'man make.conf' for more information. 
 
# Build-time functionality 
# ======================== 
# 
# The USE variable is used to enable optional build-time functionality. For 
# example, quite a few packages have optional X, gtk or GNOME functionality 
# that can only be enabled or disabled at compile-time. Gentoo Linux has a 
# very extensive set of USE variables described in our USE variable HOWTO at 
# http://www.gentoo.org/doc/use-howto.html 
# 
# The available list of use flags with descriptions is in your portage tree. 
# Use 'less' to view them:  --> less /usr/portage/profiles/use.desc <-- 
# 
# Example: 
#USE="X gtk gnome -alsa" 
USE="X gtk kde x86 aalib alsa oss acpi -gnome cups curl -crypt -debug dga directfb dvd 
emacs esd gif gstreamer gtk2 icc imlib java jpeg mmx mozilla motif mpeg mysql nas 
ncurses nocd oggvorbis opengl -pcmcia -pda ppds pdflib perl png bindist prelude python 
qt quicktime readline ruby samba sasi sdl slang slp spell sse ssl tcltk tcpd tetex tiff 
truetype unicode usb videos wmf wxwindows xmms xv zlib" 
 
# Host Setting 
# ============ 
# 
# If you are using a Pentium Pro or greater processor, leave this line as-is; 
# otherwise, change to i586, i486 or i386 as appropriate. All modern systems 
# (even Athlons) should use "i686-pc-linux-gnu" 
# 
CHOST="i686-pc-linux-gnu" 
 
# Host and optimization settings  
# ============================== 
# 
# For optimal performance, enable a CFLAGS setting appropriate for your CPU 
# 
# -mcpu=<cpu-type> means optimize code for the particular type of CPU without 
# breaking compatibility with other CPUs. 
# 
# -march=<cpu-type> means to take full advantage of the ABI and instructions 
# for the particular CPU; this will break compatibility with older CPUs (for 
# example, -march=athlon-xp code will not run on a regular Athlon, and 
# -march=i686 code will not run on a Pentium Classic. 
# 
# CPU types supported in gcc-3.2 and higher: athlon-xp, athlon-mp, athlon-4, 
# athlon-tbird, athlon, k6, k6-2, k6-3, i386, i486, i586 (Pentium), i686 
# (PentiumPro), pentium, pentium-mmx, pentiumpro, pentium2 (Celeron), pentium3, 
# and pentium4. Note that Gentoo Linux 1.4 and higher include at least gcc-3.2. 
#  
# CPU types supported in gcc-2.95*: k6, i386, i486, i586 (Pentium), i686 
# (Pentium Pro), pentium, pentiumpro Gentoo Linux 1.2 and below use gcc-2.95* 
# 
# Decent examples: 
# 
#CFLAGS="-mcpu=athlon-xp -O3 -pipe" 
CFLAGS="-O3 -mcpu=pentium4 -funroll-loops -pipe" 
 
# If you set a CFLAGS above, then this line will set your default C++ flags to 
# the same settings. If you don't set CFLAGS above, then comment this line out. 
CXXFLAGS="${CFLAGS}" 
 
# Advanced Masking 
# ================ 
# 
# Gentoo is using a new masking system to allow for easier stability testing 
# on packages. KEYWORDS are used in ebuilds to mask and unmask packages based 
# on the platform they are set for. A special form has been added that 
# indicates packages and revisions that are expected to work, but have not yet 
# been approved for the stable set. '~arch' is a superset of 'arch' which 
# includes the unstable, in testing, packages. Users of the 'x86' architecture 
# would add '~x86' to ACCEPT_KEYWORDS to enable unstable/testing packages. 
# '~ppc', '~sparc', '~sparc64' are the unstable KEYWORDS for their respective 
# platforms. DO NOT PUT ANYTHING BUT YOUR SPECIFIC ~ARCHITECTURE IN THE LIST. 
# IF YOU ARE UNSURE OF YOUR ARCH, OR THE IMPLICATIONS, DO NOT MODIFY THIS. 
# 
ACCEPT_KEYWORDS="x86" 
 
# Portage Directories 
# =================== 
# 
# Each of these settings controls an aspect of portage's storage and file 
# system usage. If you change any of these, be sure it is available when 
# you try to use portage. *** DO NOT INCLUDE A TRAILING "/" *** 
# 
# PORTAGE_TMPDIR is the location portage will use for compilations and 
#     temporary storage of data. This can get VERY large depending upon 
#     the application being installed. 
PORTAGE_TMPDIR="/var/tmp" 
# 
# PORTDIR is the location of the portage tree. This is the repository 
#     for all profile information as well as all ebuilds. This directory 
#     itself can reach 200M. WE DO NOT RECOMMEND that you change this. 
PORTDIR="/usr/portage" 
# 
# DISTDIR is where all of the source code tarballs will be placed for 
#     emerges. The source code is maintained here unless you delete 
#     it. The entire repository of tarballs for gentoo is 9G. This is 
#     considerably more than any user will ever download. 2-3G is 
#     a large DISTDIR. 
DISTDIR="${PORTDIR}/distfiles" 
# 
# PKGDIR is the location of binary packages that you can have created 
#     with '--buildpkg' or '-b' while emerging a package. This can get 
#     upto several hundred megs, or even a few gigs. 
PKGDIR="${PORTDIR}/packages" 
# 
# PORTDIR_OVERLAY is a directory where local ebuilds may be stored without 
#     concern that they will be deleted by rsync updates. Default is not 
#     defined. 
PORTDIR_OVERLAY="/usr/local/portage" 
 
# Fetching files  
# ============== 
# 
# If you need to set a proxy for wget or lukemftp, add the appropriate "export 
# ftp_proxy=<proxy>" and "export http_proxy=<proxy>" lines to /etc/profile if 
# all users on your system should use them. 
# 
# Portage uses wget by default. Here are some settings for some alternate 
# downloaders -- note that you need to merge these programs first before they 
# will be available. 
# 
# Lukemftp (BSD ftp): 
#FETCHCOMMAND="/usr/bin/lukemftp -s -a -o \${DISTDIR}/\${FILE} \${URI}" 
#RESUMECOMMAND="/usr/bin/lukemftp -s -a -R -o \${DISTDIR}/\${FILE} \${URI}" 
# 
# Prozilla (turbo downloader) 
#FETCHCOMMAND='/usr/bin/proz --no-getch -s ${URI} -P ${DISTDIR}' 
 
# Advanced Features 
# ================= 
# 
# MAKEOPTS provides extra options that may be passed to 'make' when a 
#     program is compiled. Presently the only use is for specifying 
#     the number of parallel makes (-j) to perform. The suggested number 
#     for parallel makes is CPUs+1. 
MAKEOPTS="-j2" 
# 
# AUTOCLEAN enables portage to automatically clean out older or overlapping 
#     packages from the system after every successful merge. This is the 
#     same as running 'emerge -c' after every merge. Set with: "yes" or "no". 
AUTOCLEAN="yes" 
# 
# FEATURES are settings that affect the functionality of portage. Most of 
#     these settings are for developer use, but some are available to non- 
#     developers as well. 'buildpkg' is an always-on setting for the emerge 
#     flag of the same name. It causes binary packages to be created of all 
#     packages that are merged. 
FEATURES="sandbox ccache buildpkg" 
# 
# RSYNC_RETRIES sets the number of times portage will attempt to retrieve 
#     a current portage tree before it exits with an error. This allows 
#     for a more successful retrieval without user intervention most times. 
RSYNC_RETRIES="3" 
GENTOO_MIRRORS="rsync://trumpetti.atm.tut.fi/gentoo/ 
ftp://sunsite.cnlab-switch.ch/mirror/gentoo/" 
 
 
The boot CD used: x86-basic-1.4-20030911.iso (MD5 sums checked on burned CD 
also).
Comment 1 Martin Pärtel 2003-12-06 16:04:22 UTC
I remembered something else. The first crash occured when I did "swapoff -a" during compilation of gcc (there was plenty of free memory and only 4Mb of swap was used). The second happened shortly (some minutes I think) after doing swapon. Boostrap.sh finished now that I didn't touch swap.
Comment 2 SpanKY gentoo-dev 2004-04-12 11:46:24 UTC
please try a newer cd
Comment 3 Chris Gianelloni (RETIRED) gentoo-dev 2005-03-25 11:24:49 UTC
Moving these so we can remove the "Install CD" component from "Gentoo Linux".

I apologize to everyone for this spam, but according to the bugzilla developers,
this is the only reasonable way to do this.