Bug 3571

Summary: Deleting a Instruction observer should unblock
Product: frysk Reporter: Mark Wielaard <mark>
Component: generalAssignee: Mark Wielaard <mark>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:
Bug Depends on:    
Bug Blocks: 3500    

Description Mark Wielaard 2006-11-22 17:48:48 UTC
Deleting an Instruction observer should unblock the task if it is the last blocker.
Comment 1 Mark Wielaard 2006-11-22 17:52:53 UTC
Mike said:
deleting the InstructionObserver *does* unblock the task, that's how I run the
task in the sourcewindow normally - but it doesn't seem to unblock the task when
there's a TaskObserver.Code added to the task as well

Which is why I asked if requestUnblock should be the only way it unblocks in
that case; because it works that way
the cycling instruction stepping I mean
Comment 2 Mike Cvet 2006-11-22 17:56:20 UTC
I should have also mentioned that this scenario reproduces #3500, whereas having 
just the TaskObserver.Instruction added to the task (as was the case in that bug 
originally) appears to not kill the process anymore. Likely that the problem was 
better hidden by the kernel update rather than solved.
Comment 3 Mark Wielaard 2006-12-06 14:17:26 UTC
Fixed by:

2006-12-06  Mark Wielaard  <mark@klomp.org>

        Fixes bug #3571
        * frysk-core/frysk/proc/TestTaskObserverInstruction.java: Don't
        explicitly unblock before deletion of observer.
        * LinuxPtraceTaskState.java (BlockedSignal.handleDeleteObservation):
        Explicitly unblock observer.

This now enables to run a testcase that actually describes comment #2 (which is
bug #3500).