[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Separating stdout and stderr
From: |
Christophe Lyon |
Subject: |
Re: Separating stdout and stderr |
Date: |
Tue, 29 Mar 2016 22:09:20 +0200 |
On 26 March 2016 at 15:29, Ben Elliston <address@hidden> wrote:
> I found the problem. The sanitiser execution tests produce a lot of
> output (~20KB on stderr). Somtimes, when EOF is matched in
> standard_wait, there are unmatched characters left in the expect
> buffer. These need to be appended to $output. This has probably
> escaped us until now because execution test output has been very
> short.
>
> I'll do some more testing before checking this in.
>
> Cheers,
> Ben
>
>
> 2016-03-27 Ben Elliston <address@hidden>
>
> * lib/remote.exp (standard_wait): Append any trailing characters
> to $output that may be still in $expect_out(buffer) when eof is
> matched. Remove arbitrary limitation in the ".+" matching case,
> similar to the change to local_exec on 2016-02-17.
>
Thanks for looking at this.
However, a manual of the gcc testsuite indicates that we don't use
standard_wait.
This is confirmed by a full validation in our lab, where I still see
several random
results in several asan and ubsan tests.
So I think this patch is not sufficient.
Christophe.
> diff --git a/lib/remote.exp b/lib/remote.exp
> index e0d9d18..029d934 100644
> --- a/lib/remote.exp
> +++ b/lib/remote.exp
> @@ -1122,17 +1122,15 @@ proc standard_wait { dest timeout } {
> remote_expect $dest $timeout {
> -re ".+" {
> append output $expect_out(buffer)
> - if { [string length $output] > 512000 } {
> - remote_close $dest
> - set status 1
> - } else {
> - exp_continue -continue_timer
> - }
> + exp_continue -continue_timer
> }
> timeout {
> warning "program timed out."
> }
> eof {
> + # There may be trailing characters in the buffer.
> + # Append them, too.
> + append output $expect_out(buffer)
> if {[board_info $dest exists fileid_origid]} {
> global board_info
>
- Separating stdout and stderr, Christophe Lyon, 2016/03/24
- Re: Separating stdout and stderr, Ben Elliston, 2016/03/25
- Re: Separating stdout and stderr, Christophe Lyon, 2016/03/25
- Re: Separating stdout and stderr, Rob Savoye, 2016/03/25
- Re: Separating stdout and stderr, Christophe Lyon, 2016/03/25
- Re: Separating stdout and stderr, Ben Elliston, 2016/03/25
- Re: Separating stdout and stderr, Christophe Lyon, 2016/03/26
- Re: Separating stdout and stderr, Ben Elliston, 2016/03/26
- Re: Separating stdout and stderr,
Christophe Lyon <=
- Re: Separating stdout and stderr, Ben Elliston, 2016/03/29
- Re: Separating stdout and stderr, Christophe Lyon, 2016/03/30
- Re: Separating stdout and stderr, Ben Elliston, 2016/03/30
- Re: Separating stdout and stderr, Maxim Kuvyrkov, 2016/03/30
- Re: Separating stdout and stderr, Christophe Lyon, 2016/03/30
- Re: Separating stdout and stderr, Maxim Kuvyrkov, 2016/03/31
- Re: Separating stdout and stderr, Christophe Lyon, 2016/03/31
- Re: Separating stdout and stderr, Ben Elliston, 2016/03/31
- Re: Separating stdout and stderr, Christophe Lyon, 2016/03/31
- Re: Separating stdout and stderr, Ben Elliston, 2016/03/31