Hi,

 

Some updates on this - to keep everyone in the loop. First of all though - 
thanks very much for all the ideas and suggestions, they are very much 
appreciated. A special thanks to Vasily, who took the time to get me a copy of 
his kernel (and helped a lot with debugging)!

 

I have now been able to get my OE builds up and running on my h1940 - both 
console-image and opie-image are working as expected. While I admit I was 
sidetracked by qemu-arm not running (and it still doesn't, perhaps an armv4t 
bug there also?), the root cause of this is the OE generated kernel. With the 
kernel that Vasily provided I am able to run with the two rootfs' noted above.

 

If anyone has any things they would like me to try related to the kernel, so we 
can get that working in OE as well, please let me know. I would like to help 
out here if possible, to try to give back to OE (and try to "repay" all the 
help folks gave me).

 

Thanks again,

... Russell

 

 

 

PS: I was able to get gdb to attach to qemu-arm running helloworld, but was not 
able to get any symbol table / code to load with it ... :-(.

 

 

 


On Thu, Jan 6, 2011 08:30  AM, Russell Morris <[email protected]> wrote:


> 
Hi,
> 
> 
> 
> Unfortunately I can't really do much on the target - as I can't get to the 
> point where I can log in (no ssh connection, no local keyboard, etc.) ... 
> :-(. I may be able to try to debug it when run through qemu-arm ... have you 
> ever tried that?
> 
> 
> 
> I'll do some poking around to see if this is possible.
> 
> 
> 
> Thanks,
> 
> ... Russell
> 
> 
> 
> 
> On Thu, Jan 6, 2011 00:15 AM, Khem Raj <[email protected]> wrote:
> 
> 
> > 
> On Wed, Jan 5, 2011 at 8:37 PM, Russell Morris <[email protected]> 
> wrote:
> > > Hi,
> > >
> > > OK, a few more updates ...
> > > - I built using the angstrom-2008.1 distro, but I have the same issue. I 
> > > also ran the helloworld application on the target as well, getting the 
> > > error message "Illegal instruction" (the same as qemu, which I guess is 
> > > good).
> > 
> > 
> > If you can reproduce the issue on target then I would suggest that run
> > the helloworld under gdb or gdbserver on target and see where its
> > happening.
> > 
> > > - I found the .config file that you are referring to, and made this 
> > > change. I built and ran the debug kernel, but no more information is 
> > > provided (other than "Illegal instruction").
> > > - as a side note, I have to edit sumversion.c to fix a "known" issue 
> > > (http://linux.derkeiler.com/Mailing-Lists/Kernel/2007-05/msg08279.html). 
> > > You may want to update this in the master branch.
> > >
> > > Any other ideas?
> > >
> > > Thanks,
> > > ... Russell
> > >
> > >
> > >
> > >
> > > On Wed, Jan 5, 2011 05:07 PM, Russell Morris <[email protected]> 
> > > wrote:
> > >> Hi,
> > >>
> > >>
> > >>
> > >> A few answers / thoughts, below (marked with RMo).
> > >>
> > >>
> > >>
> > >> Thanks for all the help and suggestions!
> > >>
> > >>
> > >>
> > >> ... Russell
> > >>
> > >>
> > >> On Wed, Jan 5, 2011 02:23 PM, Khem Raj <[email protected]> wrote:
> > >>
> > >>
> > >> >
> > >> On Wed, Jan 5, 2011 at 10:49 AM, Russell Morris
> > >> > <[email protected]> wrote:
> > >> > > Hi,
> > >> > >
> > >> > >
> > >> > >
> > >> > > Let me try to answer a few questions in one email ... :-). First of 
> > >> > > all, I tried the patch - unfortunately no joy. It does the same 
> > >> > > thing as earlier builds - let me try to explain, which will 
> > >> > > hopefully also answer the questions below.
> > >> > >
> > >> > >
> > >> > >
> > >> > > I applied the patch, and rebuilt from scratch with the minimal 
> > >> > > distro (deleted the TMPDIR completely before building). I built the 
> > >> > > helloworld-image, to get a statically linked executable, and also 
> > >> > > because it's a pretty small (=faster) build.
> > >> >
> > >> > OK thats bad. Now can you recompile the kernel with user debugging
> > >> > enabled ? and reboot then it will dump lot more info on console on
> > >> > error you need to turn on CONFIG_DEBUG_USER in .config
> > >>
> > >> [RMo] Sorry, a dumb question here - but how do I do this? I can see 
> > >> .config in the temp directory - is this where you want me to modify it?
> > >> >
> > >> > >
> > >> > >
> > >> > >
> > >> > > I then looked at the helloworld executable, and a few interesting 
> > >> > > notes,
> > >> > >
> > >> > > - if I readelf -h helloworld, it reports "Version5 EABI" ... so I 
> > >> > > assume arm5te still?
> > >> >
> > >> > thats EABI version it has nothing to do with ARM architecture versions
> > >>
> > >> [RMo] OK, thanks!
> > >> >
> > >> > >
> > >> > > - if I try to run helloworld using qemu-arm, it runs fine ... with 
> > >> > > no cpu selected (but I did some checking, and the default cpu for 
> > >> > > qemu-arm is the arm5te). If I try to run with a -cpu arm920t option 
> > >> > > I get the error message "qemu: uncaught target signal 4 (Illegal 
> > >> > > instruction) - core dumped"
> > >> > >
> > >> >
> > >> > OK good so it seems there is still some intructions generated which
> > >> > are not supported in armv4t
> > >>
> > >> [RMo] That's what it seems like. To confirm - what is the best way to 
> > >> test this ... with qemu-arm, and/or on the target? Just trying to make 
> > >> sure I test it in a way that makes sense!
> > >> >
> > >> > > - I was not able to run this on the target right now, as I'm not 
> > >> > > near it ... but when I did before I either got a core dump (illegal 
> > >> > > instruction), or it said basically that the file was not found 
> > >> > > (depending on the executable I tried to run).
> > >> >
> > >> > Yes it wont change I think.
> > >>
> > >> [RMo] Definitely agreed.
> > >> >
> > >> > >
> > >> > >
> > >> > >
> > >> > > One more interesting fact - if I go inside TMPDIR, and then inside 
> > >> > > work/armv4t-oe-linux-gnueabi/gcc-cross-4.5-r28.0+svnr167948/gcc-4_5-branch/testsuite/gcc.target/arm,
> > >> > >  there is some sort of test file, with a filename of pr42235.c. 
> > >> > > Oddly enough the first line in this file says ... /* { dg-options 
> > >> > > "-mthumb -O2 -march=armv5te" } */
> > >> >
> > >> >
> > >> > thats just a gcc dejaGNU regression testcase it does not mean anything
> > >> > for compiling the root file system
> > >>
> > >> [RMo] Ok, thanks!
> > >> > >
> > >> > >
> > >> > > Hopefully this all makes sense. I think this says that the 
> > >> > > executable is still targeting an armv5te ... but I could be wrong! 
> > >> > > Unfortunately it wouldn't be the first time I was off base, and 
> > >> > > certaintly it won't be the last ... :-(.
> > >> > >
> > >> > >
> > >> > >
> > >> > > Thanks for all your help!
> > >> >
> > >> > as koen suggested try it with angstrom-2008 and see if that helps too.
> > >>
> > >> [RMo] Absolutely - started already. I thought you were looking for the 
> > >> minimal distro, but I may have misunderstood. In any case, trying this 
> > >> now ... :-).
> > >> >
> > >> > >
> > >> > >
> > >> > >
> > >> > > ... Russell
> > >> > >
> > >> > >
> > >> > >
> > >> > >
> > >> > >
> > >> > >
> > >> > > On Wed, Jan 5, 2011 11:45 AM, Khem Raj <[email protected]> wrote:
> > >> > >
> > >> > >
> > >> > >>
> > >> > > On Wed, Jan 5, 2011 at 7:11 AM, Phil Blundell <[email protected]> wrote:
> > >> > >> > On Wed, 2011-01-05 at 08:48 -0600, Russell Morris wrote:
> > >> > >> >> Just to confirm - have you run these on an armv4t target? Only 
> > >> > >> >> asking because my build completes fine, but the executables 
> > >> > >> >> don't seem to run on the target.
> > >> > >> >
> > >> > >> > What exactly happens when you try to run those executables? Have 
> > >> > >> > you
> > >> > >> > inspected them to see if they look like the right kind of thing, 
> > >> > >> > and/or
> > >> > >> > compared them to working ones?
> > >> > >> >
> > >> > >> > p.
> > >> > >> >
> > >> > >> >
> > >> > >>
> > >> > >>
> > >> > >> yes as Phil asked you should try to localize the offending code in 
> > >> > >> the
> > >> > >> faulty binary. So try to enable
> > >> > >> kernel debugging messages so it tells you where its faulting.
> > >> > >> Secondly if you can take a working system
> > >> > >> and see if the new binary faults in same way ? if not then link the
> > >> > >> binary statically and run it again on working
> > >> > >> system and see if it faults again. If it does then you can debug it
> > >> > >> >
> > >> > >> > _______________________________________________
> > >> > >> > Openembedded-devel mailing list
> > >> > >> > [email protected]
> > >> > >> > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> > >> > >> >
> > >> > >>
> > >> > >> _______________________________________________
> > >> > >> Openembedded-devel mailing list
> > >> > >> [email protected]
> > >> > >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> > >> > >>
> > >> > > _______________________________________________
> > >> > > Openembedded-devel mailing list
> > >> > > [email protected]
> > >> > > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> > >> > >
> > >> >
> > >> > _______________________________________________
> > >> > Openembedded-devel mailing list
> > >> > [email protected]
> > >> > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> > >> >
> > >> _______________________________________________
> > >> Openembedded-devel mailing list
> > >> [email protected]
> > >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> > >>
> > > _______________________________________________
> > > Openembedded-devel mailing list
> > > [email protected]
> > > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> > >
> > 
> > _______________________________________________
> > Openembedded-devel mailing list
> > [email protected]
> > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> > 
> _______________________________________________
> Openembedded-devel mailing list
> [email protected]
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
> 
_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to