QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1672|回复: 0

内核启动问题

[复制链接]
发表于 2006-12-12 18:51:05 | 显示全部楼层 |阅读模式
我用的S3C2410,linux2.4内核,cramfs作为根文件系统,将norflash分三个区,分别放bootloader,kernel,cramfs .我的问题是在系统启动后,挂载文件后,执行到解压文件系统后就死机了,(在执行unlock_kernel()函数内出错),蜂鸣器狂叫。从屏幕打印信息看,似乎在读取cramfs时也不正常,只读了两个16K且不连续。屏幕打印信息:
Uncompressing Linux................................................................ done, booting the kernel.

Linux version 2.4.18-rmk7-pxa1 ([email protected]) (gcc version 2.95.3 20010315 (release)) #47 二 12月 12 15:55:49 CST 2006

CPU: ARM/CIRRUS Arm920Tsid(wb) revision 0

Machine: Samsung-SMDK2410

On node 0 totalpages: 2048

zone(0): 2048 pages.

zone(1): 0 pages.

zone(2): 0 pages.

Kernel command line:  root=/dev/mtdblock2 load_ramdisk=0 init=/linuxrc console=ttyS0 mem=8M devfs=mount

DEBUG: timer count 15626

Console: colour dummy device 80x30

Calibrating delay loop... 99.94 BogoMIPS

Memory: 8MB = 8MB total

Memory: 5884KB available (1723K code, 338K data, 72K init)

Dentry-cache hash table entries: 1024 (order: 1, 8192 bytes)

Inode-cache hash table entries: 512 (order: 0, 4096 bytes)

Mount-cache hash table entries: 512 (order: 0, 4096 bytes)

Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)

Page-cache hash table entries: 2048 (order: 1, 8192 bytes)

POSIX conformance testing by UNIFIX

Linux NET4.0 for Linux 2.4

Based upon Swansea University Computer Society NET3.039

Initializing RT netlink socket

CPU clock = 200.000 Mhz, HCLK = 100.000 Mhz, PCLK = 50.000 Mhz

Initializing S3C2410 buffer pool for DMA workaround

S3C2410 USB Controller Core Initialized

USB Function Character Driver Interface - 0.5, (C) 2001, Extenex Corp.

usbctl: Opened for usb-char

usbctl: Started for usb-char

Starting kswapd

devfs: v1.10 (20020120) Richard Gooch ([email protected])

devfs: boot_options: 0x1

tts/00 at I/O 0x50000000 (irq = 52) is a S3C2410

tts/01 at I/O 0x50004000 (irq = 55) is a S3C2410

tts/02 at I/O 0x50008000 (irq = 5 is a S3C2410

Console: switching to colour frame buffer device 30x40

Installed S3C2410 frame buffer

pty: 256 Unix98 ptys configured

s3c2410-ts initialized

s3c2410-pwm initialized

S3C2410 Real Time Clock Driver v0.1

block: 64 slots per queue, batch=16

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize

cs89x0: no cs8900 or cs8920 detected.Be sure to disable PnP with SETUP

loop: loaded (max 8 devices)

PPP generic driver version 2.4.1

PPP BSD Compression module registered

Linux video capture interface: v1.00

SCSI subsystem driver Revision: 1.00

physmap flash device: 0 at 0

Enter ioremap in asm-mips64//io.h/nFailed to ioremap

s3c2410 flash device: 400000 at 0

Enter ioremap in asm-mips64//io.h/n<6>Search for id74 ea00) interleave(1) type(2)

Search for id74 ea00) interleave(1) type(2)

Search for id74 ea00) interleave(1) type(2)

Search for id74 ea00) interleave(1) type(2)

Search for id74 ea00) interleave(1) type(2)

Search for id74 00) interleave(2) type(1)

Search for id74 00) interleave(2) type(1)

Search for idbf 5b) interleave(2) type(1)

MTD jedec_match(): Check fit 0x00000000 + 0x00400000 = 0x00400000

MTD jedec_match(): 0x00bf 0x235b 4194304KiB doesn't fit

MTD jedec_match(): Check fit 0x00000000 + 0x00100000 = 0x00100000

MTD jedec_match(): check unlock addrs 0x5555 0x2aaa

MTD jedec_match(): check ID's disappear when not in ID mode

MTD jedec_match(): return to ID mode

MTD jedec_probe_chip(): matched device 0xbf,0x5b unlock_addrs: 0x5555 0x2aaa

Found: SST 49LF080A

s3c2410 flash device: Found 2 x8 devices at 0x0 in 16-bit mode

number of JEDEC chips: 1

Using word write method

cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.

Creating 3 MTD partitions on "s3c2410 flash device":

0x00000000-0x00040000 : "reserved for bootloader"

mtd: Giving out device 0 to reserved for bootloader

0x00040000-0x00140000 : "reserved for kernel"

mtd: Giving out device 1 to reserved for kernel

0x00140000-0x00400000 : "reserved for cramfs"

mtd: partition "reserved for cramfs" extends beyond the end of device "s3c2410 flash device" -- size truncated to 0xc0000

mtd: Giving out device 2 to reserved for cramfs

usb.c: registered new driver usbdevfs

usb.c: registered new driver hub

usb-ohci.c: USB OHCI at membase 0xe9000000, IRQ 26

usb.c: new USB bus registered, assigned bus number 1

hub.c: USB hub found

port #1 suspened!

port #0 alived!

hub.c: 1 port detected

usb.c: registered new driver usb_mouse

usbmouse.c: v1.6:USB HID Boot Protocol mouse driver

usb.c: registered new driver keyboard

usbkbd.c: :USB HID Boot Protocol keyboard driver

mice: PS/2 mouse device common for all mice

NET4: Linux TCP/IP 1.0 for NET4.0

IP Protocols: ICMP, UDP, TCP, IGMP

IP: routing cache hash table of 512 buckets, 4Kbytes

TCP: Hash tables configured (established 512 bind 512)

NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.

NetWinder Floating Point Emulator V0.95 (c) 1998-1999 Rebel.com

prepare_namespace()Finished!

mtdblock_open

ok

mtdblock_open

mtdblock: read on "reserved for cramfs" at 0x400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x600, size 0x200

mtdblock_release

ok

mtdblock_open

mtdblock: read on "reserved for cramfs" at 0x0, size 0x200

mtdblock: read on "reserved for cramfs" at 0x200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x800, size 0x200

mtdblock: read on "reserved for cramfs" at 0xa00, size 0x200

mtdblock: read on "reserved for cramfs" at 0xc00, size 0x200

mtdblock: read on "reserved for cramfs" at 0xe00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1000, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1800, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1a00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1c00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x1e00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2000, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2800, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2a00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2c00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x2e00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3000, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3800, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3a00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3c00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x3e00, size 0x200

mtdblock_release

ok

VFS: Mounted root (cramfs filesystem) readonly.

Mounted devfs on /dev

prepare_namespace()Finished!

Freeing init memory: 72K

free_initmem()Finished!

mtdblock: read on "reserved for cramfs" at 0x66000, size 0x200

mtdblock: read on "reserved for cramfs" at 0x66200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x66400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x66600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x66800, size 0x200

mtdblock: read on "reserved for cramfs" at 0x66a00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x66c00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x66e00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67000, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67800, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67a00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67c00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x67e00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68000, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68800, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68a00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68c00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x68e00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69000, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69200, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69400, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69600, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69800, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69a00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69c00, size 0x200

mtdblock: read on "reserved for cramfs" at 0x69e00, size 0x200

Error -3 while decompressing!

c01f830c(-1688056)->c0011000(4096)

Kernel panic: No init found.  Try passing init= option to kernel.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-5-4 07:39 , Processed in 0.092066 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表