Hello all,
I have a wiered problem.
following is the Oops by kernel when it tries to exec the shell.
while loading /bin/sh it reads the elf_ex.e_entry as 0x4000b0 this
address is confirmed by
mip-linux-objdump -S bin/sh after mount -o loop on my host.
$mips-linux-objdump -S ./sh
./sh: file format elf32-bigmips
Disassembly of section .text:
00000000004000b0 <.text>:
4000b0: 3c1c0fc1 lui $gp,0xfc1
4000b4: 279c96e0 addiu $gp,$gp,-26912
4000b8: 0399e021 addu $gp,$gp,$t9
During exec there is a page fault of 4000b0 but immediately after
that i get another page fault 0f 0x0fc01788 and following register
dump after it
fails to get a fixup address.
Unable to handle kernel paging request at virtual address
0fc01788, epc == 00000Oops in fault.c:do_page_fault, line 230:
$0 : 00000000 00000000 00000000 00000000
$4 : 00007340 800f0474 00000000 801fa000
$8 : 00000000 00000000 00000000 4c696e75
$12: 78000000 00000000 00000000 00000000
$16: 00000000 00000000 00000000 00000000
$20: 00000000 00000000 00000000 00000000
$24: 00000000 00000000
$28: 6e652900 00000000 00000000 00000000
epc : 00000000
Status: 00000000
Cause : 00000000
Process sh (pid: 1, stackpage=801fa000)
i am confused how come the epc status and cause register all are
reported zero.
whether my regs ( pointer to struct pt_regs) is pointing somewhere
else..?
secondly Is this a problem with shell or kernel..? may be
somewhere the kernel is not checking the
validity of user space address and hence this problem..
to avoid any other posibilities i am running uncached.
any thought
Best Regards,
Atul
__________________________________________________________
Give your Company an email address like
ravi @ ravi-exports.com. Sign up for Rediffmail Pro today!
Know more. http://www.rediffmailpro.com/signup/