| To: | nschichan@freebox.fr |
|---|---|
| Subject: | kexec on mips failed |
| From: | "wilbur.chan" <wilbur512@gmail.com> |
| Date: | Mon, 17 Aug 2009 00:20:56 +0800 |
| Cc: | linux-mips@linux-mips.org |
| Dkim-signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=l+d+wDrfBUO4qjJjW6WTuhJINl/e0ndWnys6XtjAx5E=; b=B92PwIcwA/iHfB7tG0eJO+5WcW2F6BUJ8oCOGGkTpmWxykREDkfRXogt+g/OQWd1+J iY0kgahlm9TLcavW3Q+nJvbHXP7YnenbvCdK80qzTN6zXGIgZH0sVuAWpO3H01pLVXwf YHOCHfcMfW3aLMz+LeWBUgYwvJNHfx1n1JEzU= |
| Domainkey-signature: | a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=wzyc55R0WQ7U59X7EyfTFKpZaasUqU8X3EpoXrPwtu7yXeA14yGMO+pjZKvkh3oaLt XhI5U96fUD5d7lAQCb+kxfS/D1q4D2U3Y/GNUXREy0jMLclS47RIJG2LXpYagK0+Cu68 PnwfG/l4cLigpXeAcTj8cOyC/20MFTrheGxdM= |
| Original-recipient: | rfc822;linux-mips@linux-mips.org |
| Sender: | linux-mips-bounce@linux-mips.org |
Hi,Nicolas, I've got some problem with kexec on mips32... in your code for kexec on mips32, there is a relocate_new_kernel function . In the end of this function , it jump to kexec_start_address by 'j s1' Because I changed the kexec-tools code ,in the hope that, it simplely passed the new kernel segment data into the old kernel.(so I didn't pass the command-line segment in, in my code, there is just one segment , segment[0] = kernel_data). So I need to change register s1 to the new kernel entry address, and jump to new kernel directly. In my vmlinux, the entry is 0x802b0000,so I let image->start = 0x2b0000,and invoke relocate_new_kernel. However, whether I changed kexec_start_address to 0x802b0000 or 0x2b0000 , the 'j s1' seemed taking no effect? (I wrote 88 to address0xa1230000 before 'j s1' , it succedd .I also wrote 78 to address 0xa1230000 in the beginning of head.S of the new kernel , but failed. And I reset the board to uboot mode, used 'md 0x802b0400' to display the new kernel in ram, it is identical to the objdump content of the vmlinux. So I guess, this problem lays in the failing of 'j 0x802b0000' or 'j 0x2b0000'. I don't know why 'j s1' failed , any suggestions about this ? Thank you very much. regads, Wilbur |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Fwd: mips 16 bit compilation lead to crash, keshav yadav |
|---|---|
| Next by Date: | [PATCH 1/2] au1000: fix build failure for db1x00 configured for Au1100 SoC, Florian Fainelli |
| Previous by Thread: | Fwd: mips 16 bit compilation lead to crash, keshav yadav |
| Next by Thread: | Re: kexec on mips failed, Florian Fainelli |
| Indexes: | [Date] [Thread] [Top] [All Lists] |