Re: booting error on db1550 using linux 2.6.12 from linux-mips.org

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

 



thanks, Pete.
I applied the patch, it can mount the root now. Such a delicate patch.

Have you made the HPT371N working for 2.6 tree?  When I want to
compile in the hpt366.c, the kernel will hang up right after it found
the disk drive:

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
HPT371: IDE controller at PCI slot 0000:00:0b.0
PCI: Enabling device 0000:00:0b.0 (0000 -> 0003)
HPT371: chipset revision 2
HPT37X: using 33MHz PCI clock
HPT371: 100% native mode on irq 5
   ide2: BM-DMA at 0x1000-0x1007, BIOS settings: hde:pio, hdf:pio
   ide3: BM-DMA at 0x1008-0x100f, BIOS settings: hdg:pio, hdh:pio
hdg: IBM-DTTA-350840, ATA DISK drive

hang up ................ :(


On 7/1/05, Pete Popov <ppopov@xxxxxxxxxxxxxxxxx> wrote:
> 
> <snip>
> 
> The problem below is caused by a .mips3 directive in xchg_u32. I talked
> to Ralf and Maciel about the problem; Ralf sent a patch but I don't see
> it applied in the tree yet.  Try this:
> 
> Index: include/asm-mips/system.h
> ===================================================================
> RCS file: /home/cvs/linux/include/asm-mips/system.h,v
> retrieving revision 1.85
> diff -u -r1.85 system.h
> --- include/asm-mips/system.h   23 Jun 2005 15:57:18 -0000      1.85
> +++ include/asm-mips/system.h   29 Jun 2005 12:01:54 -0000
> @@ -178,7 +178,9 @@
>                __asm__ __volatile__(
>                "       .set    mips3                                   \n"
>                "1:     ll      %0, %3                  #
> xchg_u32      \n"
> +               "       .set    mips0                                   \n"
>                "       move    %2, %
> z4                                 \n"
> +               "       .set    mips3                                   \n"
>                "       sc      %2, %
> 1                                  \n"
>                "       beqzl   %2,
> 1b                                  \n"
>                ROT_IN_PIECES
> @@ -195,7 +197,9 @@
>                __asm__ __volatile__(
>                "       .set    mips3                                   \n"
>                "1:     ll      %0, %3                  #
> xchg_u32      \n"
> +               "       .set    mips0                                   \n"
>                "       move    %2, %
> z4                                 \n"
> +               "       .set    mips3                                   \n"
>                "       sc      %2, %
> 1                                  \n"
>                "       beqz    %2,
> 1b                                  \n"
>  #ifdef CONFIG_SMP
> 
> 
> 
> Pete
> 
> > eth1: link up
> > ., OK
> > IP-Config: Got DHCP answer from 255.255.255.255, my address is 10.200.1.54
> > IP-Config: Complete:
> >       device=eth0, addr=10.200.1.54, mask=255.255.0.0, gw=10.200.0.1,
> >      host=10.200.1.54, domain=sel, nis-domain=(none),
> >      bootserver=255.255.255.255, rootserver=10.200.0.198, rootpath=
> > Looking up port of RPC 100003/2 on 10.200.0.198
> > Reserved instruction in kernel code in
> > arch/mips/kernel/traps.c::do_ri, line 706[#1]:
> > Cpu 0
> > $ 0   : 00000000 1000fc00 00010000 00000000
> > $ 4   : 812b8e40 00000093 00000000 811df97c
> > $ 8   : 00000040 812b9e40 00000000 812a4e10
> > $12   : 0000ffff 00200200 00100100 812a3ef4
> > $16   : 812b8e40 00000000 812b8e40 00000060
> > $20   : 8042a6e0 00010000 811df90c 80144b20
> > $24   : 00000000 00000001
> > $28   : 811de000 811df8f0 8042a6e0 802facd0
> > Hi    : 00000000
> > Lo    : 00000780
> > epc   : 802ca258 sock_alloc_send_skb+0x74/0x5c8     Not tainted
> > ra    : 802facd0 ip_append_data+0x7c8/0xa34
> > Status: 1000fc03    KERNEL EXL IE
> > Cause : 00800028
> > PrId  : 03030200
> > Modules linked in:
> > Process swapper (pid: 1, threadinfo=811de000, task=80456bf0)
> > Stack : c600c80a 3601c80a 00000000 00000000 00000000 00000000 00000000 00000000
> >         00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
> >         00000074 00000000 812b8e40 00000060 812b8e40 812b9e40 00000060 00000008
> >         812b8e98 802facd0 00000000 00000093 00000000 811df97c 00000000 00000000
> >         00000000 00000000 812b9e40 00000000 00000010 00000000 000005dc 00000000
> >         ...
> > Call Trace:
> >  [<802facd0>] ip_append_data+0x7c8/0xa34
> >  [<8031e3c4>] udp_sendmsg+0x224/0xa08
> >  [<802fa44c>] ip_generic_getfrag+0x0/0xbc
> >  [<802c6558>] sock_sendmsg+0xac/0xf0
> >  [<80334890>] fn_hash_lookup+0x100/0x150
> >  [<80334890>] fn_hash_lookup+0x100/0x150
> >  [<80144b20>] autoremove_wake_function+0x0/0x44
> >  [<802c65c0>] kernel_sendmsg+0x24/0x38
> >  [<80362f48>] xdr_sendpages+0x1dc/0x29c
> >  [<80355284>] xprt_transmit+0xec/0x5f4
> >  [<80144b20>] autoremove_wake_function+0x0/0x44
> >  [<803529c4>] call_transmit+0x1f4/0x2d4
> >  [<80356674>] rpc_delete_timer+0xdc/0x108
> >  [<80357cb4>] __rpc_execute+0xa8/0x54c
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80144b20>] autoremove_wake_function+0x0/0x44
> >  [<8035976c>] rpcauth_bindcred+0xac/0x248
> >  [<80144b20>] autoremove_wake_function+0x0/0x44
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80351d28>] rpc_call_sync+0x8c/0xd8
> >  [<80351d14>] rpc_call_sync+0x78/0xd8
> >  [<80361fdc>] pmap_create+0x74/0xc0
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<803622e8>] rpc_getport_external+0x11c/0x180
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<8041b854>] root_nfs_getport+0x8c/0xa8
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80254000>] snprintf+0x14/0x20
> >  [<8041bb94>] nfs_root_data+0x324/0x3a8
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80128f24>] printk+0x1c/0x28
> >  [<80144b20>] autoremove_wake_function+0x0/0x44
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<8013e444>] flush_workqueue+0x28/0x34
> >  [<80197f58>] path_lookup+0xe0/0x3d0
> >  [<80194c78>] getname+0x28/0xf8
> >  [<80198644>] __user_walk+0x78/0x94
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80409cb0>] mount_root+0xac/0x1c4
> >  [<80144b20>] autoremove_wake_function+0x0/0x44
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80420000>] init_mtdchar+0x20/0x60
> >  [<80409e10>] prepare_namespace+0x48/0x148
> >  [<8013e444>] flush_workqueue+0x28/0x34
> >  [<8010065c>] init+0x200/0x264
> >  [<80100574>] init+0x118/0x264
> >  [<80105e20>] kernel_thread_helper+0x10/0x18
> >  [<80105e10>] kernel_thread_helper+0x0/0x18
> >
> >
> > Code: 10400091  0280f021  c20300a0 <0000102d> e20200a0  1040fffc
> > 00000000  00032823  14a0009f
> > Kernel panic - not syncing: Attempted to kill init!
> >
> >
> >
> >
> > Also, I tried to run 2.4.31 on db1550, but got no luck to get the hard
> > drive working, which also crashes during the probing process:
> > probing for hda: present=0, media=32, probetype=ATA
> > probing for hda: present=0, media=32, probetype=ATAPI
> > probing for hdb: present=0, media=32, probetype=ATA
> > probing for hdb: present=0, media=32, probetype=ATAPI
> > probing for hdc: present=0, media=32, probetype=ATA
> > probing for hdc: present=0, media=32, probetype=ATAPI
> > probing for hdd: present=0, media=32, probetype=ATA
> > probing for hdd: present=0, media=32, probetype=ATAPI
> > probing for hde: present=0, media=32, probetype=ATA
> > probing for hde: present=0, media=32, probetype=ATAPI
> > probing for hdf: present=0, media=32, probetype=ATA
> > probing for hdf: present=0, media=32, probetype=ATAPI
> > probing for hdg: present=0, media=32, probetype=ATA
> > hdg: IBM-DTTA-350840, ATA DISK drive
> > probing for hdh: present=0, media=32, probetype=ATA
> > probing for hdh: present=0, media=32, probetype=ATAPI
> > Unable to handle kernel paging request at virtual address 00000000,
> > epc == 801e77f0, ra == 801e7b48
> > Oops in fault.c::do_page_fault, line 206:
> >
> 
>


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux