Re: Serial driver does not help kernel boot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



My brain also crashed while trying to figure out your problem...

a.   crash output is the outcome...but what are the inputs?   the
background OS is in the bootup message, but did u wrote your own
serial drivers?   what did u do in the serial drivers?
b,   more info on the background OS.....in particular, where (URL) and
what are the steps u followed install the software on the hardware?
c.   crash may be arch specific or indep, so some hardware info please.

sorry i may asking a lot of irrelevant question here...but u have to
decide how much to provide as "relevant"....based on your intuitive
guess on what went wrong....thanks.


On Fri, Feb 27, 2009 at 5:14 AM, Tina S. <tinagsasys@xxxxxxxxx> wrote:
> Hello to all,
>
>                   My kernel crashes while booting. I am pasting the log
> here. I have added debug messages in every function to trace the crash.
>
>                   Please can you tell me whether the function invocation
> sequence in my boot process is correct. Also I want to know what is the
> possible reason for the crash and whether it is related to the serial driver
> and in what way.
>
>
> ## Booting image at c1000000 ...
>    Image Name:   Linux-2.6.19.2
>    Image Type:   ARM Linux Kernel Image (uncompressed)
>    Data Size:    740580 Bytes = 723.2 kB
>    Load Address: c0008000
>    Entry Point:  c0008000
>    Verifying Checksum ... OK
> OK
> ## Loading Ramdisk Image at c2000000 ...
>    Image Name:   ATLASIII DENX RAMDISK IMAGE
>    Image Type:   ARM Linux RAMDisk Image (gzip compressed)
>    Data Size:    1549557 Bytes =  1.5 MB
>    Load Address: 00000000
>    Entry Point:  00000000
>    Verifying Checksum ... OK
> Starting kernel ...
> Uncompressing Linux.................................................. done,
> boot
> ing the kernel.
> Linux version 2.6.19.2 (atrisys-l3@atrisys-l3) (gcc version 4.0.0 (DENX ELDK
> 4.1
>  4.0.0)) #491 Fri Feb 27 15:01:51 IST 2009
> CPU: ARM926EJ-S [41069264] revision 4 (ARMv5TEJ), cr=00053177
> Machine: SiRF AtlasIII HHGPS
> Memory policy: ECC disabled, Data cache writeback
> CPU0: D VIVT write-back cache
> CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
> CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
> Built 1 zonelists.  Total pages: 16256
> Kernel command line: mem=64M console=ttySA0,38400n8 root=/dev/ram0 rw
> user_debug
> =-1
> Trying to install  interrupt handler for IRQ0
> Trying to install  interrupt handler for IRQ1
> Trying to install  interrupt handler for IRQ2
> Trying to install  interrupt handler for IRQ3
> Trying to install  interrupt handler for IRQ4
> Trying to install  interrupt handler for IRQ5
> Trying to install  interrupt handler for IRQ6
> Trying to install  interrupt handler for IRQ7
> Trying to install  interrupt handler for IRQ8
> Trying to install  interrupt handler for IRQ9
> Trying to install  interrupt handler for IRQ10
> Trying to install  interrupt handler for IRQ11
> Trying to install  interrupt handler for IRQ12
> Trying to install  interrupt handler for IRQ13
> Trying to install  interrupt handler for IRQ14
> Trying to install  interrupt handler for IRQ15
> Trying to install  interrupt handler for IRQ16
> Trying to install  interrupt handler for IRQ17
> Trying to install  interrupt handler for IRQ18
> Trying to install  interrupt handler for IRQ19
> Trying to install  interrupt handler for IRQ20
> Trying to install  interrupt handler for IRQ21
> Trying to install  interrupt handler for IRQ22
> Trying to install  interrupt handler for IRQ23
> Trying to install  interrupt handler for IRQ24
> Trying to install  interrupt handler for IRQ25
> Trying to install  interrupt handler for IRQ26
> Trying to install  interrupt handler for IRQ27
> Trying to install  interrupt handler for IRQ28
> Trying to install  interrupt handler for IRQ29
> Trying to install  interrupt handler for IRQ30
> Trying to install  interrupt handler for IRQ31
> PID hash table entries: 256 (order: 8, 1024 bytes)
> Console: colour dummy device 80x30
> Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
> Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
> Memory: 64MB = 64MB total
> Memory: 61824KB available (1204K code, 248K data, 72K init)
> Mount-cache hash table entries: 512
> CPU: Testing write buffer coherency: <6>in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == c006c5d8
> in clear_highpage 1
> the virtual addres == c006c5d8
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> ok
> checking if image is initramfs...it isn't (no cpio magic); looks like an
> initrd
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /initrd.image<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in open.c after open_namei
> in open.c after do_sys_open
> Freeing initrd memory: 1513K
> in init populate_rootfs executed
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == 5c97d8bd
> in clear_highpage 1
> the virtual addres == 5c97d8bd
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> ATLASIII: Initialising architecture
> ATLASIII: Initialising architecture
> NetWinder Floating Point Emulator V0.97 (double precision)
> io scheduler noop registered
> io scheduler anticipatory registered (default)
> io scheduler deadline registered
> io scheduler cfq registered
> In function uart_register_driver
> serialATLASIII uart register end function uart_register_driver
> In function uart_configure_port Calling config of ATALSIII serial
> drivern<6>Hell
> o in here
> Out of function config of ATLASIII
> In uart_configure_port before uart_report_port
> In uart_report_port
> In uart_report_port calling serialATLAS_type
> In uart_type
> calling serilaATLAS_type in uart_type
> Out of type !!!
> In uart_type end
> ttySA0 at MMIO 0x80000000 (irq = 20) is a ATLAS_SERIAL
> In uart_report_port after exiting serialATLAS_type
> Out of function uart_report_port in config of ATLASIII
> In config_uart_port calling set_mctrl of ATLASIII
> In config_uart_port after call end set_mctrl of ATLASIII
> Exiting the function uart_configure_port!!!!
> RAMDISK driver initialized: 1 RAM disks of 16384K size 1024 blocksize
> loop: loaded (max 8 devices)
> mice: PS/2 mouse device common for all mice
> drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
> in init do_basic_setup
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /sys/block/ram0/dev<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == 66737973
> in clear_highpage 1
> the virtual addres == 66737973
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /dev/ram<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /initrd.image<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> RAMDISK: Compressed image found at block 0
> VFS: Mounted root (ext2 filesystem).
> in init before free_initmem
> Freeing init memory: 72K
> in init after free_initmem
> afetr unlock_kernel
> after mark_rodata
> after numa_default_policy
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /dev/console<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> Comes into n_tty_open!!!!!1
> Comes into n_tty_open!!!!!2
> Comes into n_tty_open!!!!!3
> Comes into tty_open!!!!!4
> Comes into tty_open!!!!!4.1
> Comes into tty_open End!!!!!4
> In uart_open
> In uart_get
> In uart_get end
> IN UART_CHANGE_PM
> HELLO!!!!!!!!!!!befor calling uart-startup
> In uart_startup
> In uart_startup1
> In uart_startup2
> Coming here because PORT_UNKNOWN
> In uart_block_til_ready
> In uart_block_til_ready
> In uart_update_termios
> In uart_update_termios end
> in open.c after do_sys_open
> in init before sys_dup()
> in init after sys_dup() both calls executed!!
> in init before all rum_init_process
> Entered in this process run_init_process!!check check!!!!!
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == e3a04000
> in clear_highpage 1
> the virtual addres == e3a04000
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == eb0105cd
> in clear_highpage 1
> the virtual addres == eb0105cd
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == c012ce38
> in clear_highpage 1
> the virtual addres == c012ce38
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /etc/ld.so.cache<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/v5l/fast-mult/half/libcrypt.so.1<6>in open.c in
> do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/v5l/fast-mult/libcrypt.so.1<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/v5l/half/libcrypt.so.1<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/v5l/libcrypt.so.1<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/fast-mult/half/libcrypt.so.1<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/fast-mult/libcrypt.so.1<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/half/libcrypt.so.1<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/libcrypt.so.1<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/libm.so.6<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /lib/libc.so.6<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> in open.c after do_sys_open
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == 0
> in clear_highpage 1
> the virtual addres == 0
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == ecae8f7d
> in clear_highpage 1
> the virtual addres == ecae8f7d
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == bb59fea0
> in clear_highpage 1
> the virtual addres == bb59fea0
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == 130fbf6b
> in clear_highpage 1
> the virtual addres == 130fbf6b
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in prep_new_page 6
> in prep_zero_page 1
> in prep_zero_page 2
> in prep_zero_page 3
> in prep_zero_page 4
> order is 0
> in prep_zero_page 5
> page address passed to clear_highpage == 2223a997
> in clear_highpage 1
> the virtual addres == 2223a997
> in clear_highpage 2
> in clear_highpage 3
> in prep_zero_page 6
> in prep_new_page 7
> in open.c before do_sys_open
> in open.c in do_sys_open
> Device name : /dev/console<6>in open.c in do_filp_open
> in namei.c in function open_namei
> in namei.c before path-lookup-open
> in open.c after open_namei
> In uart_open
> In uart_get
> In uart_get end
> HELLO!!!!!!!!!!!befor calling uart-startup
> In uart_startup
> In uart_startup1
> In uart_startup2
> Coming here because PORT_UNKNOWN
> In uart_block_til_ready
> In uart_block_til_ready
> in open.c after do_sys_open
> In uart_ioctl
> In uart_get_info
> In uart_get_info
> In uart_ioctl
> In uart_close
> In uart_close
> In uart_close
> In uart_chars_in_buffer
> In uart_wait_until_sent
> In uart_wait_until_sent early return
> In uart_shutdown
> uart_shutdown end function
> In uart_flush_buffer
> In uart_flush_buffer
> IN UART_CHANGE_PM
> Unable to handle kernel NULL pointer dereference at virtual address 00000030
> THis is the error pgd = c033c000
> [00000030] *pgd=c0013031, *pte=00000000, *ppte=00000000
> Internal error: Oops: 17 [#1]
> Modules linked in:
> CPU: 0
> PC is at uart_change_pm+0x30/0x54
> LR is at 0x1
> pc : [<c010a0c0>]    lr : [<00000001>]    Not tainted
> sp : c022de5c  ip : 60000093  fp : c022de74
> r10: c2108740  r9 : c2104bfc  r8 : c021b138
> r7 : c0018fb4  r6 : c0018fb4  r5 : c021b120  r4 : 00000003
> r3 : 00000000  r2 : 00000000  r1 : 00003724  r0 : 00000016
> Flags: Nzcv  IRQs on  FIQs on  Mode SVC_32  Segment user
> Control: 5317F
> Table: C033C000  DAC: 00000015
> Process init (pid: 1, stack limit = 0xc022c250)
> Stack: (0xc022de5c to 0xc022e000)
> de40:
> 00000001
> de60: c021b120 c0231800 c022de98 c022de78 c010c7a8 c010a0a0 00000000
> c0231800
> de80: 00000000 00000006 00000000 c022df20 c022de9c c00f8fb4 c010c61c
> 00000000
> dea0: 00000000 c022def4 c022deb4 c0021770 c005af28 c001614c 00000100
> 00000000
> dec0: 00000000 c000d628 000000af 000000af 00000000 c027005f c000d614
> c00160d4
> dee0: 00000000 401b3000 c022df4c c022def8 c005d7e8 c0021650 c2108740
> 00000000
> df00: c0339b7c 00000006 c001afa4 c2104bfc c02193a0 c022df30 c022df24
> c00f94a0
> df00: c0339b7c 00000006 c001afa4 c2104bfc c02193a0 c022df30 c022df24
> c00f94a0
> df40: 00000006 c001afa4 c022c000 40215000 c022df6c c022df60 c006fe98
> c006fd1c
> df60: c022df88 c022df70 c006d4a8 c006fe74 c022ebc8 c022ebc0 c2108740
> c022dfa4
> df80: c022df8c c006da68 c006d44c beba2feb 00000003 0007691c 00000000
> c022dfa8
> dfa0: c001ae00 c006d9f8 beba2feb 00000003 00000002 beba2cf8 00000000
> 40219f78
> dfc0: beba2feb 00000003 0007691c beba2f34 00000001 beba2f34 40215000
> 00000001
> dfe0: 00000000 beba2d10 00003fcc 401ada10 40000010 00000002 c013cce0
> c013cce8
> Backtrace:
> [<c010a090>] (uart_change_pm+0x0/0x54) from [<c010c7a8>]
> (uart_close+0x19c/0x1e4
> )
>  r6 = C0231800  r5 = C021B120  r4 = 00000001
> [<c010c60c>] (uart_close+0x0/0x1e4) from [<c00f8fb4>]
> (release_dev+0x1c8/0x6a0)
>  r8 = 00000000  r7 = 00000006  r6 = 00000000  r5 = C0231800
>  r4 = 00000000
> [<c00f8dec>] (release_dev+0x0/0x6a0) from [<c00f94a0>]
> (tty_release+0x14/0x1c)
> [<c00f948c>] (tty_release+0x0/0x1c) from [<c006fd68>] (__fput+0x5c/0x158)
> [<c006fd0c>] (__fput+0x0/0x158) from [<c006fe98>] (fput+0x34/0x38)
> [<c006fe64>] (fput+0x0/0x38) from [<c006d4a8>] (filp_close+0x6c/0x78)
> [<c006d43c>] (filp_close+0x0/0x78) from [<c006da68>] (sys_close+0x80/0xa0)
>  r6 = C2108740  r5 = C022EBC0  r4 = C022EBC8
> [<c006d9e8>] (sys_close+0x0/0xa0) from [<c001ae00>]
> (ret_fast_syscall+0x0/0x2c)
>  r6 = 0007691C  r5 = 00000003  r4 = BEBA2FEB
> Code: e595200c e1520004 089da870 e5963068 (e5933030)
>  <0>Kernel panic - not syncing: Attempted to kill init!
>
>  Here the kernel crashes. Please help me find the reason, and getting a
> working system.
>
> Thanking you
>
> Tina



-- 
Regards,
Peter Teoh

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux