Time for turning off gdb by default? Or worse...
Warner Losh
imp at bsdimp.com
Wed Apr 9 03:18:02 UTC 2014
On Apr 8, 2014, at 4:17 PM, Ian Lepore <ian at FreeBSD.org> wrote:
> On Tue, 2014-04-08 at 15:43 -0600, Warner Losh wrote:
>> On Apr 8, 2014, at 3:24 PM, Steve Kargl <sgk at troutmask.apl.washington.edu> wrote:
>>
>>> On Tue, Apr 08, 2014 at 02:34:35PM -0600, Warner Losh wrote:
>>>
>>> (courtesy line wrap to something well below 80 characters)
>>>
>>>> The gdb in the tree seems to be of very limited usefulness
>>>> these days. It doesn?t seem to work on clang-enabled
>>>> architectures w/o building -gdwarf-2, it doesn?t seem to work
>>>> with threaded applications, and on some architectures it
>>>> doesn?t seem to work at all (mips comes to mind, but it may
>>>> have been the two binaries I tried).
>>>>
>>>
>>> (patch removed)
>>>
>>>> to the tree, which will turn gdb off by default. It may make
>>>> more sense to just remove it entirely, but I?m not sure I want
>>>> to go there just yet in case there are things that I?m missing.
>>>> I believe that the port will be adequate for all architectures
>>>> we support, but haven?t tested this directly yet. I do know
>>>> that on amd64, the port just worked, where the in-tree gdb
>>>> was an epic fail.
>>>
>>> I suppose the obvious questions are:
>>>
>>> 1) Is lldb ready for prime time?
>>
>> Doesn’t matter.
>>
>>> 2) What effect does this have on kgdb? Note, /sys/conf/NOTES contains
>>
>> Unfortunately, kgdb isn’t available as a port, so that does matter. It is one thing arguing against this change.
>>
>>> #makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
>>>
>>> Should this be updates to DEBUG=-gdwarf-2?
>>
>> Nope. It should stay exactly as it is. We convert -g to -gdwarf-2 for those compilers that need it.
>
> Only when building the kernel. For userland we've got nothing. gdb
> aside, even addr2line doesn't work on userland binaries anymore. It
> used to be hard to do debugging for arm. Now it's impossible.
I thought I’ve had it work when I used DEBUG_FLAGS=-gdwarf-2 rather than DEBUG_FLAGS=-g.
Warner
More information about the freebsd-arch
mailing list