This is the mail archive of the mailing list for the GDB project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [PATCH] btrace, testsuite: fix spurious gdb.btrace/tsx.exp fails

> -----Original Message-----
> From: [mailto:gdb-patches-
>] On Behalf Of Pedro Alves
> Sent: Friday, September 18, 2015 2:57 PM
> To: Metzger, Markus T
> Cc:
> Subject: Re: [PATCH] btrace, testsuite: fix spurious gdb.btrace/tsx.exp fails

> > A transaction can be aborted for various reasons.  One such reason is an
> > interrupt, which can happen at any time.
> I was under the impression that the hardware or kernel would retry
> the transaction and that that would be transparent to
> userspace, but sounds like not then.

For RTM you have to provide the abort handler, yourself.  You may retry
the transaction or fall back to more heavy-weight synchronization.

> > This occurs very infrequently.  After I saw this the first time, I had to re-run
> > the test several dozen times to reproduce it again.
> +gdb_test_multiple "record instruction-history" "speculation indication" {
> +    -re "$abort_1.*$gdb_prompt $" {
> +        pass "speculation indication: abort"
> +    }
> +    -re "$abort_2.*$gdb_prompt $" {
> +        pass "speculation indication: abort"
> +    }
> +    -re  "$begin_to_end.*$gdb_prompt $" {
> +        pass "speculation indication: begin..end"
> +    }
> +}
> Note this will cause ping-ponging of PASS messages, resulting
> in spurious changes in test result diffing.  I'd suggest using
> the same message in all cases.


I'll send an updated patch.

Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0,
Managing Directors: Christin Eisenschmid, Prof. Dr. Hermann Eul
Chairperson of the Supervisory Board: Tiffany Doon Silva
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]