mirror of
git://git.yoctoproject.org/poky
synced 2026-08-12 20:41:50 +00:00
oeqa/sstatetests: Fix race issue
Under some load conditions, the result event can come back before the command complete event. If that happens, the code would hang indefinitely. Rework the code to wait for both events and avoid the hang. (From OE-Core rev: 8cfc94a4404c54bc73eab9f98d9da1f84c2135ad) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
66f2f710e6
commit
30d88a2043
@ -772,15 +772,16 @@ addtask tmptask2 before do_tmptask1
|
||||
|
||||
def find_siginfo(pn, taskname, sigs=None):
|
||||
result = None
|
||||
command_complete = False
|
||||
tinfoil.set_event_mask(["bb.event.FindSigInfoResult",
|
||||
"bb.command.CommandCompleted"])
|
||||
ret = tinfoil.run_command("findSigInfo", pn, taskname, sigs)
|
||||
if ret:
|
||||
while True:
|
||||
while result is None or not command_complete:
|
||||
event = tinfoil.wait_event(1)
|
||||
if event:
|
||||
if isinstance(event, bb.command.CommandCompleted):
|
||||
break
|
||||
command_complete = True
|
||||
elif isinstance(event, bb.event.FindSigInfoResult):
|
||||
result = event.result
|
||||
return result
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user