Git Product home page Git Product logo

Comments (6)

ivmai avatar ivmai commented on July 17, 2024

Hi,

Could somebody propose a workaround? May be Patrick Marlier could help.

Regards.

22 02 2012, 13:11 nicity [email protected]:

GC_mark_from crashes on executable built on MacOSX Lion, which has ASLR option on
Please see detailed description at
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52179


Reply to this email directly or view it on GitHub:
#13

from bdwgc.

nicity avatar nicity commented on July 17, 2024

Per garbage collection implementation fix for D language / MacOSX Lion (dlang/druntime#43) :
When ASLR is enabled, the stack address of Mac OS X is no longer fixed at 0xc000_0000 — actually, often higher than this
pthread_get_stackaddr_np() can be used to retrieve the stack start

from bdwgc.

ivmai avatar ivmai commented on July 17, 2024

Hi Patrick and nicity,

Patrick -
No, thank you - AICS, it is a false alarm, I fixed it a year ago without any knowledge of ASLR (stack pointer hard-coding is a bad thing, and once one man (it was Morten Hermansen) had called GC_INIT on iPad device from non-primordial thread and GC had crushed then - after that I've fixed the code to use pthread_get_stackaddr_np). See part of commit faef04e (related to STACKBOTTOM) - faef04e

nicity -
Am I right that you do not have such problem with (or haven't tested) BDWGC snapshot (or 7.2alpha6 tarball)?

Regards.

22 02 2012, 20:53 nicity [email protected]:

Per garbage collection implementation fix for D language / MacOSX Lion (dlang/druntime#43) :
When ASLR is enabled, the stack address of Mac OS X is no longer fixed at 0xc000_0000 — actually, often higher than this
pthread_get_stackaddr_np() can be used to retrieve the stack start


Reply to this email directly or view it on GitHub:
#13 (comment)

23 02 2012, 00:16 Patrick Marlier [email protected]:

Hi Ivan and Jack,

Unfortunately, I can only have an access to a darwin10 and I cannot
reproduce the bug with it. I will try to ask around me if somebody has a
darwin11. So when I get access to one, I will definitely try to have a
look at it.

Regards,

Patrick.

On 02/22/2012 06:46 AM, Ivan Maidanski wrote:

Hi,

Could somebody propose a workaround? May be Patrick Marlier could help.

Regards.

22 02 2012, 13:11 [email protected]:

GC_mark_from crashes on executable built on MacOSX Lion, which has ASLR option on
Please see detailed description at
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52179


Reply to this email directly or view it on GitHub:
#13

from bdwgc.

nicity avatar nicity commented on July 17, 2024

Thank you for pointing to commit of the fix!
I have patched BDWGC 7.0 and it works.
I tried to use 7.2alpha6 after encountering stack bottom problem but had a problem building it for x86 Mac in the same way as 7.0, namely exporting CXX with -arch i386 before calling configure.

from bdwgc.

ivmai avatar ivmai commented on July 17, 2024

Hi nicity,

Could you explain your problem with -arch in more details? Could you try the recent BDWGC snapshot? (exporting CXXFLAGS="-O2 -arch i386" should work for you but I haven't tried.)

git clone git://github.com/ivmai/bdwgc.git -b release
cd bdwgc
git clone git://github.com/ivmai/libatomic_ops.git -b release
CFLAGS="-O2 -arch i386" CXXFLAGS="-O2 -arch i386" ./configure --enable-cplusplus
make check

Regards.

23 02 2012, 23:43 nicity [email protected]:

Thank you for pointing to commit of the fix!
I have patched BDWGC 7.0 and it works.
I tried to use 7.2alpha6 after encountering stack bottom problem but had a problem building it for x86 Mac in the same way as 7.0, namely exporting CXX with -arch i386 before calling configure.


Reply to this email directly or view it on GitHub:
#13 (comment)

from bdwgc.

nicity avatar nicity commented on July 17, 2024

Thank you, setting both variables CFLAGS and CXXFLAGS worked correctly on release branch of BDWGC

from bdwgc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.