[lldb-dev] ASLR disabled by default - thoughts?

jingham at apple.com jingham at apple.com
Thu Aug 14 17:38:18 PDT 2014


Turning off ASLR is the default on Mac OS X.  It drives you nuts not to have it off, and a chorus of voices (ours among them) demanded it be turned off in the debugger by default when it first showed up on OS X.  That was back in the gdb days, and we carried the behavior over to OS X.

Jim



> On Aug 14, 2014, at 7:29 AM, Todd Fiala <tfiala at google.com> wrote:
> 
> Hey all,
> 
> Regarding this bug:
> http://llvm.org/bugs/show_bug.cgi?id=20658
> 
> We've been discussing the idea of having ASLR disabled by default when launching processes within lldb.  Currently it looks like the default behavior is to have it enabled, and require explicitly disabling to get that behavior for the process.
> 
> It seems like it might make more sense to have it disabled by default - that way code references would likely be static across debugger runs, which seems to be more what we want when tracking down issues across code runs.
> 
> Any thoughts on this?
> 
> The counterargument I could make for changing it would be (aside from legacy compatibility issues perhaps on the MacOSX/iOS side) - taking the exe out of its native state on the OS.  If a bug is ASLR sensitive, the user might miss it.  And so behavior in the debugger could differ from the exe in its native state.  Not sure how relevant that is for the majority of usages, though.
> 
> I'll be fixing the fact that Linux is ignoring this altogether.  But while I'm in there, I could flip the default if we wanted to do it.  If not globally, we'd probably pursue defaulting it on Linux (and Ed seems to like it for FreeBSD as well, so maybe for not Apple in that case?)
> -- 
> Todd Fiala |	 Software Engineer |	 tfiala at google.com |	 650-943-3180
> 
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev




More information about the lldb-dev mailing list