start_init data abort
Chao Xie
xiechao.mail at gmail.com
Mon Jul 20 04:46:19 UTC 2009
hi
I am trying to port Freebsd to pxa310. After I have compiled, and get
kernel.bin, i will directly download it to SDRAM, and begin to run it. The
SYSINITs are all right, and i get the final init - start_init. At this time,
a exception of data abort happens.
After i debug it, i find it is caused by subyte at the following code.
/*
* Move out the boot flag argument.
*/
options = 0;
ucp = (char *)p->p_sysent->sv_usrstack;
(void)subyte(--ucp, 0); /* trailing zero */
if (boothowto & RB_SINGLE) {
(void)subyte(--ucp, 's');
options = 1;
}
It seems that subyte will store a byte to user stack of initproc. The user
stack of initproc is started at 0xC0000000. i have checked the page mapping,
and find the veirtual address 0xC0000000 - PAGESIZE to 0xC0000000 is not
mapped. So i get the data abort.
I am confuesed. Where should i map the user stack of initproc? I appreciate
that someone can help me.Thanks.
More information about the freebsd-arm
mailing list