Re: Several regressions and we branch soon.

Doug Evans
2015-06-23T19:03:18Z

On Tue, Jun 23, 2015 at 1:55 PM, Patrick Palka <patrick@parcs.ath.cx> wrote:
> On Tue, Jun 23, 2015 at 2:31 PM, Doug Evans <dje@google.com> wrote:
>> Hi.
>>
>> fyi, I'm seeing regressions in the following tests on amd64-linux.
>>
>> FAIL: gdb.threads/attach-stopped.exp: nonthreaded: attach2 to stopped bt
>> FAIL: gdb.threads/attach-stopped.exp: threaded: attach2 to stopped bt
>> FAIL: gdb.base/attach-pie-noexec.exp: attach
>> FAIL: gdb.base/attach-pie-noexec.exp: info shared
>> FAIL: gdb.base/attach-twice.exp: attach
>> FAIL: gdb.base/attach.exp: attach1, after setting file
>> FAIL: gdb.base/attach.exp: attach1 detach (the program is no longer running)
>> FAIL: gdb.base/attach.exp: attach2, with no file
>> FAIL: gdb.base/attach.exp: after attach2, set should_exit
>> FAIL: gdb.base/attach.exp: continue to breakpoint: postloop (the
>> program is no longer running)
>> FAIL: gdb.base/attach.exp: continue until exit at after attach2, exit
>> (the program is no longer running)
>> FAIL: gdb.base/attach.exp: attach when process' a.out not in cwd
>> FAIL: gdb.base/attach.exp: continue until exit (the program is no
>> longer running)
>> FAIL: gdb.base/attach.exp: starting with --pid (timeout)
>> FAIL: gdb.base/attach.exp: cmdline attach run: run to prompt
>> UNRESOLVED: gdb.base/attach.exp: cmdline attach run: run to main
>> FAIL: gdb.base/break-interp.exp: LDprelinkNOdebugNO:
>> BINprelinkNOdebugNOpieNO: attach: attach main bt
>> FAIL: gdb.base/break-interp.exp: LDprelinkNOdebugNO:
>> BINprelinkNOdebugNOpieYES: attach: seen displacement message as
>> NONZERO
>> ... plus lots more for break-interp.exp ...
>> FAIL: gdb.base/default.exp: info set
>> FAIL: gdb.base/default.exp: show
>> FAIL: gdb.base/dprintf-detach.exp: bai=on ds=gdb dd=on: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=on ds=gdb dd=off: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=on ds=call dd=on: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=on ds=call dd=off: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=on ds=agent dd=on: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=on ds=agent dd=off: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=off ds=gdb dd=on: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=off ds=gdb dd=off: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=off ds=call dd=on: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=off ds=call dd=off: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=off ds=agent dd=on: re-attach to inferior
>> FAIL: gdb.base/dprintf-detach.exp: bai=off ds=agent dd=off: re-attach
>> to inferior
>> FAIL: gdb.base/gnu_vector.exp: call add_singlevecs
>> FAIL: gdb.base/gnu_vector.exp: continue to add_some_intvecs
>> FAIL: gdb.base/gnu_vector.exp: continue to add_some_intvecs (the
>> program is no longer running)
>> FAIL: gdb.base/gnu_vector.exp: set vector return value
>> FAIL: gdb.multi/multi-attach.exp: backtrace 1
>> FAIL: gdb.multi/multi-attach.exp: backtrace 2
>> FAIL: gdb.python/py-sync-interp.exp: attach and where
>> FAIL: gdb.server/ext-attach.exp: backtrace 1
>> FAIL: gdb.server/ext-attach.exp: detach (the program is no longer running)
>> FAIL: gdb.server/ext-attach.exp: backtrace 2
>> FAIL: gdb.server/ext-attach.exp: monitor exit
>> FAIL: gdb.threads/attach-into-signal.exp: nonthreaded: detach (the
>> program is no longer running)
>> UNRESOLVED: gdb.threads/attach-into-signal.exp: nonthreaded: attach
>> (pass 1), pending signal catch
>> FAIL: gdb.threads/attach-into-signal.exp: threaded: thread apply 2
>> print $_siginfo.si_signo
>> FAIL: gdb.threads/attach-into-signal.exp: threaded: detach (the
>> program is no longer running)
>> UNRESOLVED: gdb.threads/attach-into-signal.exp: threaded: attach (pass
>> 1), pending signal catch
>>
>> I haven't root-caused any of them yet.
>> Is anyone else seeing these on amd64-linux?
>
> GDB has not been clean of FAILs for a while right? IIRC I've been
> seeing dozens of FAILs since I started submitting patches to GDB
> (around June 2014). So I wonder how many of these are long-standing
> FAILs not introduced in this development cycle.

GDB has not been clean "since forever".
However, my testing harness takes that into account.
I have lists of tests I expect to see fail for each of my test configs
(fission, no-fission, and so on), and my harness post-processes
gdb.sum to produce a better report of pass/fail.
(using a version of validate_failures.py from gcc)
When something shows up that I haven't seen before,
and I run these tests A LOT, I can tell.

Every one of the above is new(ish - at least new in the
last few months - I've been sidelined for a few reasons
and haven't been running the tests as often as I normally do).