dejagnu
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Curious "buffer_full" line within host_execute


From: David Malcolm
Subject: Re: Curious "buffer_full" line within host_execute
Date: Fri, 10 Oct 2014 12:26:33 -0400

On Fri, 2014-10-10 at 08:03 -0400, David Malcolm wrote:
> [replying on the mailing list, with Ben's permission to quote his
> initial off-list msg]
> 
> On Fri, 2014-10-10 at 10:34 +1100, Ben Elliston wrote:
> > Hi David,
> > 
> > You're right that it looks like it should be full_buffer, not
> > buffer_full.  What happens if you fix that?
> 
> Hacking in a "-d" into runtest's invocation of expect, I see this in the
> log (the 1st time through):
> 
>   expect: does "" (spawn_id exp0) match glob pattern "buffer_full"? no
> 
> i.e. it does indeed treat "buffer_full" as a glob pattern, rather than a
> keyword.
> 
> Fixing the spelling to "full_buffer" doesn't fix the issue (log with -d
> attached)
> 
> However, moving the "expect_before" line to *after* the "spawn"
> invocation does: is the "expect_before" line too early?
> 
> My current belief here is that it's picking up the wrong spawn:
> "spawn_id exp0" doesn't seem to be the right thing for it to be
> listening on (am I right in thinking that's the "default" stdin/stout,
> rather than the not-yet-spawned program?)
> 
> Have been attempting to come up with a more minimal reproducer, but
> failing so far - some kind of heisenbug timing needed to expose this
> issue, perhaps?  Though I reliably hit it with my current setup, with:
>   make check-gcc check-jit -j2
> 
> [my copy of "Exploring Expect" is due for delivery at some point today,
> so may have more conceptual grounding in this in a day
> or so].

I haven't been able to come up with a more minimal reproducer, but for
reference, here's the patch I'm applying locally that fixes the problem.

        * lib/dejagnu.exp (host_execute): Move the expect_before to
        directly after the "spawn", and use "full_buffer", which is an
        expect keyword rather than "buffer_full", which isn't.

Attachment: move-expect_before-and-use-correct-keyword.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]