Date: Fri, 17 May 2013 07:25:07 -0400 (EDT) From: Keith White <kwhite@site.uottawa.ca> To: Werner Thie <werner@thieprojects.ch> Cc: freebsd-arm <freebsd-arm@freebsd.org> Subject: Re: Git crash on EABI system. Message-ID: <alpine.BSF.2.00.1305170722350.62496@localhost.my.domain> In-Reply-To: <5195F2CA.2090103@thieprojects.ch> References: <A44A52E5-E878-45CD-B032-F111E5E244BA@freebsd.org> <51949698.80205@thieprojects.ch> <2290084B-D302-4489-BB01-817497901E2B@freebsd.org> <5195F2CA.2090103@thieprojects.ch>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 17 May 2013, Werner Thie wrote: > On 5/16/13 11:04 AM, Tim Kientzle wrote: >> >> On May 16, 2013, at 4:19 AM, Werner Thie wrote: >> >>>> Has anyone else seen this from git on a clang/EABI system? >>>> >>>> Assertion failed: (attr_stack->origin), function prepare_attr_stack, file >>>> attr.c, line 630. >>>> >>>> Program received signal SIGABRT, Aborted. >>>> [Switching to Thread 20c03300 (LWP 100076/git)] >>>> 0x204b842c in thr_kill () from /lib/libc.so.7 >>>> (gdb) bt >>>> #0 0x204b842c in thr_kill () from /lib/libc.so.7 >>>> #1 0x2044157c in raise () from /lib/libthr.so.3 >>>> #2 0x20598130 in abort () from /lib/libc.so.7 >>>> #3 0x20574630 in __assert () from /lib/libc.so.7 >>>> #4 0x00076b28 in ?? () >>>> >>>> I'm planning to do a debug build and see if I can track down any >>>> more details. >>> >>> Hi Tim >>> >>> just built git out of curiosity after your post on the BBone >>> >>> FreeBSD beaglebone 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r250144M: Sat May >>> 4 14:18:20 CEST 2013 >>> root@xtools:/usr/home/wthie/proj/crochet-freebsd/work/obj/arm.armv6/usr/local/src/sys/BEAGLEBONE-NOWITNESS >>> arm >>> >>> git crashes exactly as advertised when cloning a project in >>> >>> Assertion failed: (attr_stack->origin), function prepare_attr_stack, file >>> attr.c, line 630. >> >> Thanks for verifying that. > > Tim > > Maybe you or somebody else can shed some light onto how compiler-rt is used > for the ARM platform, specifically why am I getting a > > missing symbol __clear_cache > > when building ctypes for Python. > > I tried several ways to preset WITH_ARM_EABI on make.conf but the def never > shows up when compiling Python nor one of the other extension modules. I > assume the def is generally set and the missing symbol is courtesy of some > other error/omission. > > Thxs, Werner > > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" To successfully build ctypes for python on arm I have found that the following "works for me": =================================================================== --- contrib/compiler-rt/lib/clear_cache.c (revision 250739) +++ contrib/compiler-rt/lib/clear_cache.c (working copy) @@ -21,6 +21,23 @@ * specified range. */ +/* python ffi routines call it too */ + +#if defined(__arm__) && defined(__clang__) +#pragma redefine_extname __clear_cache_c __clear_cache +void __clear_cache_c(void* start, void* end) +{ + extern int sysarch(int number, void *args); + struct + { + unsigned int addr; + int len; + } s; + s.addr = (unsigned int)(start) & ~0x1f; + s.len = (int)((((unsigned int)end + 0x1f) & ~0x1f) - ((unsigned int)start & ~0x1f)); + (void) sysarch (0, &s); +} +#else void __clear_cache(void* start, void* end) { #if __i386__ || __x86_64__ @@ -37,4 +54,5 @@ #endif #endif } +#endif ...keith
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.1305170722350.62496>