> > The assertion fails only if both l_libname and l_name are NULL. Thanks Andreas, you're right.
Now I have resolved this issue: I need set the value to %rambar1 register in the head.S file. This register is the configure register for SRAM. Although I not use SRAM memory, but it seems I need configure this register, otherwise I will meet the issue before. I'm not sure why this fix will affect run time loader. I guess the toolchain may do some registers' check. Best Regards, Lanttor ------------------------------------------------------------------------ *From:* Andreas Schwab <[email protected]> *Sent:* 02/23/2010 3:23:28 AM +0800 *To:* Lanttor <[email protected]> *CC:* Maxim Kuvyrkov <[email protected]>, Greg Ungerer <[email protected]>, [email protected] *Subject:* One issue during kernel porting on coldfire m5441x: dl_main: Assertion `_rtld_local._dl_rtld_map.l_libname' failed! > Lanttor <[email protected]> writes: > > >> 1206 if (! GL(dl_rtld_map).l_libname && GL(dl_rtld_map).l_name) >> 1207 { >> 1208 /* We were invoked directly, so the program might not have a >> 1209 PT_INTERP. */ >> 1210 _dl_rtld_libname.name = GL(dl_rtld_map).l_name; >> 1211 /* _dl_rtld_libname.next = NULL; Already zero. */ >> 1212 GL(dl_rtld_map).l_libname = &_dl_rtld_libname; >> 1213 } >> 1214 else >> 1215 assert (GL(dl_rtld_map).l_libname); /* How else did we get >> here? */ >> >> >> So I guess GL(dl_rtld_map).l_libname is not NUL and throws an >> exception. The reason is still tracing... >> > > The assertion fails only if both l_libname and l_name are NULL. > > Andreas. > > -- To unsubscribe from this list: send the line "unsubscribe linux-m68k" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
