BBB/AM335x: isspace() results in data abort exception in strtol() in strtol.c and strtoul() in strtoul.c

Chris Johns chrisj at rtems.org
Wed Jun 24 05:15:54 UTC 2015


On 24/06/2015 12:44 am, Jarielle Catbagan wrote:
> That is, I'll get started :-)
> 
> On Tue, Jun 23, 2015 at 7:42 AM, Jarielle Catbagan
> <jcatbagan93 at gmail.com> wrote:
>> I totally agree with you.  We should just get right into using the
>> RTEMS toolset.

Just a warning. Make sure you do not link to any of RTEMS's libc
functions. There are '-nostd' type options for the compiler and linker.

RTEMS's libc may or may not work for all sorts of reasons. The RTEMS
libc contains things to handle threading constructs which will not be
present in umon and the code will fail. Avoiding those calls helps but
only a bit. Finding a call works for you gives you no guarantee the call
will work for all boards and architectures. For example memcpy on a
Cortex A9 with a NEON needs the MMU up and running so misaligned
transfers word and if not some calls will exception but not all.

Ok I think I hear "Booo Hisss" which is fair enough but once you get a
suitable collection of the functions umon uses internal to umon it will
be better long term. It removes a delicate variable from the boot loader
and this means umon becomes more portable and more robust.

Chris



More information about the umon-devel mailing list