Russell King - ARM Linux wrote: > On Thu, May 10, 2001 at 09:48:21AM +0530, MNShukla wrote: > > I am using arm-linux-gcc compiler tool, obtained from > > http://www.lart.tudelft.nl/lartware/compile-tools/ . > > I am working on EP7212 (arm7tdmi core) eval board and using open linux. > > If I use assembly instruction STRH (write half word in memory), it > > causes kernel-panic only in the address range 0x0203e000 to 0x0203efff > > (kb size) and And I am able ot use this instruction leaving this address > > range. > > Where is the kernel Oops output? > _____ 1# I am not getting the Oops error/output. I had modified the panic file to print the task structure which prints the following information: Kernel panic: Unknown data abort code 4194304 [pc=02000224, *pc=e1c100bc] LR=02000224 Current program :comm[] = ads46 pid=6 exit_code = 0, exit_signal = 17 pdeath_signal = 0 start_data:0 end_data:203cc50 start_code:2000000 end_code:2033bcc start_stack: bfffff50 arg_start=bfffffb2 arg_end=bfffffba 2# Kernel Version: #define LINUX_VERSION_CODE 131585 This is in linux\include\linux\version.h ----- I think it means Linux kernel version = 2.02.01 which I am assuming a stable Linux version. 3# The small test program is shown below. In the Map file, we get address of global variable "mnglobal" as 0x0203dfa4. When we write mnglobal[46] (whose address will be 0x0203e000) it gives kernel panic with information given above (#1). If we access mnglobal[45], there is no problem. Now, if we change STRH by STRB in init.s file and then create init.o, we can write at mnglobal[46 or 47 etc] Thanks in advance.... Regards, -Mahesh --------------------------------------- filie = init.c ---- compiled on ADS v1.1 --------------------------------------- extern short mnglobal[15000]; void init(void) { mnglobal[46] = 1; } /* init */ ------------------------------------------ filie = data.c ----- compiled on ADS v1.1 ------------------------------------------ short mnglobal[15000]; --------------------------------------------- filie = test.c ----- compiled on ADS v1.1 --------------------------------------------- # include <stdio.h> extern short mnglobal[15000]; extern void init(void); int main (void) { init(); mnglobal[0] = 1234 ; printf("\n mnglobal[0] = %d\n", mnglobal[0]); printf("\n &mnglobal[645] = %p\n", &mnglobal[645]); } ----------------------------------------------- All the above 3 files are linked by using arm-linux-gcc. > > |_____| ------------------------------------------------- ---+---+- > | | Russell King [EMAIL PROTECTED] --- --- > | | | | http://www.arm.linux.org.uk/ / / | > | +-+-+ --- -+- > / | THE developer of ARM Linux |+| /|\ > / | | | --- | > +-+-+ ------------------------------------------------- /\\\ |
begin:vcard n:SHUKLA;MAHESH NARAIN tel;cell:98230-34282 tel;fax:+91-20-5671090 tel;home:(0532) 500198 tel;work:+91-20-5671092 (x 225) x-mozilla-html:FALSE org:Cirrus Logic Software (I) Pvt. Ltd version:2.1 email;internet:[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] title:Senior Software Engineer adr;quoted-printable:;;106-A, MUTTHA CHAMBERS,=0D=0ASENAPATI BAPAT ROAD,=0D=0APUNE;PUNE;;;INDIA fn:M.N.Shukla end:vcard
