Re: 2.2.9 won't boot--doesn't return from open("/dev/console"...

Matthew Vanecek (mev0003@unt.edu)
Sun, 13 Jun 1999 21:53:19 +0000


This is a multi-part message in MIME format.
--------------AEA689294DD0DCCD88E755AD
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Mark Hahn wrote:
>
> > Well, it's degraded a little bit. I've tried 2.2.5 to 2.2.9, and none
>
> suffice it to say that there are thousands, probably tens of thousands
> of people running 2.2.9 without problem.

Yes, and I have it running on my workstation, too. But it's the masq
box giving me problems.

>
> > Certainly *somebody* has an idea about what's going on, or how to debug
> > this...
>
> why not begin with the obvious: describe your machine, check your .config, etc.

Well, I did in the original message, but here goes:
It's an AMD 486/120 on a 80486 Deep Green mainboard. Not sure who the
mfr is. 32M of RAM. Currently, it has an SIIG Fast EIDE Controller on
VLB, although I get the same results using an older generic ISA I/O
card, as well. The hard drive is a WD 1.23G, and there is a 3.5" floppy
drive. That's all the storage on the machine. Video is an Orchid
Fahrenheit

I attached my .config to this message, for what it's worth.

The problem: 2.2.x series kernels refuse to boot on the above machine.
They reach the "Freeing unused kernel memory" message and freeze.

Now, I did a little exploration and found where this message was
generated from. So I put in a couple of "printk"s around that area. It
seems like the errant line is the open of /dev/console:

free_initmem();
printk("Finished free_initmem()\n");
unlock_kernel();
printk("Unlocked kernel\n");

if (open("/dev/console", O_RDWR, 0) < 0)
printk("Warning: unable to open an initial console.\n");
printk("Opened console\n");

Now, after the "Freeing unused kernel memory: 32k" (which is generated
in free_initmem()), I get two of my debugs printed out:

Finished free_initmem()
Unlocked kernel

It never does anything with the /dev/console stuff. It's like the open
not only fails, but also fails to return. Now, I'm not sure what could
cause that to happen. /dev/console (now) has complete rw permissions.
Also, I made a little program which opens and closes /dev/console, and
it works fine:

###########################################################################
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>

int main() {
int x = 0;
x = open("/dev/console", O_RDWR, 0);
close(x);
fprintf(stderr,"open returned : %d\n", x);
if (open("/dev/console", O_RDWR, 0) < 0)
printf("Warning: unable to open an initial console.\n");
else
printf("Console opened fine\n");
return 0;
}
###########################################################################

[me2v@ds9 me2v]$ /tmp/otest
open returned : 3
Console opened fine

As you can see, the second open was taken from the kernel code, with the
printk changed to a printf

For what it's worth, the attached .config is only one in a string or
.configs. I've tried it with and without vga mode selection, various
options on the IDE (although that now seems to be a non-issue). I've
been through many reboots trying to track this down, without any luck.
Hopefully, somebody else can shed some light on the problem...

-- 
Matthew Vanecek
Course of Study: http://www.unt.edu/bcis
Visit my Website at http://people.unt.edu/~mev0003
For answers type: perl -e 'print
$i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
*****************************************************************
For 93 million miles, there is nothing between the sun and my shadow
except me. I'm always getting in the way of something...
--------------AEA689294DD0DCCD88E755AD
Content-Type: text/plain; charset=us-ascii;
 name="config"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="config"

# # Automatically generated make config: don't edit #

# # Code maturity level options # CONFIG_EXPERIMENTAL=y

# # Processor type and features # CONFIG_M386=y # CONFIG_M486 is not set # CONFIG_M586 is not set # CONFIG_M586TSC is not set # CONFIG_M686 is not set # CONFIG_MATH_EMULATION is not set CONFIG_MTRR=y # CONFIG_SMP is not set

# # Loadable module support # CONFIG_MODULES=y # CONFIG_MODVERSIONS is not set CONFIG_KMOD=y

# # General setup # CONFIG_NET=y # CONFIG_PCI is not set # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=y # CONFIG_MCA is not set # CONFIG_VISWS is not set CONFIG_SYSVIPC=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_SYSCTL=y CONFIG_BINFMT_AOUT=m CONFIG_BINFMT_ELF=y CONFIG_BINFMT_MISC=y # CONFIG_BINFMT_JAVA is not set CONFIG_PARPORT=y CONFIG_PARPORT_PC=y # CONFIG_PARPORT_OTHER is not set # CONFIG_APM is not set

# # Plug and Play support # # CONFIG_PNP is not set

# # Block devices # CONFIG_BLK_DEV_FD=y CONFIG_BLK_DEV_IDE=y

# # Please see Documentation/ide.txt for help/info on IDE drives # CONFIG_BLK_DEV_HD_IDE=y # CONFIG_BLK_DEV_IDEDISK is not set # CONFIG_BLK_DEV_IDECD is not set # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set # CONFIG_BLK_DEV_IDESCSI is not set # CONFIG_BLK_DEV_CMD640 is not set # CONFIG_IDE_CHIPSETS is not set

# # Additional Block Devices # CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_NBD=m # CONFIG_BLK_DEV_MD is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_INITRD=y # CONFIG_BLK_DEV_XD is not set CONFIG_PARIDE_PARPORT=y # CONFIG_PARIDE is not set CONFIG_BLK_DEV_HD=y

# # Networking options # CONFIG_PACKET=m CONFIG_NETLINK=y # CONFIG_RTNETLINK is not set CONFIG_NETLINK_DEV=y CONFIG_FIREWALL=y # CONFIG_FILTER is not set CONFIG_UNIX=m CONFIG_INET=y CONFIG_IP_MULTICAST=y # CONFIG_IP_ADVANCED_ROUTER is not set # CONFIG_IP_PNP is not set CONFIG_IP_FIREWALL=y # CONFIG_IP_FIREWALL_NETLINK is not set CONFIG_IP_ALWAYS_DEFRAG=y # CONFIG_IP_TRANSPARENT_PROXY is not set CONFIG_IP_MASQUERADE=y

# # Protocol-specific masquerading support will be built as modules. # CONFIG_IP_MASQUERADE_ICMP=y

# # Protocol-specific masquerading support will be built as modules. # CONFIG_IP_MASQUERADE_MOD=y CONFIG_IP_MASQUERADE_IPAUTOFW=m CONFIG_IP_MASQUERADE_IPPORTFW=m CONFIG_IP_MASQUERADE_MFW=m CONFIG_IP_ROUTER=y CONFIG_NET_IPIP=m # CONFIG_NET_IPGRE is not set # CONFIG_IP_MROUTE is not set CONFIG_IP_ALIAS=y # CONFIG_SYN_COOKIES is not set

# # (it is safe to leave these untouched) # CONFIG_INET_RARP=m CONFIG_SKB_LARGE=y # CONFIG_IPV6 is not set

# # # # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_BRIDGE is not set # CONFIG_LLC is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_FASTROUTE is not set # CONFIG_NET_HW_FLOWCONTROL is not set # CONFIG_CPU_IS_SLOW is not set

# # QoS and/or fair queueing # # CONFIG_NET_SCHED is not set

# # SCSI support # # CONFIG_SCSI is not set # CONFIG_SCSI_G_NCR5380_PORT is not set # CONFIG_SCSI_G_NCR5380_MEM is not set

# # Network device support # CONFIG_NETDEVICES=y # CONFIG_ARCNET is not set CONFIG_DUMMY=m # CONFIG_EQUALIZER is not set # CONFIG_ETHERTAP is not set CONFIG_NET_ETHERNET=y # CONFIG_NET_VENDOR_3COM is not set # CONFIG_LANCE is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_RACAL is not set # CONFIG_RTL8139 is not set # CONFIG_YELLOWFIN is not set # CONFIG_ACENIC is not set CONFIG_NET_ISA=y # CONFIG_AT1700 is not set # CONFIG_E2100 is not set # CONFIG_DEPCA is not set # CONFIG_EWRK3 is not set # CONFIG_EEXPRESS is not set # CONFIG_EEXPRESS_PRO is not set # CONFIG_FMV18X is not set # CONFIG_HPLAN_PLUS is not set # CONFIG_HPLAN is not set # CONFIG_HP100 is not set # CONFIG_ETH16I is not set CONFIG_NE2000=y # CONFIG_SEEQ8005 is not set # CONFIG_SK_G16 is not set # CONFIG_NET_EISA is not set # CONFIG_NET_POCKET is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set # CONFIG_DLCI is not set # CONFIG_PLIP is not set CONFIG_PPP=y

# # CCP compressors for PPP are only built as modules. # # CONFIG_SLIP is not set # CONFIG_NET_RADIO is not set # CONFIG_TR is not set # CONFIG_SHAPER is not set # CONFIG_HOSTESS_SV11 is not set # CONFIG_COSA is not set # CONFIG_RCPCI is not set

# # Amateur Radio support # # CONFIG_HAMRADIO is not set

# # IrDA subsystem support # # CONFIG_IRDA is not set

# # ISDN subsystem # # CONFIG_ISDN is not set

# # Old CD-ROM drivers (not SCSI, not IDE) # # CONFIG_CD_NO_IDESCSI is not set

# # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y CONFIG_SERIAL=y # CONFIG_SERIAL_CONSOLE is not set # CONFIG_SERIAL_EXTENDED is not set # CONFIG_SERIAL_NONSTANDARD is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTY_COUNT=256 CONFIG_PRINTER=m # CONFIG_PRINTER_READBACK is not set # CONFIG_MOUSE is not set # CONFIG_QIC02_TAPE is not set # CONFIG_WATCHDOG is not set CONFIG_NVRAM=m CONFIG_RTC=y

# # Video For Linux # # CONFIG_VIDEO_DEV is not set

# # Joystick support # # CONFIG_JOYSTICK is not set # CONFIG_DTLK is not set

# # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set # CONFIG_FT_NORMAL_DEBUG is not set # CONFIG_FT_FULL_DEBUG is not set # CONFIG_FT_NO_TRACE is not set # CONFIG_FT_NO_TRACE_AT_ALL is not set # CONFIG_FT_STD_FDC is not set # CONFIG_FT_MACH2 is not set # CONFIG_FT_PROBE_FC10 is not set # CONFIG_FT_ALT_FDC is not set

# # Filesystems # CONFIG_QUOTA=y CONFIG_AUTOFS_FS=m # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set CONFIG_FAT_FS=m CONFIG_MSDOS_FS=m # CONFIG_UMSDOS_FS is not set CONFIG_VFAT_FS=m CONFIG_ISO9660_FS=m CONFIG_JOLIET=y # CONFIG_MINIX_FS is not set # CONFIG_NTFS_FS is not set # CONFIG_HPFS_FS is not set CONFIG_PROC_FS=y CONFIG_DEVPTS_FS=y # CONFIG_QNX4FS_FS is not set # CONFIG_ROMFS_FS is not set CONFIG_EXT2_FS=y # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set

# # Network File Systems # CONFIG_CODA_FS=m CONFIG_NFS_FS=y CONFIG_NFSD=y # CONFIG_NFSD_SUN is not set CONFIG_SUNRPC=y CONFIG_LOCKD=y CONFIG_SMB_FS=y # CONFIG_SMB_WIN95 is not set CONFIG_NCP_FS=m # CONFIG_NCPFS_PACKET_SIGNING is not set # CONFIG_NCPFS_IOCTL_LOCKING is not set # CONFIG_NCPFS_STRONG is not set # CONFIG_NCPFS_NFS_NS is not set # CONFIG_NCPFS_OS2_NS is not set CONFIG_NCPFS_MOUNT_SUBDIR=y CONFIG_NCPFS_NLS=y CONFIG_NCPFS_EXTRAS=y

# # Partition Types # # CONFIG_BSD_DISKLABEL is not set # CONFIG_MAC_PARTITION is not set # CONFIG_SMD_DISKLABEL is not set # CONFIG_SOLARIS_X86_PARTITION is not set # CONFIG_UNIXWARE_DISKLABEL is not set CONFIG_NLS=y

# # Native Language Support # CONFIG_NLS_CODEPAGE_437=m # CONFIG_NLS_CODEPAGE_737 is not set # CONFIG_NLS_CODEPAGE_775 is not set CONFIG_NLS_CODEPAGE_850=m # CONFIG_NLS_CODEPAGE_852 is not set # CONFIG_NLS_CODEPAGE_855 is not set # CONFIG_NLS_CODEPAGE_857 is not set # CONFIG_NLS_CODEPAGE_860 is not set # CONFIG_NLS_CODEPAGE_861 is not set # CONFIG_NLS_CODEPAGE_862 is not set # CONFIG_NLS_CODEPAGE_863 is not set # CONFIG_NLS_CODEPAGE_864 is not set # CONFIG_NLS_CODEPAGE_865 is not set # CONFIG_NLS_CODEPAGE_866 is not set # CONFIG_NLS_CODEPAGE_869 is not set # CONFIG_NLS_CODEPAGE_874 is not set CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_2=m # CONFIG_NLS_ISO8859_3 is not set # CONFIG_NLS_ISO8859_4 is not set # CONFIG_NLS_ISO8859_5 is not set # CONFIG_NLS_ISO8859_6 is not set # CONFIG_NLS_ISO8859_7 is not set # CONFIG_NLS_ISO8859_8 is not set # CONFIG_NLS_ISO8859_9 is not set # CONFIG_NLS_ISO8859_15 is not set # CONFIG_NLS_KOI8_R is not set

# # Console drivers # CONFIG_VGA_CONSOLE=y # CONFIG_VIDEO_SELECT is not set # CONFIG_MDA_CONSOLE is not set # CONFIG_FB is not set

# # Sound # # CONFIG_SOUND is not set

# # Kernel hacking # # CONFIG_MAGIC_SYSRQ is not set

--------------AEA689294DD0DCCD88E755AD--

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/