2008-04-02  Phil Muldoon  <pmuldoon@redhat.com>
	* Task.java (requestAddWatchObserver): Add writeOnly flag.
	(requestDeleteWatchObserver): Ditto.
	* TaskObserver.java (Watch.updateHit): Add length parameter.

2008-04-01  Phil Muldoon  <pmuldoon@redhat.com>

	* Task.java (requestAddWatchObserver): Publish. 
	requestDeleteWatchObserver: Ditto.

2008-03-31  Stan Cox  <scox@redhat.com>

	* Proc.java (getExe): Remove in favor of getExeFile.  Replace all callers.

2008-03-27  Stan Cox  <scox@redhat.com>

	* Proc.java (getExeFile): New.

2008-03-20  Andrew Cagney  <cagney@redhat.com>

	* ProcTasksAction.java: Rename ProcTasksObserver.
	* ProcTasksObserver.java: Extract ProcTasks from ProcObserver.
	* ProcObserver.java: Delete.
	* StressAttachDetachRapidlyForkingMainTask.java: Update.
	* TestProcTasksObserver.java: Update.

2008-03-20  Petr Machata  <pmachata@redhat.com>

	* TestInstructions.java (Symbol): Pass type, bind, visibility as
	full-fledged objects.

2008-03-17  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserver.java (attachDieingTask(int,boolean)): Do not
	check attached count.
	* Proc.java (requestRefresh()): Delete.
	(sendRefresh()): Make concrete.

	* ProcObserver.java (ProcAction): Move to ...
	* ProcBlockObserver.java: ... here; new interface.
	* StressTestAbandon.java: Update.
	* ProcBlockAction.java: Update.
	* TestProcForceDetach.java: Update.

	* ProcCoreAction.java: Delete.

	* HostObserver.java: Delete.

	* TaskObserver.java (Attached): Move to ...
	* TaskAttachedObserverXXX.java: ... here.
	* StressAttachDetachSignaledTask.java: Ditto.
	* StressAttachDetachRapidlyCloningMainTask.java: Update.
	* StressAttachDetachManyTasks.java: Update.
	* TestTaskObserverInstruction.java: Update.
	* TestTaskObserverInstructionSigReturn.java: Update.
	* TestTaskSyscallObserver.java: Update.
	* TestTaskObserver.java: Update.
	* Host.java: Update.
	* Task.java: Update.
	* TestBreakpoints.java: Update.
	* TestInstructions.java: Update.
	* TestRun.java: Update.

2008-03-15  Andrew Cagney  <cagney@redhat.com>

	* Proc.java (observations): Move to LinuxPtraceProc.
	(addObservation(Object)): Ditto.
	(removeObservation(Object)): Ditto.
	(observationsSize(Object)): Ditto.
	(observationsIterator(Object)): Ditto.
	(requestUnblock(Object)): Ditto.
	
	* Proc.java (creator): Delete.
	(Proc(int,Proc,Host)): Replace Proc(int,Proc,Host,Task).

	* Task.java (creator): Delete.
	(getCreator()): Delete.
	(Task(int,Proc)): Replace Task(int,Proc,Task).
	(Task(Proc)): Replace Task(Proc,TaskObserver.Attached).

2008-03-14  Andrew Cagney  <cagney@redhat.com>

	* Proc.java (quitLatch): Delete.
	
	* Proc.java (retain(Task)): Delete.
	
	* Host.java (taskPool): Delete.
	(add(Task)): Delete.
	(remove(Task)): Delete.
	(removeTasks(Collection)): Delete.
	* Task.java: Update.
	* Proc.java: Update.

	* Proc.java (observableAttachedXXX): Rename observableAttached.
	(observableDetachedXXX): Rename observableDetached.
	* StressAttachDetachRapidlyCloningMainTask.java: Update.
	* StressAttachDetachManyTasks.java: Update.
	* TestTaskObserverDetach.java: Update.

	* Host.java (observableProcRemovedXXX): Delete.
	(remove(Proc)): Delete.
	(ObservableXXX): Delete.

	* TestExec.java (testTaskBlockExec()): Use
	StopEventLoopWhenProcTerminated.

2008-03-13  Mark Wielaard  <mwielaard@redhat.com>

	* TestTaskObserver.java (testDetachExitingMainTask): Enabled
	already fixed test for bug #3737.
	(detachExitingTask): Likewise.

2008-03-13  Andrew Cagney  <cagney@redhat.com>

	* TestExec.java: Use StopEventLoopWhenProcTerminated; inline
	StopEventLoopWhenProcRemoved.

	* TestTaskClonedObserver.java: Use
	StopEventLoopWhenProcTerminated.

	* TestTaskSyscallObserver.java: Use
	StopEventLoopWhenProcTerminated.

	* TestTaskTerminateObserver.java: Do not use
	StopEventLoopWhenProcRemoved.

	* TestProcGet.java: Use StopEventLoopWhenProcTerminated.

2008-03-12  Andrew Cagney  <cagney@redhat.com>

	* Host.java (observableTaskRemovedXXX): Delete.
	(observableTaskAddedXXX): Delete.
	* Proc.java: Update.
	
	* Host.java (observableProcAddedXXX): Delete.

	* TestTaskObserverInstruction.java
	(testFirstInstructionSteppingEngine()):	Delete; move to
	frysk.stepping.TestFirstInstruction.

	* TestTaskObserverInstructionSigReturn.java: Register tasks with
	TearDownProcess.

2008-03-11  Andrew Cagney  <cagney@redhat.com>

	* TestInstructions.java: Add task to tearDown.
	* TestTaskObserverInstruction.java: Ditto.

	* TestRun.java: Update to match StopEventLoopWhenProcTerminated.
	* TestTaskForkedObserver.java: Do not use ProcCounter or
	StopEventLoopWhenProcRemoved.

	* TestFindProc.java (ProcCounter): Delete.
	(doFindProc(SlaveOffspring)): Replace doFindProc(SlaveOffspring,int).

	* TestRun.java: Do not use ProcCounter.  Use
	StopEventLoopWhenProcTerminates.

	* StressTestAbandon.java: Update to match Offspring.
	* TestProcTasksObserver.java: Ditto.
	* TestProcGet.java: Ditto.
	* TestProcForceDetach.java: Ditto.
	* TestMapGet.java: Ditto.
	* TestExec.java: Ditto.
	* TestAbandon.java: Ditto.
	* StressAttachDetachRapidlyCloningMainTask.java: Ditto.

	* TestMemory.java: Delete.

	* SyscallExaminer.java: Delete.

	* Proc.java (getMainTask()): Make abstract.

2008-03-10  Andrew Cagney  <cagney@redhat.com>

	* MemoryMap.java (pathnameOffset): Delete.
	(pathnameLength): Delete.
	* TestMapGet.java: Update.

2008-03-04  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestCreateAttachedProc(...)): Add File exe arg.
	(requestCreateAttachedProc(Proc,TaskObserver.Attached)): New.
	* TestRun.java: Update.

2008-03-03  Andrew Cagney  <cagney@redhat.com>

	* StressAttachDetachSignaledTask.java: Use frysk.config.
	* TestTaskSyscallObserver.java: Ditto.
	* TestTaskObserverInstructionSigReturn.java: Ditto.
	* TestSyscallSignal.java: Ditto.
	* TestSyscallRunning.java: Ditto.
	* TestMemory.java: Ditto.
	* TestBreakpoints.java: Ditto.

2008-02-29  Andrew Cagney  <cagney@redhat.com>

	* ProcLogger.java: Delete.

2008-02-28  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Use frysk.rsl.
	* TestProcTasksObserver.java: Ditto.
	* StressAttachDetachRapidlyForkingMainTask.java: Ditto.
	* SyscallExaminer.java: Ditto.
	* TestTaskObserverDetach.java: Ditto.
	* TestFindProc.java: Ditto.
	* ProcEvent.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.
	* Host.java: Ditto.
	* Task.java: Ditto.
	* ProcBlockAction.java: Ditto.

2008-02-27  Andrew Cagney  <cagney@redhat.com>

	* Id.java: Delete.
	* TaskId.java: Update.

	* ProcEvent.java (getProcFromTaskId()): Delete.
	* Host.java (get(TaskId)): Delete.
	* Proc.java (getMainTask()): Use taskPool, not Host.

	* ProcTasksObserver.java: Use Proc.getMainTask.  Use Log.

	* Proc.java (taskPool): Make private.

	* Task.java (getTaskId()): Make package private.
	* TestTaskSyscallObserver.java: Use Task.getTid().

	* Proc.java (remove(Task)): Make protected.

2008-02-26  Andrew Cagney  <cagney@redhat.com>

	* ProcId.java: Delete.
	* TestId.java: Delete.
	* Proc.java (getId()): Delete.
	(id): Delete.
	
	* Proc.java (Proc): Do not call Host.add(Proc).
	* Host.java (procPool): Delete.
	(add(Proc)): Delete.

	* Host.java (getProc(ProcId)): Delete.

	* Host.java (getSoleProcFIXME()): Delete.

	* ProcBlockAction.java: Use LinuxCoreFactory.

2008-02-20  Phil Muldoon  <pmuldoon@redhat.com>

	* TaskObserver.java: Add watch interface.


2008-02-14  Andrew Cagney  <cagney@redhat.com>

	* Proc.java (pid): New; Pass to constructors.

2008-02-13  Andrew Cagney  <cagney@redhat.com>

	* Task.java (tid): New.  Replace TaskId with "int tid" in
	constructors.

	* TestMapGet.java: Update to match MapsBuilder.

	* Proc.java: Update to match frysk.sys.Signal.
	* TestSyscallSignal.java: Ditto.
	* TestProcTasksObserver.java: Ditto.
	* TestTaskObserver.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.

2008-02-12  Andrew Cagney  <cagney@redhat.com>

	* TestHostGet.java: Update to match frysk.sys.Pid.
	* TestTaskTerminateObserver.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.

	* TestTaskTerminateObserver.java: Update to match frysk.testbed.
	* TestTaskSyscallObserver.java: Update.
	* TestProcGet.java: Ditto.
	* TestExec.java: Ditto.
	* TestTaskClonedObserver.java: Ditto.
	* TestTaskObserverDetach.java: Ditto.
	* TestFindProc.java: Ditto.

2008-02-08  Andrew Cagney  <cagney@redhat.com>

	* Task.java (compareTo(Object)): New.
	* Proc.java (compareTo(Object)): New.
	* Host.java (compareTo(Object)): New.

	* Host.java (getName()): Make abstract.

2008-02-07  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestRefreshXXX()): Delete.
	* ProcBlockAction.java: Update.
	* TestFindProc.java: Update.
	
	* FindProc.java (procNotFound(int)): Replace procNotFound(ProcId).
	* Host.java (requestProc(int,FindProc)): Replace
	requestProc(ProcId,FindProc).
	* ProcBlockAction.java (ProcBlockAction(int)): Replace
	ProcBlockAction(ProcId).
	* TestSyscallRunning.java: Update.
	* TestBreakpoints.java: Update.
	* TestFindProc.java: Update.
	* TestSyscallSignal.java: Update.
	* TestTaskSyscallObserver.java: Update.

2008-01-31  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestRefresh(Set,HostRefreshBuilder)): New.
	* HostRefreshBuilder.java: New.
	* HostObserver.java: Delete.
	* TestRefresh.java: Delete.

2008-01-25  Andrew Cagney  <cagney@redhat.com>

	* TaskObserver.java (Terminated): Replace
	updateTerminated(Task,boolean,int) with
	updateTerminated(Task,Signal,int).
	(Terminating): Replace updateTerminating(Task,boolean,int) with
	updateTerminating(Task,Signal,int).
	* TestTaskObserverInstructionSigReturn.java: Update.
	* TestTaskTerminateObserver.java: Update.
	* TestTaskObserver.java: Update.
	* TestMemory.java: Update.
	* TestBreakpoints.java: Update.
	* TestTaskObserverInstructionAndCode.java: Update.
	* ProcBlockAction.java: Update.
	* ProcTasksObserver.java: Update.
	
	* TestSyscallRunning.java: Use IsaTestbed to get the isa.
	* TestSyscallSignal.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.

	* TestTaskObserver.java: Eliminate uses of
	frysk.sys.Signal.equals(int).

2008-01-24  Andrew Cagney  <cagney@redhat.com>

	* Task.java: Mention that ISA can be null.
	(clearIsa()): Make protected.

	* TaskObserver.java (Signaled): Replace updateSignaled(Task,int)
	with updateSignaled(Task,Signal).
	* TestTaskSyscallObserver.java: Update.
	* StressAttachDetachSignaledTask.java: Update.
	* SyscallExaminer.java: Update.
	* TestMemory.java: Update.
	* TestSyscallSignal.java: Update.
	* TestTaskObserverDetach.java: Update.
	* TestTaskObserverInstructionSigReturn.java: Update.

	* Task.java: Update; Register moved to frysk.isa.registers.
	* LinuxCoreTask.java: Ditto.
	* TestCoreRegs.java: Ditto.
	* TestLinuxCore.java: Ditto.
	* IsaPowerPC.java: Ditto.
	* LinuxIA32.java: Ditto.
	* LinuxPPC32.java: Ditto.
	* LinuxPPC64.java: Ditto.
	* LinuxPtraceTask.java: Ditto.
	* LinuxX8664.java: Ditto.
	* TestRegs.java: Ditto.

	* Task.java: Update; BankRegister moved to frysk.isa.banks.

	* SyscallExaminer.java: Update; Syscall moved to frysk.isa.syscalls.
	* TestSyscallRunning.java: Ditto.
	* TaskObserver.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.

	* Signal.java: Move to frysk.isa.signals.Signal.
	* SignalTable.java: Move to frysk.isa.signals.SignalTable.
	* LinuxSignals.java: Move to frysk.isa.signals.SignalTableFactory.
	* TestSignalTable.java: Move to frysk.isa.signals.TestSignalTable.
	* Task.java: Update.

2008-01-23  Andrew Cagney  <cagney@redhat.com>

	* TestSignalTable.java: New.
	* Task.java (getSignalTable()): New.
	(signalTable()): New.
	* LinuxSignals.java: New file.
	* SignalTable.java: New file.
	* Signal.java: New file.

2008-01-18  Andrew Cagney  <cagney@redhat.com>

	* Task.java (toString()): Print the state.

2008-01-17  Andrew Cagney  <cagney@redhat.com>

	* StressAttachDetachSignaledTask.java (stressSignalStorm(Action))
	(SignalStorm, testBlockedSignalStorm())
	(testUnblockedSignalStorm()): New.

	* TestProcStopped.java: Move to frysk.proc.live.

2008-01-16  Andrew Cagney  <cagney@redhat.com>

	* Task.java (blockers): Delete.
	(getBlockers()): Delete.
	(bogusUseOfInternalBlockersVariableFIXME()): New.
	* TestTaskObserverBlocked.java: Move to frysk.proc.live.
	
	* Task.java (sendrecRegisterBanks()): Delete.
	(getRegisterBanks()): Make abstract.

	* Task.java (getISA()): Make abstract.
	(sendrecISA()): Delete.
	(hasIsa()): Delete.

	* TestIsa.java: Move to frysk.proc.live.TestRuntimeIsa.java.

2008-01-15  Andrew Cagney  <cagney@redhat.com>

	* Task.java (pendingObservations): Move to LinuxPtraceTask.

	* Task.java (TaskStateObservable): Delete.

	* TestIsa.java (DetachedObserver): Delete.
	(testIsa()): Use StatState.
	(testAttachDetachAttachAgainDetachAgainAttachAgainAgain()): Ditto.
	* Task.java (taskStateDetached): Delete.

	* TestTaskObserverDetach.java: Use frysk.testbed.StatState.

	* Task.java (sendrecMemory()): Delete.
	(getMemory()): Make abstract.	

	* Task.java (id): Make private.
	* Host.java: Update.
	* Proc.java: Update.

2008-01-14  Rick Moseley  <rmoseley@redhat.com>

	* Proc.java: Remove requestAbandon() from requestKill().

2008-01-11  Andrew Cagney  <cagney@redhat.com>

	* Task.java (getEntryPointAddress()): Delete.
	
	* TestTaskObserverCode.java: Move to frysk.proc.live.
	* Task.java (getRawMemory()): Move to frysk.proc.live.LiveTask.
	
	* TaskObservation.java: Move to frysk.proc.live.
	* Task.java (handleAddObservation(TaskObserver)): Delete.
	(handleDeleteObservation(TaskObserver)): Delete.

	* UBigInteger.java: Delete.
	* BitfieldAccessor.java: Delete.
	* LongFloat.java: Delete.

	* Task.java (queuedEvents): Delete.

2008-01-10  Phil Muldoon  <pmuldoon@redhat.com>

	* MemoryMap.java (toString): Delete leading space. 

2008-01-08  Andrew Cagney  <cagney@redhat.com>

	* Host.java (getProcIterator()): Delete.
	(getSoleProcFIXME()): New.
	* ProcBlockAction.java: Use Host.getSoleProcFIXME.

2008-01-07  Andrew Cagney  <cagney@redhat.com>

	* Host.java requestProc(ProcId,FindProc): Make abstract.
	(sendRefresh(ProcId,FindProc)): Delete.
	
	* FindProc.java (procFound(Proc)): Replace procFound(ProcId).
	(procNotFound(ProcId)): Replace
	procNotFound(ProcId,RuntimeException).
	* Host.java (requestProc(ProcId,FindProc)): Rename
	requestFindProc.
	* TestTaskSyscallObserver.java: Update.
	* TestSyscallRunning.java: Update.
	* ProcBlockAction.java: Update.
	* TestBreakpoints.java: Update.
	* TestFindProc.java: Ditto.
	* TestSyscallSignal.java: Update.

	* Proc.java (getOutOfLineAddress()): Move to
	frysk.proc.live.LinuxPtraceProc.
	(breakpoints): Ditto.
	(requestedOutofLineAddresses): Ditto.
	(outOfLineAddresses): Ditto.
	(doneOutOfLine()): Ditto.
	* Task.java (getIsaFIXME()): Delete.
	(steppingBreakpoint): Move to frysk.proc.live.LinuxPtraceTask.
	* Breakpoint.java: Move to frysk.proc.live.
	* BreakpointAddress.java: Ditto.
	* Isa.java: Ditto.
	* LinuxIa32.java: Ditto.
	* LinuxX8664.java: Ditto.
	* IsaPowerPC.java: Ditto.
	* LinuxPPC32.java: Ditto.
	* LinuxPPC64.java: Ditto.
	* IsaFactory.java: Ditto.
	* Instruction.java: Ditto.
	* IA32InstructionParser.java: Ditto.
	* X8664InstructionParser.java: Ditto.
	
	* Task.java (getIsaFIXME()): New; replace getIsa().
	(isa, sendrecIsa()): Delete.
	(hasIsa()): Update.
	* Breakpoint.java: Update.
	* Proc.java: Update.
	* TestIsa.java: Update.
	
	* Proc.java (getIsa()): Delete.

	* Task.java (setPC(long), getPC()): Make abstract.
	(pcRegister, pcRegister()): Delete.	

	* Task.java (getPC(), setPC(long)): New.
	(pcRegister, pcRegister()): New.
	* Isa.java (pc(Task), setPC(Task,long)): Delete.
	* LinuxIa32.java: Update.
	* LinuxX8664.java: Update.
	* IsaPowerPC.java: Update.
	* TestInstructions.java: Update.
	* TestBreakpoints.java: Update.
	* TestTaskObserverInstructionAndCode.java: Update.
	* IA32InstructionParser.java: Update.
	* Instruction.java: Update.

	* State.java: Move to frysk.proc.live.State.

	* Task.java (getMod()): Make abstract.
	(incrementMod()): Delete.
	(modCount()): Delete.

	* Proc.java (sendrecAuxv()): Delete.
	(getAuxv()): Make abstract.
	(sendrecCommand()): Delete.
	(getCommand()): Make abstract.
	(sendrecExe()): Delete.
	(getExe()): Make abstract.
	(sendrecCmdLine()): Delete.
	(getCmdLine()): Make abstract.
	(sendrecMaps()): Delete.
	(getMaps()): Make abstract.
	(sendrecIsa()): Delete.
	(getIsa()): Make abstract.
	(sendrecUID(), sendrecGID()): Delete.
	(getUID(), getGID()): Make abstract.
	
	* Proc.java (requestAddObserver): Delete.
	(requestAddSyscallObserver): Delete.
	(requestDeleteObserver): Delete.
	(requestDeleteSyscallObserver): Delete.
	(requestAddCodeObserver): Delete.
	(requestDeleteCodeObserver): Delete.
	(requestAddInstructionObserver): Delete.
	(requestDeleteInstructionObserver): Delete.

	* Task.java (just_started): Move to
	LinuxPtraceTask.justStartedXXX.
	(sig_send): Move to LinuxPtraceTask.sigSendXXX.
	(syscall_sigret): Move to LinuxPtraceTask.syscallSigretXXX.
	
2008-01-04  Andrew Cagney  <cagney@redhat.com>

	* TaskObservable.java: Make public.
	* Task.java (terminatingObservers): Delete.
	(notifyTerminating(boolean,int)): Delete.
	(terminatedObservers, notifyTerminated(boolean,int)): Delete.
	(execedObservers, notifyExeced()): Delete.
	(attachedObservers, notifyAttached()): Delete.
	(signaledObservers, notifySignaled(int)): Delete.
	(syscallObservers, notifySyscallEnter(), notifySyscallExit): Delete.
	(clonedObservers, notifyClonedParent(Task))
	(notifyClonedOfspring()): Delete.
	(forkedObservers, notifyForkedParent(Task))
	(notifyForkedOfspring()): Delete.
	(instructionObservers, notifyInstruction()): Delete.
	(codeObservers, notifyCodeBreakpoint()): New.

	* Task.java (removeObservers()): Delete.

	* Proc.java (performRemoval()): Delete.
	(performTaskAttachCompleted(Task)): Delete.
	(performTaskDetachCompleted(Task)): Delete.
	(performTaskDetachCompleted(Task,Task)): Delete.

	* Task.java (sendContinue(int)): Delete.
	(sendSyscallContinue(int)): Delete.
	(sendStepInstruction(int)): Delete.
	(sendStop()): Delete.
	(sendSetOptions()): Delete.
	(sendAttach()): Delete.
	(sendDetach()): Delete.
	(startTracingSyscalls()): Delete.
	(stopTracingSyscalls()): Delete.
	
	* Task.java (performRemoval()): Delete.
	(performContinue()): Delete.
	(performAttach(boolean)): Delete.
	(performDetach(boolean)): Delete.
	(handleUnblock(TaskObserver)): Delete.
	* TaskObservation.java: Update.

	* Host.java (getSelf()): Make abstract.
	(sendrecSelf()): Delete.
	(self): Delete.

	* Host.java (requestRefreshXXX()): Make abstract.
	(sendRefresh(boolean)): Delete.

	* Host.java (requestCreateAttachedProc(String,String,String,String[],Attached)): Make abstract.
	(sendCreateAttachedProc(String,String,String,String[],Attached)): Delete.
	
	* HostState.java: Delete.
	* Host.java (requestRefreshXXX()): Eliminate state code.
	(requestCreateAttachedProc(String,String,String,String[],Attached)):
	Ditto.
	(requestFindProc(ProcId, FindProc)): Ditto.
	(oldState(), getState()): Delete.
	(oldState, newState): Delete.

	* ProcState.java: Delete; merged into
	frysk.proc.live.LinuxPtraceProcState.

	* TaskState.java: Delete; merged into
	frysk.proc.live.LinuxPtraceTaskState.
	* State.java: Make public.

2008-01-03  Andrew Cagney  <cagney@redhat.com>

	* Task.java (requestAddInstructionObserver(TaskObserver.Instruction)):
	Make abstract.
	(requestDeleteInstructionObserver(TaskObserver.Instruction)): Make
	abstract.

2008-01-02  Andrew Cagney  <cagney@redhat.com>

	frysk.proc.live.LinuxHost renamed to .LinuxPtraceHost and
	frysk.proc.dead.LinuxHost renamed to .LinuxCoreHost.
	* Manager.java: Update.
	* ProcBlockAction.java: Update.

	* Task.java (set(TaskState)): Delete.
	(Task(TaskId,Proc,Task)): Replace Task(TaskId,Proc,Task,TaskState).

	* Proc.java (getInitialState(boolean)): Delete.
	(setStateFIXME(TaskState)): Delete.

	* ProcEvent.java (ProcEvent(Proc)): Make public.

	* Proc.java (handleAddObservation(TaskObservation observation)): Delete.
	* Task.java (Task(Proc,TaskObserver,TaskState)): Delete call. 
	
	* ProcEvent.java: Make public.
	* BreakpointAddresses.java (getCodeObservers(long)): Make public.
	* Proc.java (oldState, newState): Delete.
	(BreakpointAction): Delete.
	(InstructionAction): Delete.
	(SyscallAction): Delete.
	(getStateFIXME()): Make abstract.
	(handleAddObservation(TaskObservation)): Make abstract.
	(oldState()): Delete.
	(performDetach()): Make abstract.
	(performRemoval()): Make abstract.
	(performTaskAttachCompleted(Task)): Make abstract.
	(performTaskDetachCompleted(Task)): Make abstract.
	(performTaskDetachCompleted(Task,Task)): Make abstract.
	(requestAddCodeObserver(Task,TaskObservable,TaskObserver.Code,long)): Make abstract.
	(requestAddInstructionObserver(Task,TaskObservable,TaskObserver.Instruction)): Make abstract.
	(requestAddObserver(Task,TaskObservable,TaskObserver)): Make abstract.
	(requestAddSyscallObserver(Task,TaskObservable,TaskObserver)): Make abstract.
	(requestDeleteCodeObserver(Task,TaskObservable,TaskObserver.Code,long)): Make abstract.
	(requestDeleteInstructionObserver(Task,TaskObservable,TaskObserver.Instruction)): Make abstract.
	(requestDeleteObserver(Task,TaskObservable,TaskObserver)): Make abstract.
	(requestDeleteSyscallObserver(Task,TaskObservable,TaskObserver)): Make abstract.
	(requestRefresh()): Make abstract.
	(setStateFIXME(ProcState)): New.

	* Proc.java (getStateFIXME()): New.
	(getState()): Delete.
	(toString()): Update.
	* TestRefresh.java: Update.

	* Proc.java: Make request methods public (for now).
	* Task.java: Make TaskObservable-s public (for now).
	(requestUnblock(TaskObserver)): Make abstract.
	(requestAddClonedObserver(TaskObserver.Cloned)): Make abstract.
	(requestDeleteClonedObserver(TaskObserver.Cloned)): Make abstract.
	(requestAddAttachedObserver(TaskObserver.Attached)): Make abstract.
	(requestDeleteAttachedObserver(TaskObserver.Attached)): Make abstract.
	(requestAddForkedObserver(TaskObserver.Forked)): Make abstract.
	(requestDeleteForkedObserver(TaskObserver.Forked)): Make abstract.
	(requestAddTerminatedObserver(TaskObserver.Terminated)): Make abstract.
	(requestDeleteTerminatedObserver(TaskObserver.Terminated)): Make abstract.
	(requestAddTerminatingObserver(TaskObserver.Terminating)): Make abstract.
	(requestDeleteTerminatingObserver(TaskObserver.Terminating)): Make abstract.
	(requestAddExecedObserver(TaskObserver.Execed)): Make abstract.
	(requestDeleteExecedObserver(TaskObserver.Execed)): Make abstract.
	(requestAddSyscallsObserver(TaskObserver.Syscalls)): Make abstract.
	(requestDeleteSyscallsObserver(TaskObserver.Syscalls)): Make abstract.
	(requestAddSignaledObserver(TaskObserver.Signaled)): Make abstract.
	(requestDeleteSignaledObserver(TaskObserver.Signaled)): Make abstract.
	(requestAddCodeObserver(TaskObserver.Code)): Make abstract.
	(requestDeleteCodeObserver(TaskObserver.Code)): Make abstract.

	* Task.java (handleAddObservation(TaskObservation)): Make abstract.
	(handleDeleteObservation(TaskObservation)): Make abstract.
	(performContinue()): Make abstract.
	(performRemoval()): Make abstract.
	(performAttach()): Make abstract.
	(performDetach(boolean)): Make abstract.
	(newState): Delete.
	(oldState): Delete.
	(getState()): Delete.
	(set(TaskState)): Delete.
	(oldState()): Delete.
	(toString()): Update.
	(handleUnblock(TaskObserver)): New.
	(requestUnblock(TaskObserver)): Use.
	(getStateFIXME()): New.
	* TestRefresh.java (testProcRefresh()): Update.
	
	* Host.java: Re-indent.
	* Proc.java: Re-indent.
	* Task.java: Re-indent.

2007-12-28  Andrew Cagney  <cagney@redhat.com>

	* TestIsa.java (test64To32To64()): Update; skip32on64 renamed to
	missing32or64.

	* TestIsa.java (test64To32To64()): Use skip32on64().

	* TestTaskSyscallObserver.java (SyscallInterruptObserver): In
	updateSyscallEnter call super.
	
	* TaskObserver.java (Syscalls): Rename Syscall; add Syscall
	parameter to updateSyscallEnter.
	* TestTaskSyscallObserver.java: Update.
	* TestSyscallSignal.java: Update.
	* SyscallExaminer.java: Update.
	* Task.java: Update.
	* TestSyscallRunning.java: Update.

	* Syscall.java: Move to frysk.syscall.
	* SyscallTable.java: Move to frysk.syscall.
	* SyscallTableFactory.java: Move to frysk.syscall.
	* TestSyscallSithAudit.java: Move to frysk.syscall.
	* LinuxIa32Syscall.java: Move to frysk.syscall.
	* LinuxX8664Syscall.java: Move to frysk.syscall.
	* LinuxPPC32Syscall.java: Move to frysk.syscall.
	* LinuxPPC64Syscall.java: Move to frysk.syscall.
	* TestSyscallRunning.java: Update.
	* Task.java: Update.
	* TestSyscallSignal.java: Update.
	* TestTaskSyscallObserver.java: Update.

	* SyscallEventInfo.java: Delete.
	
	* LinuxIa32Syscall.java: Privatize.
	(getSyscallList()): Delete
	* LinuxX8664Syscall.java: Ditto.
	* LinuxPPC64Syscall.java: Ditto.
	* LinuxPPC64Syscall.java: Ditto.
	
	* SyscallTable.java (getSyscallList()): Delete.	
	(getSyscall(long)): New.
	(findSubcall(Syscall[],long)): New.
	(findSubcall(Syscall[],long,Syscall)): New.
	* LinuxIa32Syscall.java (getSyscall(Task)): Update.
	(getSyscall(long)): New.
	* LinuxPPC32Syscall.java (getSyscall(Task)): Update.
	(getSyscall(long)): New.
	* LinuxPPC64Syscall.java (getSyscall(Task)): Update.
	(getSyscall(long)): New.
	* LinuxX8664Syscall.java (getSyscall(Task)): Update.
	(getSyscall(long)): New.
	* TestSyscallsWithAudit.java (syscallTest(int,ISA)): Update.

	* SyscallTable.java (unknownSyscalls): Change to a static
	WeakHashMap.
	(unknownSyscall(long)): Make package private.

	* LinuxX8664.java (getSyscallEventInfo()): Delete.
	(unknownSyscalls): Delete.
	* LinuxX8664Syscall.java (syscallByNum(Task,int)): Delete.
	* LinuxPPC64.java (getSyscallEventInfo()): Delete.
	(unknownSyscalls): Delete.
	* LinuxPPC32.java (getSyscallEventInfo()): Delete.
	(unknownSyscalls): Delete.
	* Isa.java (getSyscallEventInfo()): Delete.
	* LinuxPPC64Syscall.java (syscallByNum(Task,int)): Delete.
	* LinuxPPC32Syscall.java (syscallByNum(Task,int)): Delete.
	* LinuxIa32.java (getSyscallEventInfo()): Delelete.
	* LinuxIa32Syscall.java (syscallByNum(Task,int)): Delete.
	* Syscall.java (syscallByNum(int,Task)): Delete.

2007-12-27  Andrew Cagney  <cagney@redhat.com>

	* Task.java (getSyscallTable()): New.
	(getSyscallEventInfo()): Delete.
	* TestTaskSyscallObserver.java: Update.
	* TestSyscallRunning.java: Update.
	* TestSyscallSignal.java: Update.

	* SyscallTable.java (getSyscall(String)): Rename
	syscallByName(String).
	* TestTaskSyscallObserver.java: Update.
	* TestSyscallsWithAudit.java: Update.
	* TestSyscallSignal.java: Update.
	* TestSyscallRunning.java: Update.
	* LinuxPPC32Syscall.java: Update.
	* LinuxIa32Syscall.java: Update.
	* LinuxPPC64Syscall.java: Update.
	* LinuxX8664Syscall.java: Update.

	* SyscallTable.java (getSyscall(Task)): Declare.
	(getSyscall(long)): New.
	(unknownSyscall(long)): Replace unknownSyscall(int).
	* LinuxX8664Syscall.java (getSyscall(Task)): New.
	* LinuxPPC32Syscall.java (getSyscall(Task)): New.
	* LinuxIa32Syscall.java (getSyscall(Task)): New.
	* LinuxPPC64Syscall.java (getSyscall(Task)): New.

	* Isa.java (getSyscallEventInfo()): Declare.
	* SyscallEventDecoder.java: Delete.
	* Task.java (getSyscallEventInfo): Update.
	* LinuxIa32.java: Do not implement SyscallEventDecoder.
	* LinuxPPC64.java: Ditto.
	* LinuxPPC32.java: Ditto.
	* LinuxX8664.java: Ditto.

	* SyscallTable.java (getUnknownSyscalls()): Delete.
	(unknownSyscall(int)): New.
	* LinuxIa32Syscall.java (getUnknownSyscalls()): Delete.
	* LinuxPPC32Syscall.java: Ditto.
	* LinuxX8664Syscall.java: Ditto.
	* Syscall.java: Update.

	* Syscall.java (INVALID): New.
	* SyscallEventInfo.java (number(Task)): Delete.
	(ENTER, EXIT, UNKNOWN): Delete.
	* Task.java (notifySyscallExit()): Update.
	(notifySyscallEnter()): Update.
	* TestSyscallSignal.java: Update.
	* TestTaskSyscallObserver.java: Update.
	* LinuxIa32.java: Update.
	* LinuxPPC32.java: Update.
	* LinuxX8664.java: Update.
	* LinuxPPC64.java: Update.

	* Syscall.java (iterateSyscallByName(String,Syscall[])): Move to ...
	* SyscallTable.java (iterateSyscallByName(String,Syscall[])): New.
	* LinuxX8664Syscall.java: Update.
	* LinuxPPC32Syscall.java: Update.
	* LinuxIa32Syscall.java: Update.
	* LinuxPPC64Syscall.java: Update.

	* Syscall.java (syscallByName(String,Task)): Delete.
	* TestSyscallRunning.java: Use SyscallTableFactory.
	* TestTaskSyscallObserver.java: Ditto.
	* TestSyscallSignal.java: Ditto.

	* LinuxIa32.java (syscallByName(String)): Delete.
	(getUnknownSyscalls()): Delete.
	(getSyscallList()): Delete.
	* LinuxPPC64.java: Ditto.
	* LinuxX8664.java: Ditto.
	* LinuxPPC32.java: Ditto.

	* Isa.java (syscallByName(String)): Delete.
	(getUnknownSyscalls()): Delete.
	(getSyscallList()): Delete.
	* Syscall.java: Use SyscallTableFactory.
	* TestSyscallsWithAudit.java: Ditto.

	* SyscallTableFactory.java: New file.

	* SyscallTable.java: Rename SyscallFactory.java.
	* LinuxPPC64Syscall.java: Update.
	* LinuxPPC32Syscall.java: Update.
	* LinuxIa32Syscall.java: Update.
	* LinuxX8664Syscall.java: Update.

	* SyscallFactory.java (isAtSyscallSigReturn(Task)): Delete.
	* LinuxPPC64Syscall.java: Extend SyscallFactory.
	* LinuxPPC32Syscall.java: Ditto.
	* LinuxIa32Syscall.java: Ditto.
	* LinuxX8664Syscall.java: Ditto.

	* LinuxX8664Syscall.java: Re-indent.
	* LinuxIa32Syscall.java: Re-indent.

	* SyscallFactory.java: New file.

2007-12-21  Andrew Cagney  <cagney@redhat.com>

	* Syscall.java (getNumArgs()): New.
	(getArgList()): New.

	* IsaX8664.java: Delete.
	* LinuxX8664.java: Move IsaX8664 code to here.
	* IsaIA32.java: Delete.
	* LinuxIa32.java: Move IsaIA32 code to here.

	* Syscall.java (number, name, numArgs, argList, noreturn): Make
	private.
	(isNoReturn()): New.
	
	* Syscall.java: Re-indent.

	* LinuxPPC32On64.java: Delete.
	* LinuxIa32On64.java: Delete.
	* IsaFactory.java (IsaFactory()): Simplify.
	
	* Isa.java (getRegisterBankBuffers(int)): Delete.
	* LinuxIa32On64.java (getRegisterBankBuffers(int)): Delete.
	* IsaX8664.java (getRegisterBankBuffers(int)): Delete.
	* IsaPowerPC.java (getRegisterBankBuffers(int)): Delete.
	* IsaIA32.java (getRegisterBankBuffers(int)): Delete.

2007-12-20  Andrew Cagney  <cagney@redhat.com>

	* Task.java (sendrecRegisterBuffersFIXME()): Delete.
	(registerBuffers): Delete.
	(getRegisterBuffersFIXME()): Update.	
	
	* Task.java (getBigIntegerRegisterFIXME(String)): Delete.

	* LinuxPPC32On64.java (getRegisterByName()): Delete.
	
	BankRegister renamed to BankArrayRegister.
	* LinuxPPC32On64.java: Update.
	* Task.java: Update.

2007-12-19  Andrew Cagney  <cagney@redhat.com>

	* BankRegister.java: Move to frysk.bank.
	* BankRegisterMap.java: Ditto.
	* IndirectBankRegisterMap.java: Ditto.
	* PPCBankRegisters.java: Ditto.
	* RegisterBanks.java: Ditto.
	* X86BankRegisters.java: Ditto.
	* LinuxPPC32On64.java: Update.
	* Task.java: Update.

2007-12-13  Rick Moseley  <rmoseley@redhat.com>

	* Proc.java: Remove redundant call to performDetach().

2007-12-11  Rick Moseley  <rmoseley@redhat.com>

	* Proc.java (killRequest): New for "kill" command.

2007-12-10  Petr Machata  <pmachata@redhat.com>

	* TestTaskForkedObserver.java (testTaskVforkObserver): unresolved 5466.

2007-12-10  Petr Machata  <pmachata@redhat.com>

	* TestTaskForkedObserver.java:
	(ForkObserver): Class moved from testTaskForkedObserver.
	(setupForkTest): New method, contains what's common for the two tests.
	(testTaskForkedObserver): Adjusted to above changes.
	(testTaskVforkObserver): New test.

2007-12-04  Andrew Cagney  <cagney@redhat.com>

	Merge frysk.sys.Sig into frysk.sys.Signal.
	* TestTaskTerminateObserver.java: Update.
	* TestTaskSyscallObserver.java: Update.
	* TestTaskObserver.java: Update.
	* TestTaskObserverInstructionSigReturn.java: Update.
	* TestSyscallSignal.java: Update.
	* TestProcTasksObserver.java: Update.
	* TestMemory.java: Update.
	* TestTaskObserverCode.java: Update.
	* TestTaskObserverDetach.java: Update.

	* BankRegister.java (reverseArray(byte[])): Delete.	

	* BankRegister.java (getFIXME(Task)): Delete.

	* LinuxPowerPCSyscall.java: Delete.
	* LinuxPPC32Syscall.java: New; based on LinuxPowerPCSyscall.java.
	* LinuxPPC64Syscall.java: New; based on LinuxPowerPCSyscall.java.
	* LinuxPPC64.java: Update.
	* LinuxPPC32On64.java: Update.
	* TestSyscallsWithAudit.java: Update.
	* TestIsa.java: Update.
	* IsaFactory.java: Update.
	* IsaPowerPC.java (getSyscallList()): Delete; move to sub classes.
	(getUnknownSyscalls()): Ditto.
	(sysCallByName(String)): Ditto.
	* LinuxPPC32.java: Rename LinuxPPC.java; update.
	* LinuxPPC64.java: Update.

	* IndirectBankRegisterMap.java (add(String,long)): Delete.

2007-12-03  Andrew Cagney  <cagney@redhat.com>

	* BankRegister.java (putFIXME(Task,long)): Delete.
	* IndirectBankRegisterMap.java: Update.

2007-11-29  Andrew Cagney  <cagney@redhat.com>

	* TestRegs.java: Move to frysk.proc.live.TestRegs.

2007-11-26  Andrew Cagney  <cagney@redhat.com>

	* X86BankRegisters.java: Replace X8664Registers.XMM8 et.al. with
	X87Registers.XMM8.

	* X86BankRegisters.java: Use X87Registers.XMM0, et.al.

	* IndirectBankRegisterMap.java (add(int,int,int,Register)): New.
	(add(BankRegister,BankRegister)): Use.

	* IndirectBankRegisterMap.java (add(String)): Delete.
	
	* PPCBankRegisters.java (PPC32BE_ON_PPC64BE): Use
	IndirectBankRegisterMap.add(Register).

2007-11-26  Jose Flavio Aguilar Paulino <joseflavio@gmail.com>

	* PPCBankRegisters.java: Removing "string" names for registers,
	revised offsets of all registers (mainly floating pointer), for
	PPC32 and PPC64.

2007-11-22  Andrew Cagney  <cagney@redhat.com>

	* X86BankRegisters.java (IA32_ON_X8664): Use
	IndirectBankRegisterMap .add(Register) and
	.add(Register,Register).

	* IndirectBankRegisterMap.java (add(Register)): New.
	(add(Register,Register)): New.

2007-11-22  Petr Machata  <pmachata@redhat.com>
	
	* Syscall.java: Fix formatting return value.

2007-11-22  Jose Flavio Aguilar Paulino <jflavio@br.ibm.com>
	
	* PPCBankRegisters.java: Correcting the bank registers PPC32on64.

2007-11-22  Petr Machata  <pmachata@redhat.com>

	* Syscall.java:
	(noreturn): Now public final.
	(extractStringArg): New method.
	(extractCallArguments): New method.
	(extractReturnValue): New method.
	(printStringArg): Use extractStringArg.
	(printCall): Use extractCallArguments.
	(printReturn): Use extractReturnValue.

2007-11-21  Andrew Cagney  <cagney@redhat.com>

	* IsaX8664.java: Use X8664Registers.DR6 instead of "d6".
	* X86BankRegisters.java: Use X8664Registers.DR0 .. DR7.

2007-11-20  Andrew Cagney  <cagney@redhat.com>

	* X86BankRegisters.java: Use X8664Registers.XMM0 et.al., ORIG_RAX,
	RFLAGS, GS_BASE, FS_BASE.

2007-11-15  Petr Machata  <pmachata@redhat.com>

	* TestTaskObserverCode.java (testCodeOverFork): New test.

2007-11-09  Andrew Cagney  <cagney@redhat.com>

	* PPCBankRegisters.java (PPC32BE_ON_PPC64BE): Don't add "nip",
	"ctr", "lnk", "xer", "ccr".

2007-11-09  Jose Flavio Aguilar Paulino <jflavio@br.ibm.com>

        * IsaPowerPC.java: Updated it to also support Power32.
	* LinuxPPC.java: Patched to suppport Power32.
	* PPCBankRegisters.java: Corrected Power32 and Power 64 register
	banks, need to be reviewed later.

2007-10-31  Petr Machata  <pmachata@redhat.com>

	* TestTaskObserverCode.java (testMultiTaskUpdateCalledSeveralTimes): New test.

2007-10-29  Mark Wielaard  <mwielaard@redhat.com>

	* Observable.java (observers): Now a HashMap.
	(add): Keep count.
	(delete): Likewise.
	(contains): New method.
	(iterator): Use HashMap.keySet().
	(removeAllObservers): Likewise.
	* Task.java (notifyCodeBreakpoint): Check whether observer is
	contained in the codeObservers of this Task.
	* TestTaskObserverCode.java (testMultiTaskUpdate): New test.
	(testMultiTaskUpdateUnblockDelete): Likewise.
	(requestDummyRun): New variant that takes a Task.
	
2007-10-17  Andrew Cagney  <cagney@redhat.com>

	* X86BankRegisters.java: Use X87Registers.ST*

	* Host.java (FindProc): Delete; moved to ...
	* FindProc.java: ... here.
	* HostState.java: Update.
	* ProcBlockAction.java: Update.
	* TestFindProc.java: Update.
	* TestSyscallRunning.java: Update.
	* TestSyscallSignal.java: Update.
	* TestTaskSyscallObserver.java: Update.

2007-10-15  Andrew Cagney  <cagney@redhat.com>

	* TestRegs.java (taskObject(Task)): Delete.
	(access(Register,int,int,byte[],int,boolean)): Replace
	accessRegister(...).

2007-10-14  Andrew Cagney  <cagney@redhat.com>

	* Isa.java (getRegisterByName(String)): Delete.
	* IsaIA32.java: Update.
	* IsaX8664.java: Update.
	* LinuxIa32On64.java: Update.
	* LinuxPPC64.java: Update.
	* LinuxPPC.java: Update.
	* Task.java (getRegister(Register)): Simplify.
	(setRegister(Register,long)): Simplify.
	(access(Register,int,int,byte[],int,boolean): Simplify.
	(useRegisterBanksXXX): Delete.
	(getBigIntegerRegisterFIXME(String)): Simplify.
	* TestRegisters.java: Delete.
	* BankRegister.java (getBytesFIXME(Task)): Delete.
	
	* RegisterBanks.java (getBankRegister(String)): New.
	* Task.java (getBankRegister()): Delete.
	(getBigIntegerRegisterFIXME(String)): Update.
	* IsaX8664.java: Update.

	* LinuxPPC32On64.java (isa64): Delete.
	(getRegisterBankBuffers(int)): Delete.
	* IsaPPC64.java: Delete.
	* IsaPPC.java: Delete.
	* LinuxPPC.java: Update.

	* MachineType.java: Delete.
	* TestRegisters.java: Use Task.getISA().

	* Isa.java (getElfMachineType()): Delete.	
	* IsaIA32.java: Update.
	* IsaPPC64.java: Update.
	* IsaPPC.java: Update.
	* IsaX8664.java: Update.

	* Isa.java (getWordSize()): Delete.
	(getByteOrder()): Delete.
	* IsaIA32.java: Update.
	* IsaPowerPC.java: Update.
	* IsaPPC64.java: Update.
	* IsaPPC.java: Update.
	* IsaX8664.java: Update.
	* LinuxPowerPCSyscall.java: Update.
	* TestMemory.java: Update.

	* Task.java (access(Register,long,long,byte[],int,boolean)): Use
	RegisterBanks when useRegisterBanksXXX.

2007-10-13  Andrew Cagney  <cagney@redhat.com>

	* BankRegister.java (getBytesFIXME(Task)): Rename getBytes(Task).
	* Task.java: Update.

	* IndirectBankRegisterMap.java (add(Register)): Delete.
	(add(String,String)): Check for null.
	(add(Register,Register)): Delete.
	(add(Register,long)): Delete.
	(add(Register[])): Delete.
	(add(String,long)): Check for null.
	* PPCBankRegisters.java: Replace more strings with PPC32Registers
	and PPC64Registers.
	* X86BankRegisters.java: Replace more strings with IA32Registers
	or X8664Registers constants.

	* Task.java (useRegisterBanksXXX): Set to true.
	* RegisterBanks.java (findBankRegister(Register)): New.
	(set(Register,long)): Use
	(get(Register)): Use.
	(access(Register,long,long,byte[],int,boolean)): Use.

2007-10-12  Andrew Cagney  <cagney@redhat.com>

	* Task.java (useRegisterBanksXXX): New.
	(getRegister(Register)): Check.
	(setRegister(Register)): Check.

	* BankRegister.java (getFIXME(Task)): Rename get(Task).
	(putFIXME(Task)): Rename put(Task).
	* IsaIA32.java: Update; use Task .getRegister, and IA32Registers.
	* IsaX8664.java: Same with X8664Registers.
	* LinuxIa32.java: Same.
	* LinuxIa32Syscall.java: Same.
	* LinuxX8664.java: Same.
	* LinuxX8664Syscall.java: Same.
	* IsaPowerPC.java Same.
	(IsaPowerPC(Register)): New constructor.
	(NIP): New final field.
	* IsaPPC.java: Update.
	* IsaPPC64.java: Update.
	* LinuxPowerPCSyscall.java: Update.
	* LinuxPPC64.java: Update.
	* LinuxPPC.java: Update.
	* IndirectBankRegisterMap.java: Update.

	* Task.java (registerBanks): New.
	(sendrecRegisterBanks()): New.
	(getRegisterBanks()): New.
	(clearIsa()): Clear registerBanks and currentISA.

	* PPCBankRegisters.java: Rename PPCRegisterBanksFactory.java.
	* X86BankRegisters.java: Rename X86RegisterBanksFactory.java.
	* BankRegisterMap.java: Make public.
	* AbstractRegisterBanksFactory.java: Delete.
	* RegisterBanks.java: New.
	* IsaIA32.java: Update.
	* IsaPPC.java: Update.
	* IsaPPC64.java: Update.
	* IsaX8664.java: Update.
	* LinuxIa32On64.java: Update.
	* LinuxPPC32On64.java: Update.

	* Task.java (access(Register,int,int,byte[],int,boolean)): Rename
	accessRegister(...).
	(registerBuffers): Rename registerBanks.
	(getRegisterBuffersFIXME()): Rename getRegisterBanks().
	(sendrecRegisterBuffersFIXME()): Rename sendrecRegisterBanks().
	* BankRegister.java: Update.
	* TestRegs.java: Update.

2007-10-11  Andrew Cagney  <cagney@redhat.com>

	* BankRegister.java (put(Task,long)): Make package-private.
	
	* IndirectBankRegisterMap.java (add(String,long)): Delete
	putBigInteger(Task,BigInteger) from nested class.
	* BankRegister.java (putBigIntege(Task,BigInteger)): Delete.

	* PPCRegisterBanksFactory.java: New.
	* X86RegisterBanksFactory.java: New.
	* AbstractRegisterBanksFactory.java: New.
	* IndirectBankRegisterMap.java (IndirectBankRegisterMap(ByteOrder,
	BankRegisterMap,BankRegisterMap)): New.
	(map32, map64): Replace isa32 and isa64; update references.
	(IndirectBankRegisterMap(Isa,Isa)): Delete.
	* IsaPPC64.java (IsaPPC64()): Delete.
	(getRegisterByName(String)): New.
	* IsaPowerPC.java (registerMap): Delete.
	(getRegisterByName(String)): Delete.
	* IsaPPC.java (IsaPPC()): Delete.
	(getRegisterByName(String)): New.
	* LinuxPPC32On64.java (registerMap): Delete.
	(LinuxPPC32On64()): Delete.
	(getRegisterByName(String)): Use
	X86RegisterBanksFactory.PPC32_ON_PPC64.
	* LinuxIa32On64.java (registerMap): Delete.
	(LinuxIa32On64()): Delete.
	(getRegisterByName(String)): Use
	X86RegisterBanksFactory.IA32_ON_X8664..
	* IsaX8664.java (registerMap): Delete.
	(IsaX8664()): Delete.
	(getRegisterByName(String)): Use X86RegisterBanksFactory.X8664.
	* IsaIA32.java (registerMap): Delete.
	(IsaIA32()): Delete.
	(getRegisterByName(String)): Use X86RegisterBanksFactory.IA32.

2007-10-09  Andrew Cagney  <cagney@redhat.com>

	* BankRegister.java (getBigInteger(Task)): Delete.
	* Task.java (getBigIntegerRegisterFIXME(String)): New.
	* ByteOrder.java: Delete.
	* IndirectBankRegisterMap.java (add(String,long)): Delete nexted
	class method getBigInteger.

2007-10-09  Mark Wielaard  <mwielaard@redhat.com>

	Fixes bug #5082
	* Breakpoint.java (stepping): Removed, state is Task specific.
	(reset_stepping_tasks): New field.
	(prepareStep): Check Instruction properties not stepping.
	Adjust reset_stepping_tasks and only reset when zero.
	(stepDone): Likewise.
	(stepAbort): Likewise.

2007-10-05  Mark Wielaard  <mwielaard@redhat.com>

	* TestProcStopped.java (testStoppedAckDaemon): Mark
	unresolvedOnUtrace(5114).
	(testStoppedDetached): Likewise.

2007-10-04  Andrew Cagney  <cagney@redhat.com>

	* TestRegs.java: New.

2007-10-02  Andrew Cagney  <cagney@redhat.com>

	* Task.java (getRegister(Register), setRegister(Register,long))
	(accessRegister(...), getBankRegister(String)): Call getIsa(), not
	refer to "isa".

	* BankRegister.java (bank, offset, register): Make private.
	(getBank()): New.
	(getOffset()): New.
	(getRegister()): New.
	* BankRegisterMap.java: Update.

	* IndirectBankRegisterMap.java (add(Register)): New.
	(add(Register,Register)): New.
	(add(Register[])): New.
	(add(Register,long)): New.
	* BankRegisterMap.java (add(int,int,int,Register)): New.
	(add(int,int,int,Register[])): New.
	(add(int,int,int,String)): New.
	(add(BankRegister)): Make protected.

2007-10-01  Andrew Cagney  <cagney@redhat.com>

	* BankRegister.java: Update; use Register.getName().

	* IndirectBankRegisterMap.java: New.
	* LinuxIa32On64.java (registerMap): Change type to
	IndirectBankRegisterMap.
	(LinuxIa32On64()): Update.
	(IndirectRegister): Delete.
	(ConstantRegister): Delete.
	(getRegisterByNameSuper(String)): Delete.
	* LinuxPPC32On64.java: Ditto.

	* Task.java (getRegister(Register)): New.
	(setRegister(Register,long)): New.
	(getBankRegister(String name)): New.
	(accessRegister(Register,int,int,byte[],int)): New.

	* LinuxPPC32On64.java (registerMap): Change type to
	BankRegisterMap.
	(LinuxIsa32On64()): Simplify.
	(regDefs): Delete.
	(RegisterIterator()): Delete
	(getRegisterByName(String)): Update.
	* LinuxIa32On64.java (registerMap): Change type to BankRegisterMap.
	(LinuxIsa32On64()): Simplify.
	(regDefs): Delete.
	(RegisterIterator()): Delete.
	(getRegisterByName(String)): Update.

	* BankRegister.java (register): New.
	(BankRegister(int,int,int,Register,String)): New; update other
	constructors.
	* BankRegisterMap.java: New.
	* IsaPowerPC.java (registerMap): Change type to BankRegisterMap.
	(add): Delete.
	(getRegisterByName()): Update.
	(IsaPowerPC()): Update.
	* IsaIA32.java: Ditto.
	* IsaX8664.java: Ditto.
	* IsaPPC.java: Ditto.

	* Isa.java (RegisterIterator()): Delete.
	* IsaPowerPC.java (RegisterIterator()): Ditto.
	* IsaX8664.java (RegisterIterator()): Ditto.
	* IsaIA32.java (RegisterIterator()): Ditto.

	* FPRegister.java: Delete.

	* IsaPPC.java (IsaPPC()): Simplify.
	(PPCRegister): Delete.
	(PPCFPRegister): Delete.
	(gprs(), fprs()): Delete.
	(gpr, fpr): Delete.
	(nip, msr, orig_r3, ctr, lnk, xer, ccr, mq, trap, dar): Delete.
	(dsisr, result): Delete.

2007-09-28  Andrew Cagney  <cagney@redhat.com>

	* IsaX8664.java: Simplify; use BankRegister(int,int,int,Register)
	constructor where possible.
	(regDefs): Delete.
	(DBGRegister): Delete.
	(FPConfigRegister): Delete.
	(XMMRegister): Delete.
	(X8664FPRegister): Delete.
	(X8664SegmentRegister): Delete.
	(X8664Register): Delete.
	(DBG_OFFSET): Delete.
	* IsaPowerPC.java (add(BankRegister)): New.
	* IsaPPC64.java (IsaPPC64): Simplify addition of registers to
	registerMap.
	(PPC64Register): Delete.
	(PPC6432BitRegister): Delete.
	(PPC6432BitRegister): Delete.
	(gprs(), fprs()): Delete.
	(gpr, nip, msr, orig_r3, ctr, lnk, xer, ccr): Delete.
	(softe, trap, dar, dsisr, result, fpr): Delete.

	* IsaIA32.java (IsaIA32()): Simplify; use
	BankRegister(int,int,int,Register) constructor where possible.
	(DBGRegister): Delete.
	(XMMRegister): Delete.
	(IA387ConfigRegister): Delete.
	(IA32FPRegister): Delete.
	(IA32SegmentRegister): Delete.
	(IA32Register): Delete.
	(regDefs): Delete.
	(DBG_OFFSET): Delete.
	* BankRegister.java (toString): New.
	(BankRegister(int,int,int,Register)): New.

2007-09-27  Andrew Cagney  <cagney@redhat.com>

	* Isa.java (getRegisterNameByUnwindRegnum): Delete.
	* IsaIA32.java (getRegisterNameByUnwindRegnum): Ditto.
	* IsaPowerPC.java (getRegisterNameByUnwindRegnum): Ditto.
	* IsaX8664.java (getRegisterNameByUnwindRegnum): Ditto.

	* BankRegister.java: Rename Register.java.
	* FPRegister.java: Update.
	* IsaIA32.java: Update.
	* IsaPowerPC.java: Update.
	* IsaPPC64.java: Update.
	* IsaPPC.java: Update.
	* IsaX8664.java: Update.
	* LinuxIa32On64.java: Update.
	* LinuxPPC32On64.java: Update.

2007-09-19  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestSyscallsWithAudit.java (syscallTest): added new asserstion.
	* LinuxIa32Syscall.java (syscallList): Added new syscalls.
	* LinuxPowerPCSyscall.java (syscallList): Added new syscalls.
	* LinuxX8664Syscall.java (syscallList): Added new syscalls.

2007-08-15  Mark Wielaard  <mwielaard@redhat.com>

	* getSetupAddress (getSetupAddress): New method.
	(stepAbort): Likewise.
	* TestTaskObserverCode.java (testCodeSignalInterrupt): Enable test.
	(testInstallCodeDuringCode): Likewise.
	(Symbol): New static helper class.
	(getGlobalLabelAddress): New helper method.
	(breakTest): New test harness for funit-raise.
	(testBreakDivZero): New test based on breakTest.
	(testBreakIllegalAddress): Likewise.
	(testBreakIllegalInstruction): Likewise.
	(testBreakSignalTerminate): Likewise.
	(testBreakSignalIgnore): Likewise.
	(AttachedObserver.task): New field.
	(updateAttached): Set task field.
	(TerminatingObserver.task): New field.
	(TerminatingObserver.signal): Likewise.
	(TerminatingObserver.value): Likewise.
	(TerminatingObserver.updateTerminating): Set new fields.
	
2007-08-15  Mark Wielaard  <mwielaard@redhat.com>

	* TestTaskObserverDetach.java (assertDetach): Use TestLib
	assertStatState().

2007-08-14  Nurdin Premji  <npremji@redhat.com>

	* RegisterView.java: Removed.
	* FPRegister.java: Remove references to RegisterView.
	* IsaIA32.java: Ditto.
	* IsaX8664.java: Ditto.
	* LinuxIa32On64.java: Ditto.
	* LinuxPPC32On64.java: Ditto.
	* Register.java: Ditto.

2007-08-10  Andrew Cagney  <cagney@redhat.com>

	* TestExec.java (testAttachedSingleExec): Use ExecOffspring and
	ExecCommand.
	(testAttachedMultipleParentExec): Ditto.
	(testAttachedMultipleChildExec): Ditto.
	* TestIsa.java: Ditto.
	* TestProcGet.java: Ditto.
	
2007-08-10  Mark Wielaard  <mwielaard@redhat.com>

	* TestTaskObserverCode.java (testCodeSignalInterrupt): New test
	case for bug #4747.
	(testInstallCodeDuringCode): New test cae for bug 4889.
	(CodeObserver.block): New boolean field.
	(CodeObserver.updateHit): Check block field.
	(SignaledObserver): New TaskObserver helper class.
	(TerminatingObserver.updateTerminating): Explictly block.
	(TerminatingObserver.addedTo): Request stop event loop.
	* TestBreakpoints.java (testSteppingtestHitAndRun): Mark unresolved
	for bug #4847.
	(testSteppingtestInsertRemove): Likewise.
	(testSteppingAddLots): Likewise.

2007-08-09  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverCode.java: Use frysk.testbed.LegacyOffspring for
	now.

	* TestProcGet.java: Replace "funit-child" with
	SlaveOffspring.getExecutable.

	* TestAbandon.java: Replace AttachedAckProcess with
	SlaveOffspring.createAttachedChild.
	* TestFindProc.java: Ditto.
	* TestIsa.java: Ditto.
	* TestProcTasksObserver.java: Ditto.
	* TestProcStopped.java: Ditto.
	* TestTaskObserver.java: Ditto.

	* StressAttachDetachSignaledTask.java: Replace AckDaemonProcess
	with SlaveOffspring.createDaemon.
	* StressTestAbandon.java: Ditto.
	* TestAbandon.java: Ditto.
	* TestProcForceDetach.java: Ditto.
	* TestFindProc.java: Ditto.
	* TestProcGet.java: Ditto.
	* TestProcStopped.java: Ditto.
	* TestProcTasksObserver.java: Ditto.
	* TestRefresh.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskObserverCode.java: Ditto.
	* TestTaskObserverDetach.java: Ditto.
	* TestTaskObserverInstructionAndCode.java: Ditto.
	* TestTaskObserver.java: Ditto.
	* TestTaskObserverInstruction.java: Ditto.

	* TestAbandon.java: Replace DetachedAckProcess with
	SlaveOffspring.createChild.
	* TestExec.java: Ditto.
	* TestFindProc.java: Ditto.
	* TestIsa.java: Ditto.
	* TestMapGet.java: Ditto.
	* TestProcGet.java: Ditto.
	* TestProcForceDetach.java: Ditto.
	* TestProcStopped.java: Ditto.
	* TestRefresh.java: Ditto.
	* TestProcTasksObserver.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.
	
	* TestProcStopped.java: Use SlaveOffspring
	.assertSendAddClonesWaitForAcks.
	* TestProcTasksObserver.java: Ditto.
	* StressTestAbandon.java: Ditto.
	* TestProcGet.java: Ditto.
	* TestProcForceDetach.java: Ditto.
	* TestRefresh.java: Ditto.
	* TestTaskObserver.java: Ditto.

	* TestTaskObserverBlocked.java: Use SlaveOffspring.PARENT_ACK and
	.CHILD_ACK.
	
	* TestTaskObserverBlocked.java (ForkObserver.requestSpawn):
	Replace addForkSig with SlaveOffspring.requestFork.
	(CloneObserver.requestSpawn): Replace addCloneSig with
	SlaveOffspring.requestClone.
	* TestTaskObserverDetach.java (Detach.requestEvent): Replace
	Detach.eventSignal.  Use SlaveOffspring's .requestExec,
	.requestClone, and .requestFork.
	(Detach.eventAcks): Delete.
	
2007-08-08  Andrew Cagney  <cagney@redhat.com>

	* TestIsa.java: Replace frysk.testbed.TestLib.AckProcess with
	frysk.testbed.SlaveOffspring.
	* TestMapGet.java: Ditto.
	* TestExec.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.

	* TestExec.java (testAttachedMultipleChildExec): Use
	ExecOffspring.  Replace ExecOffspring.requestRandomExec with
	ExecOffspring.requestThreadExec.

	* TestAbandon.java: Replace frysk.testbed.TestLib.AckProcess with
	frysk.testbed.SlaveOffspring.
	* TestFindProc.java: Ditto.
	* TestProcForceDetach.java: Ditto.
	* TestProcStopped.java: Ditto.
	* TestProcTasksObserver.java: Ditto.
	* TestRefresh.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskObserverDetach.java: Ditto.
	* TestTaskObserver.java: Ditto.
	* StressTestAbandon.java: Remove reference to AckDaemon.

	* TestExec.java: Rename FunitExecOffspring to ExecOffspring.
	* TestIsa.java: Ditto.
	* TestProcGet.java: Ditto.

2007-08-07  Andrew Cagney  <cagney@redhat.com>

	* TestTaskSyscallObserver.java: Replace
	frysk.testbed.TestLib.Child with
	frysk.testbed.SynchronizedOffspring.

	* TestProcGet.java: Replace frysk.testbed.TestLib.Child with
	frysk.testbed.Offspring.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskObserverInstructionAndCode.java: Ditto.
	* TestTaskObserverCode.java: Ditto.
	* TestTaskObserverInstruction.java: Ditto.
	* TestTaskObserver.java: Ditto.

	* TestTaskObserverCode.java: Replace child.signal(int,Sig) with
	Signal.tkill(int,Sig).

	* TestProcGet.java (testGetCmdLine): Use FunitExecOffspring to
	create a process with known arguments.
	(testGetExe): Ditto.

	* TestRefresh.java: Replace frysk.testbed.TestLib.Child with
	frysk.testbed.Offspring.
	* TestTaskObserver.java: Ditto.

	* TestRun.java: Use ProcCounter(int).
	* TestTaskForkedObserver.java: Ditto; adjust counts.

2007-08-06  Mark Wielaard  <mark@klomp.org>

	Fixes bug #4894
	* Proc.java (observations): Turn into a Collection that can
	contain an observer multiple times.
	* TestTaskObserverCode.java (testCodeRemovedInHit): Explicitly
	wait for add and delete.

2007-08-04  Petr Machata  <pmachata@redhat.com>

	* TestTaskObserverCode.java (testCodeRemovedInHit): New test.

2007-08-02  Andrew Cagney  <cagney@redhat.com>

	Fix frysk/4879.
	* TestSyscallSignal.java: Replace ForkTestLib with
	frysk.sys.DaemonPipePair.  Use ProcessIdentifier.
	* TestSyscallRunning.java: Ditto.
	* TestBreakpoints.java: Ditto.

2007-08-02  Mark Wielaard  <mwielaard@redhat.com>

	* Breakpoint.java (set): Use raw memory and bulk put method.
	(reset): Likewise.
	* BreakpointAddresses.java: Make public.
	* Instruction.java (setupExecuteOutOfLine): use raw memory and
	bulk put method.

2007-08-01  Andrew Cagney  <cagney@redhat.com>

	* TestSyscallSignal.java (testIt): Mark as unresolved.

	* TestIsa.java (test64To32To64): Use FunitExecOffspring.
	(test64To32Isa): Delete.
	* TestExec.java (testProcBlockExec): Replace DetachedAckProcess
	with FunitExecOffspring.
	(testTaskBlockExec): Ditto.

2007-07-31  Andrew Cagney  <cagney@redhat.com>

	* TestTaskTerminateObserver.java: Use SynchronizedOffspring.

	* StressAttachDetachRapidlyCloningMainTask.java: Use
	frysk.testbed.FunitThreadsOffspring.
	* StressAttachDetachManyTasks.java: Ditto.

2007-07-31  Mark Wielaard  <mwielaard@redhat.com>

	Fixes bug #4865
	* LinuxIa32Syscall.java (unknownIpcSubSyscall): New static field.
	(unknownSocketSubSyscall): Likewise.
	(ipcSubcallList): Add unknown numbers, including zero.
	(syscallByNum): Bounds check socketSubcallList and ipcSubcallList
	arrays before returning possible unknown subsyscall.

2007-07-30  Nurdin Premji  <npremji@redhat.com>

	* IsaIA32.java (regDefs): Expanded "efl" to "eflags".
	* LinuxIa32On64.java (LinuxIa32On64): Ditto.

2007-07-29  Andrew Cagney  <cagney@redhat.com>

	* TestIsa.java (test64To32Isa): Use SynchronizedOffspring.
	(test64To32To64): Ditto.

2007-07-28  Andrew Cagney  <cagney@redhat.com>

	* TestMemory.java: Use DaemonBlockedAtEntry(File) and
	Config.getPkgLibFile.
	* TestRegisters.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.

	* TestTaskObserverInstructionSigReturn.java: Use
	Config.getPkgLibFile.

2007-07-27  Andrew Cagney  <cagney@redhat.com>

	* TestIsa.java (test64to32Isa): Use Config.getPkgLib32File and
	Config.getPkgLib64File.
	(test64to32to64Isa): Ditto.
	
	* TestRefresh.java: Update; frysk.testbed.TestLib.PidCounter moved
	to frysk.testbed.PidCounter.

	* TestExec.java: Update. frysk.testbed.TestLib.TaskCounter moved
	to frysk.testbed.TaskCounter.
	* TestRefresh.java: Ditto.
	* TestRun.java: Remove redundant import of frysk.testbed.ProcCounter.

	* TestRun.java: Update. frysk.testbed.TestLib.ProcCounter moved to
	frysk.testbed.ProcCounter.
	* TestTaskForkedObserver.java: Ditto.
	
	* TestExec.java: Update;
	frysk.testbed.TestLib.StopEventLoopWhenProcRemoved moved to
	frysk.testbed.StopEventLoopWhenProcRemoved.
	* TestProcGet.java: Ditto.
	* TestRun.java: Ditto.
	* TestTaskClonedObserver.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskForkedObserver.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.
	* TestTaskTerminateObserver.java: Ditto.
	
2007-07-27  Mike Cvet  <mcvet@redhat.com>

	* TestTaskObserverInstruction.java: Updated to reference frysk.stepping.

2007-07-25  Andrew Cagney  <cagney@redhat.com>

	* StressAttachDetachRapidlyForkingMainTask.java: Update;
	frysk.testbed.TestLib.AttachedDaemonProcess moved to
	frysk.testbed.DaemonBlockedAtEntry.
	* TestMemory.java: Ditto.
	* TestProcGet.java: Ditto.
	* TestTaskForkedObserver.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestRegisters.java: Ditto.
	* TestTaskClonedObserver.java: Ditto.
	* TestTaskTerminateObserver.java: Ditto.

	* StressAttachDetachManyTasks.java: Update; TaskObserverBase moved
	from frysk.testbed.TestLib to frysk.testbed.TaskObserverBase.
	* StressAttachDetachRapidlyCloningMainTask.java: Ditto.
	* StressAttachDetachRapidlyForkingMainTask.java: Ditto.
	* StressAttachDetachSignaledTask.java: Ditto.
	* SyscallExaminer.java: Ditto.
	* TestMemory.java: Ditto.
	* TestExec.java: Ditto.
	* TestIsa.java: Ditto.
	* TestRegisters.java: Ditto.
	* TestRun.java: Ditto.
	* TestTaskClonedObserver.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskObserverDetach.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.
	* TestTaskObserver.java: Ditto.
	* TestTaskForkedObserver.java: Ditto.
	* TestTaskTerminateObserver.java: Ditto.

	* TestProcTasksObserver.java: Update; TaskSet moved from
	frysk.testbed.TestLib to frysk.testbed.TaskSet.
	* TestRun.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.

	* TestTaskClonedObserver.java: Update; Fibonacci moved from
	frysk.testbed.TestLib to separate class.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskForkedObserver.java: Ditto.

2007-07-24  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Move to frysk.testbed.TestLib.
	* Manager.java (resetXXX): Make public.
	* StressAttachDetachManyTasks.java: Update.
	* StressAttachDetachRapidlyCloningMainTask.java: Ditto.
	* StressAttachDetachRapidlyForkingMainTask.java: Ditto.
	* TestTaskForkedObserver.java: Ditto.
	* TestBreakpoints.java: Ditto.
	* TestSyscallRunning.java: Ditto.
	* TestTaskObserverInstruction.java: Ditto.
	* TestTaskTerminateObserver.java: Ditto.
	* TestTaskSyscallObserver.java: Ditto.
	* TestRegisters.java: Ditto.
	* TestSyscallSignal.java: Ditto.
	* TestTaskObserver.java: Ditto.
	* TestTaskObserverInstructionSigReturn.java: Ditto.
	* TestProcGet.java: Ditto.
	* TestTaskObserverInstructionAndCode.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* StressAttachDetachSignaledTask.java: Ditto.
	* TestTaskClonedObserver.java: Ditto.
	* TestTaskObserverDetach.java: Ditto.
	* TestSyscallsWithAudit.java: Ditto.
	* SyscallExaminer.java: Ditto.
	* TestAbandon.java: Ditto.
	* StressTestAbandon.java: Ditto.
	* TestExec.java: Ditto.
	* TestFindProc.java: Ditto.
	* TestProcStopped.java: Ditto.
	* TestHostGet.java: Ditto.
	* TestIsa.java: Ditto.
	* TestInstructions.java: Ditto.
	* TestMapGet.java: Ditto.
	* TestMemory.java: Ditto.
	* TestProcForceDetach.java: Ditto.
	* TestRefresh.java: Ditto.
	* TestProcTasksObserver.java: Ditto.

2007-07-20  Mark Wielaard  <mwielaard@redhat.com>

	* Breakpoint.java: Implements Comparable.
	(getInstruction): New method.
	(getProc): New method.
	(compareTo): New method.
	* BreakpointAddresses.java (breakpoints): New field.
	(BreakpointAddresses): Initialize breakpoints.
	(getBreakpoint): New method.
	(getBreakpoints): New method.
	* MemoryMap.java: Make immutable.
	* Task.java (getRawMemory): New method.
	* TestTaskObserverCode (testViewBreakpointMemory): New test.
	(testViewBreakpointMap): New test.
	(getFunctionDie): New method.
	(getFunctionEntryAddress): Use getFunctionDie.

2007-07-16  Andrew Cagney  <cagney@redhat.com>

	* TestInstructions.java: Update, lib.dw merged into lib.elf.
	* TestTaskObserverCode.java: Ditto.
	* IsaFactory.java: Ditto.
	* IsaIA32.java: Ditto.
	* IsaPPC.java: Ditto.
	* IsaPPC64.java: Ditto.
	* IsaX8664.java: Ditto.
	* TestIsa.java: Ditto.

2007-07-13  Mark Wielaard  <mwielaard@redhat.com>

	* TestInstructions.java (pid, proc, in, out, labels): Removed fields.
	(addresses, io, start_address, end_address): New fields.
	(getGlobalLabelAddress): New method.
	(Symbol): New static class.
	(setup): Rewritten to no use ForkLib and to use Code and Instruction
	observer to find code instruction path.
	(tearDown): Clear addresses.
	(testBreakAndStepInstructions): Renamed to...
	(testBreakOnStartThenStepAllInstructions): Rewriten to use addresses,
	breakpoint on first, delete, then step all.
	(testAllBreakpoints): Rewritten to use addresses.
	(testInsertAllBreakpointsAndStepAll): New test.
	(InstructionObserver.block): New field.
	(InstructionObserver.deletedFrom): Don't stop event loop.
	(InstructionObserver.updateExecuted): Check block field.
	(InstructionObserver.setBlock): New method.

2007-07-12  Andrew Cagney  <cagney@redhat.com>

	* IsaFactory.java (getIsa): Use Proc.getExe() to obtain the
	canonical path to the executable.  Use Elf(String,ElfCommand).

2007-07-10  Mark Wielaard  <mwielaard@redhat.com>

	* TestTaskSyscallObserver.java (testExecSyscall): Remove
	unresolved bug #3244.

2007-07-09  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Update.  Replace DwflFactory with DwflCache.

2007-07-09  Mark Wielaard  <mwielaard@redhat.com>

	* Breakpoint.java (reset): Only copy back bytes covered by
	breakpiont instructions.

2007-07-06  Mike Cvet  <mcvet@redhat.com>

	* TestLib.java (tearDown): Calls DwflFactory.clear().

2007-07-06  Mark Wielaard  <mwielaard@redhat.com>

	* IsaX8664.java hasExecutedSpuriousTrap): Check for SYSCALL
	instruction.

2007-07-05  Andrew Cagney  <cagney@redhat.com>

	* TaskEvent.java: Delete unused imports of java.util.logging.Level
	and java.util.logging.Logger.
	
	* TaskEvent.java (task): Make private final.
	(logger, taskId, Task(TaskId)): Delete.
	(execute(Task)): Declare abstract.
	(execute()): Define final.
	* Task.java (requestUnblock): Update.

	* TaskEvent.java (TaskEvent()): Delete.
	* TestSyscallRunning.java: Replace TaskEvent with
	frysk.event.Event.

2007-07-05  Mark Wielaard  <mwielaard@redhat.com>

	* IsaIA32.java (getOutOfLineAddresses): Use Auxv entry point.
	* IsaPowerPC.java (getOutOfLineAddresses): Likewise.
	* IsaX8664.java (getOutOfLineAddresses): Likewise.

2007-07-04  Andrew Cagney  <cagney@redhat.com>

	* TestTaskSyscallObserver.java: Replace brokenXXX with unresolved.
	* StressAttachDetachRapidlyForkingMainTask.java: Ditto.
	* StressAttachDetachSignaledTask.java: Ditto.
	* StressAttachDetachRapidlyCloningMainTask.java: Ditto.
	* TestProcStopped.java: Replace brokenIfUtraceXXX with
	unresolvedOnUtrace.
	* TestTaskObserver.java: Ditto.

	* TestTaskTerminateObserver.java (check): Remove brokenIfUtraceXXX
	check for bug 3489.
	(testTerminateKillKILL, testTerminatingKillKILL): Delete.
	
	* TestTaskTerminateObserver.java: Re-indent.

2007-07-03  Mark Wielaard  <mwielaard@redhat.com>

	* IA32InstructionParser.java: New class.
	* X8664InstructionParser.java: Likewise.
	* IsaIA32.java (getInstruction): Use IA32InstructionParser.
	* IsaX8664.java (getInstruction): Use X8664InstructionParser.

2007-07-03  Mark Wielaard  <mwielaard@redhat.com>

	* TestInstructions.java: New test.

2007-07-02  Mark Wielaard  <mwielaard@redhat.com>

	* Breakpoint.java (NOT_STEPPING, OUT_OF_LINE_STEPPING,
	SIMULATE_STEPPING, RESET_STEPPING): New constants.
	(stepping): Now a byte field.
	(oo_address): New private long field.
	(remove): Add sanity check for removing while stepping.
	(prepareStep): Select stepping mechanism based on properties of
	Instruction. Get oo_address from Proc when necessary.
	(stepDone): Fixup task and/or code based on properties of
	Instruction. Let Proc know we are done with oo_address.
	* Isa.java (getOutOfLineAddresses): New interface method.
	* IsaIA32.java (getOutOfLineAddresses): Likewise.
	* IsaPowerPC.java (getOutOfLineAddresses): Likewise.
	* IsaX8664.java (getOutOfLineAddresses): Likewise.
	* Proc.java (outOfLineAddresses): New private final field.
	(requestedOutOfLineAddresses): New boolean field.
	(getOutOfLineAddress): New method.
	(doneOutOfLine): Likewise.

2007-07-02  Mark Wielaard  <mwielaard@redhat.com>

	* TestSyscallRunning.java (testSyscallRunning):
	Rename final task field to proc_task.

2007-07-02  Mark Wielaard  <mwielaard@redhat.com>

	* LinuxPowerPCSyscall.java (syscallList): Add getcpu and epoll_pwait.

2007-07-02  Mark Wielaard  <mwielaard@redhat.com>

	* Instruction.java: Document and add convenience constructors.
	(getName): New method.
	(canExecuteOutOfLine): Likewise.
	(fixupExecuteOutOfLine): Likewise.
	(canSimulate): Likewise.
	(simulate): Likewise.
	(toString): Likewise.

2007-06-02  Mark Wielaard  <mwielaard@redhat.com>

	* TestTaskObserverCode.java: Add running without deletion and
	deletion and inserting after running again.
	
2007-06-27  Mark Wielaard  <mwielaard@redhat.com>
	
	* Isa.java (setPC): New method.
	* IsaIA32.java (setPC): Likewise.
	* IsaPowerPC.java (setPC): Likewise.
	* IsaX8664.java (setPC): Likewise.
	
2007-06-26  Andrew Cagney  <cagney@redhat.com>

	* Manager.java: Update, package frysk.proc.ptrace renamed to
	frysk.proc.live.
	* IsaX8664.java: Ditto.
	* IsaIA32.java: Ditto.
	* IsaPowerPC.java: Ditto.

2007-06-25  Mark Wielaard  <mwielaard@redhat.com>

	* Task.java (step_send): Removed field, now a real state in ptrace.

2007-06-20  Mark Wielaard  <mwielaard@redhat.com>

	* Observation.java (toString): Include
	observable and observer.

	* Task.java (just_started): New boolean field.

	* TestTaskObserverInstruction.java
	(testFirstInstructionStep): New test)
	(StepAttachedObserver): New inner class.
	(testFirstInstructionSteppingEngine): Renamed method from
	testFirstInstructionStep. Remove broken marker.

2007-06-19  Mike Cvet  <mcvet@redhat.com>

	* TestTaskObserverInstruction.java (testFirstInstructionStep): Added
	as unit test for #4663.
	(AttachedObserver): Added.
	(LockObserver): Added.

2007-06-18  Andrew Cagney  <cagney@redhat.com>

	* ProcBlockAction.java: Update, package frysk.proc.corefile
	renamed to frysk.proc.dead.

2007-06-15  Mark Wielaard  <mwielaard@redhat.com>

	* Instruction.java: New class.
	* Breakpoint.java (origInstruction): Change type to Instruction.
	(set): Get and set breakpoint and orig through Isa Instruction.
	(reset): Use origInstruction.getBytes().
	* Isa (getBreakpointInstruction): return Instruction.
	(getInstruction): New method.
	* IsaIA32.java (BREAKPOINT_INSTRUCTION): Removed.
	(IA32Breakpoint): New static field.
	(getBreakpointInstruction): Return IA32Breakpoint.
	(getInstruction): New method.
	(getBreakpointAddress): Just subtract 1.
	* IsaX8664.java (BREAKPOINT_INSTRUCTION): Removed.
	((getBreakpointInstruction): Return X8664Breakpoint.
	(getInstruction): New method.
	(getBreakpointAddress): Just subtract 1.
	* IsaPowerPC.java (BREAKPOINT_INSTRUCTION): Removed.
	(ppcBreakpoint): New static field.
	(getBreakpointInstruction): Return ppcBreakpoint.
	(getInstruction): New method.

2007-06-13  Phil Muldoon  <pmuldoon@redhat.com>

	* MemoryMap.java (toString): Return richer data.

2007-06-12  Nurdin Premji  <npremji@redhat.com>

	* Task.java (getMod): Added.
	(modCount): Added.
	(incrementMod): Added.

2007-06-07  Nurdin Premji  <npremji@redhat.com>

	* ProcCoreAction.java: Added.	
	* TestProcForceDetach.java (MyProcBlockAction): made to implement
	ProcObserver.ProcAction.
	(MyProcBlockAction.taskAddFailed): Added.
	(MyProcBlockAction.MyProcBlockAction): Removed unused parameter.
	(MyProcBlockAction.addedTo): Added.
	(requestRemove): Reflect changes to ProcBlockAction.
	* ProcBlockAction.java: Changed to take a ProcObserver.ProcAction
	rather than implement ProcObserver.
	(ProcBlockAction): Removed unused constructors.	
	* TestProcStopped.java (MyTester): Implement ProcObserver.ProcAction.
	(MyTester.taskAddFailed): Added.
	(MyTester.addedTo): Added.
	(stopped): Reflect changes to ProcBlockAction.
	(running): Ditto.
	* ProcObserver.java (ProcAction): Added.	
	* StressTestAbandon.java (Action): Added.
	(testStressAbandon): Use Action, reflect changes to ProcBlockAction.

2007-06-01  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockAction.java (ProcBlockAction): Added constructors that take
	corefile Files, and ProcIds.	

2007-05-29  Andrew Cagney  <cagney@redhat.com>

	* TestIsa.java (test64To32Isa): Use unsupported.
	(test64To32To64): Ditto.

2007-05-29  sami wagiaalla  <swagiaal@redhat.com>

	* TestLib.java: Added getMainTask() to AttachedDaemonProcess.

2007-05-28  Nurdin Premji  <npremji@redhat.com>

	* Proc.java (isVDSO): Removed.

2007-05-25  Nurdin  <npremji@redhat.com>

	* MemoryMap.java (toString): Added.

2007-05-24  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestRefreshXXX(boolean)): Delete.
	* StressAttachDetachRapidlyForkingMainTask.java: Update.
	* TestTaskObserverBlocked.java
	(testRefreshAfterUnblockedForkExits): Update.
	* TestRefresh.java (testRefreshAll): Delete.
	(testRefreshDaemon, testRefreshZombie)
	(testUnattachedMultipleExec): Update.  Do not check tasks.
	
2007-05-23  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestRefreshXXX(boolean)): Make package-private.

2007-05-22  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestRefreshXXX()): New.
	* TestRefresh.java: Use.
	* TestFindProc.java: Use.

2007-05-19  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTaskState.java: Delete, moved to
	frysk.proc.ptrace.LinuxTaskState.
	* TaskObservable.java: Make public.
	* Breakpoint.java (create): Make public.
	* Proc.java (performTaskAttachCompleted, remove)
	(performTaskDetachCompleted, requestDeleteObserver, retain)
	(breakpoints): Make public.
	* Task.java (blockers, instructionObservers, syscallObservers)
	(removeObservers, pendingObservations, codeObservers)
	(TaskStateObservable.notify): Make public.
	* BreakpointAddresses.java (removeAllCodeObservers): Make public.
	* TaskObservation.java: Make public.

2007-05-18  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProcState.java: Delete, moved to
	frysk.proc.ptrace.LinuxProcState.
	* Proc.java (ObservableXXX.notify, taskPool): Make public.

	* Task.java (performAttach, performContinue, performDetach): Make
	public.

	* Proc.java (sendRefresh): Make public.

	* Task.java (notifyTerminated, notifyAttached)
	(notifyForkedOffspring, notifyClonedOffspring, notifySignaled)
	(notifyClonedParent, notifyCodeBreakpoint, notifySyscallEnter)
	(notifySyscallExit, notifyTerminating, notifyForkedParent)
	(notifyExeced, notifyInstruction): Make public.

	* Proc.java (host): Make private.
	* Task.java (proc): Make private.
	* ProcEvent.java: Update.
	* LinuxPtraceTaskState.java: Update.
	* SyscallExaminer.java: Update.
	* TestLib.java: Update.
	* TestMemory.java: Update.
	* TestProcGet.java: Update.
	* TestRegisters.java: Update.
	* TestTaskObserverBlocked.java: Update.
	* TestTaskObserverDetach.java: Update.
	* TestTaskObserver.java: Update.

	* Task.java (sendContinue, sendSyscallContinue)
	(sendStepInstruction, sendStop, sendSetOptions, sendAttach)
	(sendDetach, startTracingSyscalls, stopTracingSyscalls): Make
	public and concrete.

2007-05-17  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java: Delete, remaining contents moved to
	frysk.proc.ptrace.LinuxHost.
	* Host.java (logger): Make protected.
	* Proc.java (performRemoval, remove(Proc), parent, add): Make
	public.

	* LinuxPtraceProc.java: Delete, remaining content moved to
	frysk.proc.ptrace.LinuxProc.
	* Proc.java (taskPool, remove): Make protected.
	* LinuxPtraceTaskState.java: Replace LinuxPtraceProc with
	LinuxProc.
	* Task.java (performRemoval): Make public.
	* LinuxPtraceProcState.java: Make public.
	* TaskId.java (TaskId): Make public.
	* Id.java (id): Make public.

2007-05-17  Nurdin Premji  <npremji@redhat.com>
	
	* Proc.java (getMap): Added.
	(isVDSO): Added.

2007-05-17  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java: Delete, remaining content moved to
	frysk.proc.ptrace.LinuxTask.
	* Task.java (steppingBreakpoint, sig_send, syscall_sigret)
	(step_send): Make public.

2007-05-16  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceProc.java (sendrecAuxv, sendrecMaps, sendrecCmdLine)
	(sendrecGID, sendrecUID, sendrecExe, sendrecIsa): Move to
	frysk.proc.ptrace.LinuxProc.

	* LinuxPtraceTask.java (sendrecMemory, sendrecRegisterBanks)
	(sendrecIsa): Move to frysk.proc.ptrace.LinuxTask.

2007-05-15  Phil Muldoon  <pmuldoon@redhat.com>

	* Proc.java (getMaps): New method. Define.
	* LinuxPtraceProc.java (sendrecMaps): New method. Implement.
	* TestMapGet.java: New File.
	* MemoryMap.java: New File.

2007-05-15  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceWaitBuilder.java: Move to
	frysk.proc.ptrace.LinuxWaitBuilder.
	* LinuxPtraceHost.java: Update.  Remove eventLoop parameter.
	* LinuxPtraceTask.java (postDisappearedEvent): Make abstract.
	* Task.java (processExecedEvent, processTerminatedEvent)
	(processSyscalledEvent, processDisappearedEvent)
	(processTerminatingEvent, processSignaledEvent)
	(processTrappedEvent, processStoppedEvent, processForkedEvent)
	(processClonedEvent): Move to frysk.proc.ptrace.LinuxTask.
	(set(TaskState)): New protected method.

	* Id.java (id): Make protected.

	* Host.java (get(TaskId)): Make public.

	* TaskEvent.java: Make constructors protected.

	* TaskState.java: Make all handle methods public.
	* ProcState.java: Ditto.
	* LinuxPtraceTaskState.java: Update.

	* LinuxPtraceHost.java: Use frysk.proc.ptrace.LinuxProc.
	* LinuxPtraceWaitBuilder.java: Ditto.
	* LinuxPtraceProc.java: Make abstract.
	(getStat): Make public.
	(LinuxPtraceProc): Make constructors protected.

2007-05-14  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTaskState.java: Make public.
	(detachedState, mainState, clonedState): Delete moved to
	frysk.proc.ptrace.LinuxTaskState.
	* Task.java (getState): Make protected.
	* LinuxPtraceTask.java: Make abstract, and constructors protected.
	* LinuxPtraceHost.java: Update, use frysk.proc.ptrace.LinuxTask.
	* LinuxPtraceProc.java: Ditto.
	* LinuxPtraceWaitBuilder.java: Ditto.

	* LinuxPtraceHost.java (LinuxPtraceHost): Make protected.
	* Manager.java: Use frysk.proc.ptrace.LinuxHost.

	* Task.java (isDestroyed): Delete.
	* ProcBlockAction.java (checkFinish): Do not call
	Task.isDestroyed.
	
2007-05-14  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockAction.java: Add some explanatory javadoc.

2007-05-14  Andrew Cagney  <cagney@redhat.com>

	* Task.java (isDestroyed): Make package private.

2007-05-10  Andrew Cagney  <cagney@redhat.com>

	* TestLinuxCore.java: Moved to frysk.proc.corefile.
	* LinuxCoreFileHost.java: Moved to frysk.proc.corefile.
	* LinuxCoreFileProc.java: Moved to frysk.proc.corefile.
	* LinuxCoreFileProcState.java: Moved to frysk.proc.corefile.
	* LinuxCoreFileTask.java: Moved to frysk.proc.corefile.
	* LinuxCoreFileTaskState.java: Moved to frysk.proc.corefile.

	* ProcState.java: Make all methods protected.
	* TaskState.java: Make all methods protected.
	* LinuxCoreFileProcState.java: Update.
	* LinuxCoreFileTaskState.java: Update.

	* Task.java (memory): Make private.
	(sendrecMemory): Replace fillMemory.
	(getMemory): Use.
	(registerBank): Make private.
	(sendrecRegisterBanks): Replace fillRegisterBank.
	(getRegisterBanks): Rename getRegisterBank, use.
	* Register.java: Update.
	* LinuxPtraceTask.java: Update.
	* LinuxCoreFileTask.java: Update.

	* TaskState.java: Make public.
	* Observation.java: Make public, make members protected.

	* IsaFactory.java (getSingleton): Rename getFactory, make public.
	* TestIsa.java: Update.
	* LinuxPtraceTask.java: Update.
	* LinuxPtraceProc.java: Update.
	* LinuxCoreFileProc.java: Update.

	* TaskId.java: Make public.

	* Host.java (getInitialState): Delete.
	* HostState.java: Implement single state directly.
	* LinuxCoreFileHostState.java: Delete.
	* LinuxPtraceHostState.java: Delete.
	* LinuxCoreFileHost.java: Update.
	* LinuxPtraceHost.java: Update.

	* Task.java (sendrecIsa): Put scope at start of declaration.
	* Proc.java (sendRefresh, sendrecAuxv, sendrecIsa): Make protected.
	* ProcState.java: Make public.
	* HostState.java: Make public.
	* Host.java (Host): Make protected.
	(sendRefresh, sendCreateAttachedProc): Make protected.
	* DummyProc.java: Replaced by frysk.proc.dummy.Proc.
	* DummyHost.java: Replaced by frysk.proc.dummy.Host.
	* DummyTask.java: Replaced by frysk.proc.dummy.Task.
	* LinuxPtraceHost.java: Update scopes.
	* LinuxPtraceProc.java: Update scopes.
	* LinuxCoreFileHost.java: Update scopes.
	* LinuxCoreFileProc.java: Update scopes.

2007-05-04  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskSyscallObserver.java: Added a syscall cache.
	Replaced SyscallEventInfo.arg() with Syscall.getArguments().
	Replaced SyscallEventInfo.returnCode() with Syscall.getReturnCode().
	* SyscallEventInfo.java (arg): Removed.
	(returnCode): Removed.
	* Syscall.java: Changed all calls to SyscallEventInfo.args() to 
	this.getArgument().
	Changed all calls to SyscallEventInfo.returnCode() to
	this.getReturnCode().
	* LinuxIa32Syscall.java: Changed second argument of write system call
	to a string.
	* LinuxX8664Syscall.java: Ditto.
	* LinuxPowerPCSyscall.java: Ditto.

2007-05-03  Tim Moore  <timoore@redhat.com>

	* TestLib.java: remove import of frysk.event.SignalEvent to avoid
	an ecj warning.

	* ProcLogger.java: New file.
	* Host.java: Use ProcLogger logging destination.
	* IsaFactory.java: Ditto.
	* LinuxPPC.java: Ditto.
	* LinuxPPC64.java: Ditto.
	* Proc.java: Ditto.
	* ProcEvent.java: Ditto.
	* ProcTaskObserver.java: Ditto.
	* State.java: Ditto.
	* Task.java: Ditto.
	* TaskEvent.java: Ditto.
	* Observable.java: Make public.
	
2007-05-03  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (AckHandler): Delete.  Replace with
	frysk.testbed.SignalWaiter.
	* TestIsa.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskObserverDetach.java: Ditto.

	* Manager.java: Use frysk.event.EventLoop.factory.

2007-05-02  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java: Replace frysk.sys.PtraceServer with
	frysk.sys.Ptrace.
	* LinuxPtraceHost.java: Replace frysk.sys.PtraceServer.child with
	frysk.sys.Fork.ptrace.

2007-04-26  Mark Wielaard  <mark@klomp.org>

	* frysk-core/frysk/proc/LinuxPtraceTaskState.java (detaching):
	Add handleDisappearedEvent.

2007-04-23  Mark Wielaard  <mark@klomp.org>

	* TestTaskObserverCode (child, task, proc): Make private fields.
	(testCode): Call getFunctionAddress for bp1_func. Delete and
	retry breakpoint setting.
	(dummySig): New static final field.
	(requestDummyRun, requestDummyRun): New methods.
	(getFunctionEntryAddress): New method.
	(CodeObserver.deletedFrom): Request event loop shutdown.

2007-04-19  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java: Add 2.6.20-1.2312.fc5 to problem list.

2007-04-17  Andrew Cagney  <cagney@redhat.com>

	* TestSyscallRunning.java (setUp): Replace EventLoop.run with
	assertRunUntilStop; do not create an EventLoopRunner.
	(EventLoopRunner, monitor, eventLoop, tearDown): Delete.
	(SyscallObserver.updateSyscallEnter, SyscallObserver.addedTo)
	(SyscallObserver.updateSyscallExit, SyscallObserver.deletedFrom):
	Simplify, call EventLoop.requestStop.
	(testSyscallRunning): Replace synchronize blocks with calls to
	assertRunUntilStop.
	
	* TestSyscallSignal.java (setUp): Use Replace EventLoop.run with
	assertRunUntilStop; do not create EventLoopRunner.
	(EventLoopRunner, eventLoop, monitor): Delete.
	(tearDown): Delete.
	(testIt): Replace synchronize blocks with calls to
	assertRunUntilStop.
	(SignalObserver.addedTo, SignalObserver.deletedFrom)
	(SyscallObserver.updateSyscallEnter, SyscallObserver.addedTo)
	(SyscallObserver.deletedFrom): Simplify, call
	EventLoop.requestStop.

2007-04-17  Mark Wielaard  <mark@klomp.org>

	* TestTaskObserverCode.java: New test.

2007-04-17  Tim Moore  <timoore@redhat.com>

	* ProcId.java (intValue): New method.
	* TaskId.java (intValue): New method.

2007-04-17  Andrew Cagney  <cagney@redhat.com>

	* TestBreakpoints.java (monitor): Delete.
	(TerminatingObserver.addFailed, CodeObserver.addedTo)
	(CodeObserver.deletedFrom): Replace "monitor" with call to
	EventLoop.requestStop.
	(GoAround): New class.
	(testHitAndRun, testInsertRemove, testAddLots): Delete call to
	EventLoop.start; use GoAround class.
	
2007-04-16  Andrew Cagney  <cagney@redhat.com>

	* TestBreakpoints.java (setUp): Add the terminating observer.
	(TerminatingObserver.addedTo): Simplify, call
	eventLoop.requestStop.
	(terminating, exitSignal, exitValue): Move to TerminatingObserver.
	(terminatingObserver): Add.
	
	* TestBreakpoints.java (AttachedObserver.updateAttatched):
	Simplify, call eventLoop.requestStop.
	(AttatchedObserver.addedTo): Simplify, do nothing.
	(attatched): Delete.
	(setUp): Add the attatched observer.
	(attatchedObserver): Add.

	* TestBreakpoints.java: Make everything possible private.
	(setUp): Use assertRunUntilStop.
	(EventLoopRunner): Delete, has races.
	(AttatchedObserver.added, .isAdded)
	(TerminatingObserver.added, .isAdded): Delete.
	(AttatchedObserver.addFailed, TerminatingObserver.addFailed): Do
	not print stack backtrace when failing.
	(procTerminated): Delete unused.
	
2007-04-15  Andrew Cagney  <cagney@redhat.com>

	* IsaPowerPC.java: Replace frysk.sys.PtraceByteBuffer with
	frysk.proc.ptrace.AddressSpaceByteBuffer.
	* LinuxPtraceTask.java: Ditto.

2007-04-15  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxCoreFileProc.java (LinuxCorefileProc) Store backing
	corefile's name. Store a process's memorymap here.
	(getMemory): New.
	* LinuxCoreFileHost.java: Make coreFile protected.
	* LinuxCoreFileTask.java (getMemory): Ask proc for
	it's memory-maps.
	* TestLinuxCore.java (testLinuxTaskMemory): New.

2007-04-15  Andrew Cagney  <cagney@redhat.com>

	* IsaIA32.java: Replace frysk.sys.RegisterSetBuffer, with
	frysk.proc.ptrace.RegisterSetByteBuffer.
	* IsaX8664.java: Ditto.

2007-04-13  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (tearDown): Call TearDownProcess.tearDown().
	(setUp): Do not clear pidsToKillDuringTearDown.
	(pidsToKillDuringTearDown, killDuringTearDown): Delete.
	(capturedSendTkill, capturedSendDetachContKill): Delete.	

	* TestLib.java (TmpFile, tmpFiles, deleteTmpFiles): Delete.
	Import frysk.testbed.TearDownFile.
	(tearDown): Call TearDownFile.tearDown().
	* TestProcGet.java: Use frysk.testbed.TearDownFile.
	* TestExec.java: Ditto.
	* TestRun.java: Ditto.

2007-04-09  Andrew Cagney  <cagney@redhat.com>

	* TestProcTasksObserver.java (testCloneThenKillAttached)
	(testDeleteAttached): Remove brokenIfUtraceXXX due to 3486.
	* Manager.java (usePoll): Set to false, enable WaitEventLoop.

2007-04-05  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceTask.java: Use Ptrace.optionTraceSysgood,
	optionTraceClone, optionTraceFork, optionTraceExit,
	optionTraceExec.
	* IsaIA32.java: Use Ptrace.REGS, FPREGS, and FPXREGS.
	* IsaX8664.java: Ditto.

	* LinuxPtraceTask.java: Replace Ptrace with PtraceServer and/or
	SigSet with SignalSet.
	* LinuxPtraceHost.java: Ditto.
	* IsaX8664.java: Ditto.
	* IsaIA32.java: Ditto.
	* TestLib.java: Ditto.

2007-04-04  Andrew Cagney  <cagney@redhat.com>

	* Manager.java (newEventLoop): Add, use.
	(usePoll): Add.

	* LinuxPtraceHost.java: Add LinuxPtraceWaitBuilder directly to
	EventLoop.
	(PollWaitOnSigChld): Delete.
	
	* TestLib.java: Use Signal.drain to drain pending signals.

	* LinuxPtraceHost.java: Move WaitBuilder implementation to ...
	* LinuxPtraceWaitBuilder.java: ... here.  New file.

2007-04-04  Tim Moore  <timoore@redhat.com>

	* LinuxPtraceTask.java (fillMemory): Allocate PtraceByteBuffer with
	'unsigned' long (-1) length.

2007-04-03  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Replace frysk.sys.Poll.Observer with
	frysk.sys.PollBuilder.

2007-04-02  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (FailWaitObserver, IgnoreWaitObserver): Delete, use
	UnhandledWaitBuilder and Wait.drain.
	
	* Manager.java: Use PollEventLoop.

2007-03-29  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java: Replace frysk.sys.Wait.Observer with
	frysk.sys.WaitBuilder.
	* TestLib.java: Ditto.

2007-03-28  Mark Wielaard  <mark@klomp.org>

	* Host.java (logger): Use fully qualified frysk.proc for getLogger().
	* IsaFactory.java (logger): Likewise.
	* LinuxPPC.java (logger): Likewise.
	* LinuxPPC64.java (logger): Likewise.
	* Proc.java (logger): Likewise.
	* ProcEvent.java (logger): Likewise.
	* ProcTasksObserver.java (logger): Likewise.
	* State.java (logger): Likewise.
	* Task.java (logger): Likewise.
	* TaskEvent.java (logger): Likewise.
	* TestLib.java (logger): Likewise.

2007-03-28  Mark Wielaard  <mark@klomp.org>

	* LinuxPtraceTaskState.java (attaching):
	Add handleUnblock, handleAddObservation and handleDeleteObservation.
	(Attached): Add handleTerminatedEvent.

2007-03-27  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java (testRefreshZombie): Add 2.6.20-1.2307.fc5 to
	broken list.

2007-03-23  Phil Muldoon  <pmuldoon@redhat.com>

	* TestLinuxCore.java: Fix debug output.
	Rewrite Class. Use one host, and refresh each test.
	* LinuxCoreFileTask.java: Fix build typos.

2007-03-23  Phil Muldoon  <pmuldoon@redjat.com>

	* TestLinuxCore.java: New.
	* LinuxCoreFileTaskState.java: New.
	* LinuxCoreFileTask.java:New.
	* LinuxCoreFileHostState.java: New.
	* LinuxCoreFileHost.java:New.
	* LinuxCoreFileProcState.java: New.
	* LinuxCoreFileProc.java: New.

	* TestIsa.java: Changed to call getIsaForCoreFile.
	* IsaFactory.java (getIsaByElfType): Renamed to 
	getIsaForCoreFile. Also, modified to always return
	the architecture of the core file, regardless of 
	32on64 ISA situations.

2007-03-23  Nurdin Premji  <npremji@redhat.com>

	* LinuxIa32On64.java (IndirectRegister.getBytes): Added.

2007-03-22  Phil Muldoon  <pmuldoon@redhat.com>

	* DummyTask.java: Pass initial state.
	* Task.java: (Task) Remove Ptrace states. Add new constructor
	parameter state.
	* LinuxPtraceTask.java: (LinuxPtraceTask): Pass in starting
	states.

2007-03-20  Phil Muldoon  <pmuldoon@redhat.com>

	* Host.java (Host): Remove PtraceState. Call getInitialState instead.
	(getInitialState): Define abstract, protected.
	* LinuxPtraceHost.java: New. Define starting state.
	* DummyHost.java: Ditto.

2007-03-19  Phil Muldoon  <pmuldoon@redhat.com>

	* IsaFactory.java (getIsaByElfType): New.
	* TestIsa.java (testArbitraryISAInstantiation): New.

2007-03-19  Mark Wielaard  <mark@klomp.org>

	* TestBreakpoints.java (brokenSignals): Removed.

2007-03-08  Kris Van Hees  <kris.van.hees@oracle.com>

	* TestBreakpoints.java: Added 2.6.19-1.2911.6.5.fc6 to brokenSignals()

2007-03-06  Nurdin Premji  <npremji@redhat.com>

	* Register.java (getBytes): New.
	* TestLib.java (AttachedAckProcess.AttachedAckProcess): Made public.

2007-03-06  Andrew Cagney  <cagney@redhat.com>

	* Auxv.java: Use inua.elf.AT, revert 2007-03-06 change.

2007-03-06  Mark Wielaard  <mark@klomp.org>

	* Auxv.java: Use lib.elf.ElfAT.

2007-03-05  Kris Van Hees  <kris.van.hees@oracle.com>

	* TestBreakpoints.java: Added 2.6.19-2.2895.fc6, 2.6.19-1.2911.fc6,
	and 2.6.19-1.2911.6.4.fc6 to list of problem kernels.

2007-02-24  Tim Moore  <timoore@redhat.com>

	* Task.java (requestUnblock): Pass task as argument to TaskEvent 
	constructor.

2007-02-23  Andrew Cagney  <cagney@redhat.com>

	* TestBreakpoints.java: Add 2.6.19-1.2288.fc5 to list of problem
	kernels.
	* TestRefresh.java (testRefreshZombie): Ditto.

2007-02-19  Mark Wielaard  <mark@klomp.org>

	* LinuxPtraceTaskState.java (Attached.handleDeleteObservation):
	Also unblock observer.

2007-02-15  Tim Moore  <timoore@redhat.com>

	* LinuxPtraceTaskState.java
	(Attached.WaitForUnblock.handleUnblock): Add some more logging at
	FINEST level.

2007-02-13  Andrew Cagney  <cagney@redhat.com>

	* TaskObserver.java (Attached): Make package private.

2007-02-12  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (assertRunTime, static): Delete.
	(assertRunUntilStop): Use getTimeoutSeconds.

2007-02-12  Mark Wielaard  <mark@klomp.org>

	* Isa.java (isAtSyscallSigReturn): New method.
	* IsaIA32.java (isAtSyscallSigReturn): Likewise.
	* IsaPowerPC.java (isAtSyscallSigReturn): Likewise.
	* IsaX8664.java (isAtSyscallSigReturn): Likewise.
	* LinuxPtraceTask.java (sendStepInstruction): Set syscall_sigret.
	* LinuxPtraceTaskState.java (Running.handleTrapEvent): Check
	syscall_sigret.
	(BlockedSignal.unblock): SendContinue with pending signal.
	* Task.java (syscall_sigret): New field.
	* TestTaskObserverInstructionSigReturn.java: New test.

2007-02-09  Andrew Cagney  <cagney@redhat.com>

	* TestProcStopped.java: Replace brokenUtraceXXX with
	brokenIfUtraceXXX.
	* TestTaskTerminateObserver.java: Ditto.
	* TestProcTasksObserver.java: Ditto.
	* TestRefresh.java (testRefreshZombie): Use brokenIfKernelXXX.
	* TestBreakpoints.java (brokenSignals): New.
	(testSteppingtestHitAndRun, testSteppingtestInsertRemove)
	(testSteppingAddLots): Call brokenSignals.

2007-02-08  Mark Wielaard  <mark@klomp.org>

	* TestBreakpoint.java: Lower interations from 7 to 3.

2007-02-08  Tim Moore  <timoore@redhat.com>

	* LinuxPtraceTaskState.java (handleAddObservation,
	handleDeleteObservation): Fix typo in log message in every state's
	implementations of these methods.

2007-02-08  Mark Wielaard  <mark@klomp.org>

	* LinuxIa32Syscall.java (syscallList): Add getcpu and epoll_pwait.
	* LinuxPowerPCSyscall.java (syscallList): Add move_pages.
	* TestSyscallsWithAudit.java (syscallTest): Change test to up to
	at least highest number in auditlib.

2007-02-07  Mark Wielaard  <mark@klomp.org>

	* Isa.java (hasExecutedSpuriousTrap): New method.
	* IsaIA32.java (hasExecutedSpuriousTrap): Likewise.
	* IsaPowerPC.java (hasExecutedSpuriousTrap): Likewise.
	* IsaX8664.java (hasExecutedSpuriousTrap): Likewise.
	* LinuxPtraceTask.java (sendContinue): Setup step_send and sig_send.
	(sendSyscallContinue): Likewise.
	(sendStepInstruction): Likewise.
	* LinuxPtraceTaskState.java (Running.handleTrappedEvent):
	Add sanity checks and check for spurios traps and signal handler
	entry. Chain to handleSignaledEvent() otherwise.
	* Task.java (step_send, sig_send): New fields.

	* TestBreakpoints.java (installInstructionObserver): New field.
	(setUp): Initialize installInstructionObserver to false.
	(testHitAndRun): Check whether an InstructionObserver should be
	installed.
	(testInsertRemove): Likewise.
	(testAddLots): Likewise.
	(testSteppingtestHitAndRun): New method.
	(testSteppingtestInsertRemove): New method.
	(testSteppingAddLots): New method.
	(InstructionObserver): New static class.

2007-02-06  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (getExecPrefix): Delete.
	(getExec32Prefix): Delete.
	(getAbsolutePrefix, getExecPath, getExec32Path)
	(getExec64Path): Define.
	* StressAttachDetachManyTasks.java: Update.
	* StressAttachDetachRapidlyForkingMainTask.java: Update.
	* StressAttachDetachRapidlyCloningMainTask.java: Update.
	* TestBreakpoints.java: Update.
	* TestIsa.java: Update.
	* TestMemory.java: Update.
	* TestProcGet.java: Update.
	* TestRegisters.java: Update.
	* TestSyscallRunning.java: Ditto.
	* TestSyscallSignal.java: Ditto.
	* TestTaskClonedObserver.java: Update.
	* TestTaskForkedObserver.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskSyscallObserver.java: Update.
	* TestTaskTerminateObserver.java: Ditto.

2007-02-05  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Replace frysk.junit.Paths with frysk.Config.

2007-02-02  Phil Muldoon  <pmuldoon@redhat.com>

	* Proc.java (Proc): Remove setting LinuxPtraceState states.
	Use getInitialState() to find initial states from sub-classes of
	Proc.
	(getInitialState): New. Abstract.
	* LinuxPtraceProc.java (getInitialState): New. Set initial state.
	* DummyProc.java (getInitialState): Ditto.

2007-02-02  Mark Wielaard  <mark@klomp.org>

	* StressAttachDetachManyTasks.java (test): Remove #2468 blocker.

2007-01-23  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockAction.java (ProcBlockTaskObserver.updateExecuted): Added check to avoid
	main task being dealt with twice. Bug #3909

2007-01-23  Andrew Cagney  <cagney@redhat.com>

	* TaskException.java: Delete.

	* Breakpoint.java: Remove TaskException from comments.
	* LinuxPtraceTask.java: Ditto.

2007-01-23  Nurdin Premji  <npremji@redhat.com>

	* TestGetProc.java: Removed
	* LinuxPtraceHostState.java (running.handleGetProc): Ditto.
	* HostState.java (handleGetProc): Ditto.
	* DummyHost.java (sendGetProc): Ditto.
	* Host: (requestFindProc): Ditto.
	(requestGetProc): Ditto.
	(sendGetProc): Ditto.
	* LinuxPtraceHost.java (sendGetProc): Ditto

2007-01-23  Andrew Cagney  <cagney@redhat.com>

	* LinuxPtraceHost.java: Remove TaskException code.
	* LinuxPtraceTaskState.java: Ditto.
	* Breakpoint.java: Ditto.
	* IsaFactory.java: Ditto.
	* LinuxPtraceTask.java: Ditto.
	* Task.java: Ditto.
	* TestSyscallRunning.java: Ditto.

2007-01-23  Nurdin Premji  <npremji@redhat.com>

	* TestGetProc.java: Added.
	* LinuxPtraceHostState.java (running.handleGetProc): Added.
	* HostState.java (handleGetProc): Added.
	* DummyHost.java (sendGetProc): Added.
	* Host: (requestFindProc): Fixed typo.
	(requestGetProc): Added.
	(sendGetProc): Added.
	* LinuxPtraceHost.java (sendGetProc): Added.
	
2007-01-22  Andrew Cagney  <cagney@redhat.com>

	* IsaFactory.java (getIsa): Convert ElfFileException, and
	ElfException into RuntimeException.  Add note about how getIsa
	should be re-implemented to not require the executable.
	* LinuxPtraceHost.java (sendCreateAttachedProc): Remove catch
	TaskException code, getIsa non-demand so won't trigger an
	exception here.
	* TaskFileException.java: Delete.
	* TaskSevereException.java: Delete.

	* Task.java (getIsa, sendrecIsa, getSyscallEventInfo): Remove
	throw TaskException.
	(getDwflLineXXX, getDwflLineXXX): Delete.
	* IsaFactory.java (getIsa): Ditto.
	* Proc.java (sendrecIsa, getIsa): Ditto.
	* LinuxPtraceTask.java (sendrecIsa): Ditto.
	* LinuxPtraceProc.java (sendrecIsa): Ditto.

	* TestRegisters.java: Do not catch and fail TaskException.
	* TestSyscallSignal.java: Do not catch and fail TaskException.
	* TestTaskSyscallObserver.java: Do not catch and fail
	TaskException.
	* TestTaskObserverInstructionAndCode.java: Do not re-throw
	TaskException as a RuntimeException.
	* Syscall.java: Do not re-throw TaskException as a
	RuntimeException.
	* TestTaskObserverInstruction.java: Do not throw TaskException.
	* TestIsa.java: Do not catch and fail TaskException.
	* TaskException.java: Extend RuntimeException.

2007-01-22  Tim Moore  <timoore@redhat.com>

	* Isa.java (getElfMachineType): New method.
	* IsaIA32.java (getElfMachineType): Implement it.
	* IsaX8664.java (getElfMachineType): ditto
	* IsaPPC.java (getElfMachineType): ditto
	* IsaPPC64.java (getElfMachineType): ditto
	* IsaFactory.java (IsaFactory, getIsa): Implement getIsa with a
	hash table instead of a big conditional.

2007-01-18  Tim Moore  <timoore@redhat.com>

	* Proc.java(getIsa, sendrecIsa): New interface for getting the ISA
	directly from a Proc object. 
	* DummyProc.java (sendrecIsa): implement it.
	* LinuxPtraceProc (sendrecIsa): ditto
	* IsaIA32.java (IsaIA32): Make class public.
	* IsaX8664.java (IsaX8664): ditto
	* IsaPPC.java (IsaPPC): ditto
	* IsaPPC64.java (IsaPPC64): ditto
	* MachineType.java (getMachineType): Use new Proc.getIsa interface
	instead of Uname.

2007-01-18  Mark Wielaard  <mark@klomp.org>

	* TestTaskObserverInstructionAndCode.java
	(TestObserver.updateTerminated): Explicitly fail().

2007-01-17  Nurdin Premji  <npremji@redhat.com>

	* TestLib.java (isChildOf): Changed to use Stat.ppid rather than proc.getParent().getPid().
	(StopEventLoopWhenChildProcRemoved): Removed.
		
2007-01-16  Nurdin Premji  <npremji@redhat.com>

	* TestRegisters.java (TestI386ModifyXXX): Changed to pass in a pid rather than
	use isChildOfMine.
	(TestPPC64ModifyXXX): Ditto.
	(TestX8664ModifyXXX): Ditto.
	(checkI386Modify): Updated.
	(checkPPC64Modify): Ditto.
	(checkX8664Modify): Ditto.
	
	* TestRun.java: Ran GNU formatter. 
	(testCreateAttachedContinuedProc): Changed to use StopEventLoopWhenProcRemoved.
	(testCreateAttachedStoppedProc): Ditto.
	
	* TestTaskObserverBlocked.java: Ran GNU formatter.
	(BlockingFibonacci.BlockingFibonacci): Changed to use StopEventLoopWhenProcRemoved.

2007-01-15  Nurdin Premji  <npremji@redhat.com>

	* TestTaskSyscallObserver.java: Ran GNU formatter.
	(testSyscallLoop): Changed to use StopEventLoopWhenProcRemoved.
	(testSyscallOpen): Ditto.
	(testSyscalls): Ditto.
	
	* TestTaskForkedObserver.java: Ran GNU formatter.
	(testTaskForkedObserver): Changed to use StopEventLoopWhenProcRemoved.
	
	* TestTaskClonedObserver.java: Ran GNU formatter. 
	(testTaskCloneObserver): Changed to use StopEventLoopWhenProcRemoved.
	
	* TestProcGet.java: Ran GNU formatter.
	(testGetAuxv): Changed to use StopEventLoopWhenProcRemoved.
	
	* TestExec.java: Ran GNU formatter.
	* TestTaskTerminateObserver.java: Ran GNU formatter.
	 (check):Changed to use StopEventLoopWhenProcRemoved.
	 	
	* TestExec.java (testTaskBlockExec): Changed to use StopEventLoopWhenProcRemoved.
	(testProcBlockExec): Ditto.
	
	* Proc.java: Removed proc.ppid.
	* TestLib.java: Removed proc.ppid.

	* TestLib.java: Ran gnu formatter.
	(isChildOf): Changed to use proc.ppid rather than proc.parent.
	* Proc.java: Ran gnu formatter.
	(Proc): Added variable ppid to store parent pid, use frysk.sys.proc.Stat to fill.

2007-01-15  Andrew Cagney  <cagney@redhat.com>

	* IsaFactory.java: Replace Build.BUILD_ARCH with
	Config.getTargetCpuXXX.

2007-01-15  Mark Wielaard  <mark@klomp.org>

	Fixes bug #3240
	* TestBreakPoints.java (testInsertRemove): Make sure the observer
	is properly installed.

2007-01-15  Mark Wielaard  <mark@klomp.org>

	Fixes bug #3676
	* Breakpoint.java (stepDone): Only set if still installed.
	(isInstalled): new method.
	(toString): Prettify.
	* IsaIA32.java (isTaskStepped): Reset flag.
	* IsaX8664.java (isTaskStepped): Likewise.
	* LinuxIa32On64.java (LinuxIa32On64): Install IndirectRegisters for
	d0 till d7.
	* LinuxPtraceTaskState.java (Running.sendContinue): Rewritten to take
	breakpoints into account.
	(Running.handleStoppedEvent): Fix log message. Call sendContinue()
	on new state.
	(Running.handleTrappedEvent): Rewritten.
	(running, syscallRunning, inSyscallRunning, inSyscallRunningTraced):
	Now have type Running.
	(BlockedSignal.handleUnblock): Call sendContinue() on new state.
	* TestTaskObserverInstruction.java: Don't test Isa.isTaskStepped().
	* TestTaskObserverInstructionAndCode.java: Enable.

2007-01-12  Mark Wielaard  <mark@klomp.org>

	* Isa.java (isTaskStepped): New method.
	* IsaIA32.java (I387_OFFSET): Removed unused field.
	(DBG_OFFSET): Document how to get value.
	(getRegisterBankBuffers): Add "USR" bank.
	(DBGRegister): New static class.
	(dbg): Removed unused field.
	(IsaIA32): Create debug register and add to registerMap.
	(isTaskStepped): New method.
	* IsaPowerPC.java (isTaskStepped): Implemented (as returning false).
	* IsaX8664.java (FPREGS_OFFSET): removed unused field.
	(DBG_OFFSET): Document and correct value.
	(DBGRegister): New static class.
	(IsaX8664): Create debug register and add to registerMap.
	(isTaskStepped): New method.
	(getRegisterBankBuffers): Add "USR" bank.
	* TestTaskObserverInstruction.java: Add isTaskStepped() tests.

2007-01-12  Nurdin Premji  <npremji@redhat.com>

	* TestProcStopped.java (stopped): Updated name change from sendStopXXX 
	to assertSendStop.
	* TestLib.java (AckProcess.assertSendStop): Renamed from sendStopXXX. Now
	ensures that the process is in state 'T'. Bug #3473

2007-01-10  Nurdin Premji  <npremji@redhat.com>

	* TestLib.java: Changed to use Runner.getTimeout to find default value
	for assertRunUntilStop.

2007-01-05  Nurdin Premji  <npremji@redhat.com>

	* TestAbandon.java (testStressAbandon): Added.

2007-01-05  Andrew Cagney  <cagney@redhat.com>

	* TestIsa.java: Replace Build.BUILD_ARCH with Config.getWordSize.

2007-01-04  Nurdin Premji  <npremji@redhat.com>

	* TestLib.java (assertRunUntilStop): Changed to give more time to logged tests.
	* Task.java (getMemory): Added logging messages.
	* LinuxPtraceTask.java (fillMemory): Removed null check, getMemory does this.
	(fillRegisterBank): Ditto. (getRegisterBank does this).

2006-12-21  Nurdin Premji  <npremji@redhat.com>

	* TestIsa.java (testAttachedCreateChild): Removed redundant e.printStackTrace.
	(AttachedObserver.updateAttached): Ditto.
	(testAttachDetachAttachAgainDetachAgainAttachAgainAgain): Ditto.
	(test64To32Isa): Ditto.
	(testIsaSingleton): Ditto.
	(test64To32To64): Ditto.
	(testAttachedCreateAttachedClone): Ditto.
	(testAttachedCreateAttachedChild): Ditto.

2006-12-21  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (getExec32Prefix): Add.
	* TestIsa.java: Use getExec32Prefix.

2006-12-20  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockAction.java (ProcBlockAction): Removed isOwned check as per 
	bug 3774.
	
	* LinuxPtraceTaskState.java (.transitionToAttached): Removed taskStateAttached notify.
	* Task.java: Removed taskStateAttached.
	(notifyAttached): clear isa here, not with taskStateAttached.

2006-12-19  Andrew Cagney  <cagney@redhat.com>

	* IsaFactory.java: For i386, only return Ia32On64 when build
	system was x86-64.  HACK!!

2006-12-19  Nurdin Premji  <npremji@redhat.com>

	* LinuxPtraceTaskState.java (.transitionToAttached): notify Task of 
	transition.
	* ProcBlockAction.java (ProcBlockAction): return/exit after addFailed call.
	* Task.java: Added variable taskStateAttached, fills isa on attach.
	(notifyExeced): Clear isa using clearIsa rather than isa = null.

2006-12-18  Nurdin Premji  <npremji@redhat.com>

	* TestProcStopped.java (MyTester.addFailed): Added.
	* TestProcForceDetach.java (MyProcBlockAction.addFailed): Added.
	* ProcBlockAction.java (ProcBlockAction): Added call to addFailed if proc
	has bad ownership.
	(deletedFrom): Added empty stub method here.	

2006-12-15  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserver.java (testDetachExitingMainTask)
	(testDetachExitingOtherTask): Note broken, 3737.
	* TestProcStopped.java (testMultiThreadedStoppedDetached)
	(testMultiThreadedStoppedAckDaemon): Note broken, 3595.
	* TestRefresh.java (testRefreshZombie): Note broken, 3488.
	* TestProcTasksObserver.java (testCloneThenKillAttached)
	(testDeleteAttached): Note broken, 3486.

	* TestTaskTerminateObserver.java (check): Mark anything involving
	exit(47) or SIGKILL as broken, 3489.

2006-12-15  Nurdin Premji  <npremji@redhat.com>

	* ProcException.java: Removed.
	* ProcBlockAction.java: Reverted ProcException.
	* TestProcForceDetach: Ditto.
	* TestProcStopped: Ditto.

2006-12-15  Mike Cvet  <mcvet@redhat.com>

	* TestLib.java (AttachedSyscallDaemonProcess): Cleaned up, fixed.
	(AttachedSyscallDaemonProcess.deleteObservers): Added.

2006-12-15  Nurdin Premji  <npremji@redhat.com>

	* ProcException.java (ProcException): Added.	
	* TestProcForceDetach.java (MyProcBlockAction): Renamed from MyObserver.
	(MyProcBlockAction.MyProcBlockAction): 	throw ProcException.
	(requestRemove): catch ProcException
	* ProcBlockAction.java (.execute): Moved null proc and proc ownerships to ..
	(ProcBlockAction): here. Throw exception on null proc and proc ownership.	
	* TestProcStopped.java (MyTester.MyTester): throw ProcException
	(running): Catch ProcException
	(stopped): Ditto.

2006-12-14  Andrew Cagney  <cagney@redhat.com>

	* TestRegisters.java: Replace TestRegMemModify.java.
	* TestRegs.java: Delete.

	* TestMemory.java (testMemoryReadWrite): Mark as broken by 3725.
	Fix name of test executable.
	
	* TestMemory.java: Rename TestModify.java.

	* TestTaskSyscallObserver.java (TestSyscallInterruptXXXX):
	Rename TestSyscallInterruptInternals.
	* TestRegs.java (TestI386RegsXXX): Rename TestI386RegsInternals.
	(TestX8664RegsXXX): Rename TestX8664RegsInternals.
	(TestPPC64RegsXXX): Rename TestPPC64RegsInternals.
	* TestRegMemModify.java (TestI386ModifyXXX): Rename
	TestI386ModifyInternals.
	(TestX8664ModifyXXX): Rename TestX8664ModifyInternals.
	(TestPPC64ModifyXXX): Rename TestPPC64ModifyInternals.
	* TestModify.java (TestModifyXXX): Rename TestModifyInternals.

	* TestRegs.java (checkI386Regs, checkX8664Regs, checkPPC64Regs):
	Run funit-regs.

2006-12-12  Tim Moore  <timoore@redhat.com>

	* LinuxIa32On64.java(LinuxIa32On64): Added st and floating point
	control registers.

2006-12-11  Andrew Cagney  <cagney@redhat.com>

	* .cvsignore: Delete.

	* TestBreakpoints.java: Import frysk.testbed.ForkTestLib.  Replace
	wild card imports of java.net.* and java.io.* with explict
	includes.  Note need to simplify test down to a single thread.
	* TestSyscallSignal.java: Ditto.
	* TestSyscallRunning.java: Ditto.
	* ForkTestLib.java: Moved to frysk-imports/frysk/testbed/.
	* cni/ForkTestLib.cxx: Moved to frysk-imports/frysk/testbed/cni.

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

	* TestTaskObserverInstructionAndCode.java:
	This isn't a testcase for #3500 after all. Marked as broken
	testcase for bug #3676.

2006-12-06  Andrew Cagney  <cagney@redhat.com>

	* UBigInteger.java: Remove @author.
	* Host.java: Ditto.

2006-12-06  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockAction.java: Added (C).
	* DummyHost.java: Ditto.
	* DummyTask.java: Ditto.
	* DummyProc.java: Ditto.

	* LinuxPtraceTask.java (fillRegisterBank): change null== to ==null
	(fillMemory): 	Ditto.
	* Task.java (getRegisterBank): Ditto.
	(getMemory): Ditto.
	* TestSyscallRunning.java (setUp): Removed unnecessary TODO: Autogenerated method stub.

	* TestProcForceDetach.java (MyObserver): Removed unneccesary TODO: Autogenerated method stub.
	* ProcBlockAction.java (ProcBlockTaskObserver): Ditto.
	* TestAbandon.java (TestObserver): Ditto.
	* TestProcStopped.java (MyTester): Ditto.
	* DummyHost.java (sendrecSelf): Ditto.
	* TestBreakpoints.java (setUp): Ditto.
	* DummyTask.java (sendrecIsa): Ditto.
	* TestSyscallSignal.java (setUp): Ditto.
	* DummyProc.java (sendrecCmdLine): Ditto.
	(sendrecExe): Ditto.
	(sendrecAuxv): Ditto.
	(sendrecCommand): 	Ditto.
	* TestTaskSyscallObserver.java (TestSyscallInterruptInternals.TestSyscallInterruptInternals): Ditto.
	* TestProcTasksObserver.java (ProcTasksTester.deletedFrom): Ditto.
	(ProcTasksTester.addFailed): Ditto.

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

	* TestTaskObserverInstructionAndCode.java:
	New test (disabled) for bug #3500.

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.

2006-12-05  Nurdin Premji  <npremji@redhat.com>

	* TestProcStopped.java (MyTester.allExistingTasksCompleted): Added, required by ProcBlockAction.
	(MyTester.existingTask): Simplified, uses allExistingTasksCompleted when all tasks have been seen.
	* TestProcForceDetach.java 	(MyObserver.allExistingTasksCompleted): Ditto above.
	* ProcBlockAction.java (requestDeleteObservers): Added.
	(requestDelete): Added.
	(checkFinish): Added.
	(allExistingTasksCompleted): Added, called when all existing tasks have been seen.
	(ProcBlockTaskObserver.updateTerminated): call checkFinish
	(ProcBlockTaskObserver.addFailed): Ditto.
	(ProcBlockTaskObserver.updateExecuted.execute): Ditto.

	* ProcBlockAction.java: Renamed, was ProcBlockObserver.
	Removed unused methods and variables.	
	* TestProcStopped.java (MyTester): Changed due to above rename.
	* TestProcForceDetach.java (MyObserver): Ditto.

2006-12-05  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java: Move Linux code to ...
	* LinuxPtraceTaskState.java: ... here.  New file.
	* ProcState.java: Move Linux code to ...
	* LinuxPtraceProcState.java: ... here.  New file.
	* HostState.java: Move Linux code to ...
	* LinuxPtraceHostState.java: ... here.  New file.
	* Host.java: Update.
	* Proc.java: Update.
	* Task.java: Update.

	* LinuxHost.java: Rename to ...
	* LinuxPtraceHost.java: ... this.
	* LinuxProc.java: Rename to ...
	* LinuxPtraceProc.java: ... this.
	* LinuxTask.java: Rename to ...
	* LinuxPtraceTask.java: ... this.
	* TaskState.java: Update.
	* Manager.java: Update.

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

	* TestTaskSyscallObserver (testExecSyscall): Mark broken #3244.

2006-12-04  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (killDuringTearDown): Replace "int" parameter with
	"ProcId", update references.
	(pidsToKillDuringTearDown): Rename tidsToKillDuringTearDown,
	update references.
	(setUp): Simplify code detecting a parent.
	(capturedSendTkill): Replace "int" with "ProcId", update
	references.
	
	* TestModify.java (TestModifyInternals): Delete killDuringTearDown
	call.
	* TestRegMemModify.java (TestI386ModifyInternals)
	(TestX8664ModifyInternals, TestPPC64ModifyInternals): Ditto.
	* SyscallExaminer.java (TaskAddedObserver.update): Ditto.
	* TestTaskObserverBlocked.java (SpawnObserver.spawnedParent): Ditto.
	(testBlockingFibonacciClone, testBlockingFibonacciFork): Ditto.
	
2006-12-04  Nurdin Premji  <npremji@redhat.com>

	* LinuxTask.java (fillRegisterBank): Added.
	(fillMemory): Added.
	(LinuxTask): Removed calls to setupMapsXXX/fill memory and register banks.
	* DummyTask.java (fillRegisterBank): Added.
	(fillMemory): Added.
	* TestIsa.java (AttachedObserver.updateAttached): Added call to try to detect isa. (For "on-demand" access of isa).
	(testAttachDetachAttachAgainDetachAgainAttachAgainAgain): Enabled.
	(testIsa): Enabled.
	* TaskState.java (detaching.handleStoppedEvent): notify Task that the given task has detached.
	* Task.java (TaskStateObservable): Added.
	(TaskStateObservable.notify): Added.
	(taskStateDetached): Added.
	(getRegisterBank): Added. Fills register bank if null.
	(clearIsa): Added.
	(static.update): When a task detaches, clear it's Isa information.
	(getMemory): Fill memory if null.

2006-12-04  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverDetach.java (testDetachClone): Enable.

	* TestLib.java (setUp): Add children of proceses already in
	tidsToKillDuringTearDown to tidsToKillDuringTearDown.

2006-12-04  Nurdin Premji  <npremji@redhat.com>

	* Task.java (getRegisterBank): Added.
	* LinuxPowerPCSyscall.java (SocketSubSyscall.getArguments): Changed to use task.getMemory().
	* Breakpoint.java (reset): Ditto.
	(set): Ditto.
	* TestRegMemModify.java (TestPPC64ModifyInternals.PPC64TaskEventObserver.updateSyscallEnter): Ditto.
	(TestX8664ModifyInternals.X8664TaskEventObserver.updateSyscallExit): Ditto.
	(TestI386ModifyInternals.I386TaskEventObserver.updateSyscallEnter): Ditto.
	(TestX8664ModifyInternals.X8664TaskEventObserver.updateSyscallEnter): Ditto.
	* TestModify.java (TestModifyInternals.TaskEventObserver.updateSignaled): Ditto.
	* LinuxIa32Syscall.java (SocketSubSyscall.getArguments): Ditto.
	(printStringArg): Ditto.
	* TestTaskSyscallObserver.java (SyscallOpenObserver.updateSyscallEnter): Ditto.
		* Register.java (putBigInteger): Changed to use task.getRegister().
	(get): Ditto.
	(getBigInteger): Ditto.
	(put): Ditto.

2006-12-04  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (Child .proc): Delete.
	(Child .assertFindProcAndChild): Define local class, move .proc to
	there.

2006-12-04  Nurdin Premji  <npremji@redhat.com>

	* Task.java (notifyExeced): Flush the isa on an exec in case it has changed.
	* TestIsa.java (test64To32Isa): Enabled.
	(test64To32To64): Ditto.
	
	* TestTaskObserverDetach.java (testDetachClone): Disabled 3598.

	* TestTaskObserverDetach.java (testDetachClone): Enabled.
	
	* TestIsa.java (testAttachedCreateChild): Enabled.
	(testIsaSingleton): Ditto.
	* Task.java (hasIsa): Fixed, should be true when isa is not null.


	* TestIsa.java: Added.	
	* Task.java: (hasIsa): Added.

2006-11-29  Andrew Cagney  <cagney@redhat.com>

	* TestTaskTerminateObserver.java (AttachedCounter): Delete.
	(testBlockingWhileTerminating): Delete, now covered by
	testAttachToUnjoinedTask.
	* TestLib.java (assertRunWhileProcNotRemoved): Delete.

2006-11-28  Mike Cvet  <mcvet@redhat.com>

	* TestRegMemModify.java (TestX8664ModifyInternals.X8664Isa): Renamed
	from EMT64Isa.
	* TestRegs.java (TestX8664RegsInternals.X8664Isa): Renamed from 
	EMT64Isa.
	* IsaX8664.java (X8664Register): Renamed from EMT64Register.
	(X8664SegmentRegister): Renamed from EMT64SegmentRegister.
	(X8664FPRegister): Renamed from EMT64FPRegister.

2006-11-28  Nurdin Premji  <npremji@redhat.com>

	* DummyHost.java (sendRefresh): Removed boolean.
	* LinuxHost.java (sendRefresh): Ditto.
	* HostState.java (running.handleRefresh): Ditto.
	(handleRefresh): Ditto.
	* Host.java (sendRefresh): Ditto.
	(requestFindProc.Event.execute): Ditto.

	* Host.java (requestFindProc (boolean refreshAll ...)): Removed.

	* TestFindProc.java (doFindProc): Changed to use simplified requestFindProc.
	Previously did not refresh tasks.
	(testFindFailed): Removed, changing to use simplified would be the same as
	testFindAndRefreshFailed.

	* TestBreakpoints.java (setUp): Changed to use simplified requestFindProc.
	* TestFindProc.java (testFindAndRefreshFailed): Ditto. 
	* TestLib.java (Child.assertFindProcAndTasks): Ditto.
	* TestSyscallSignal.java (setUp): Ditto.
	* TestSyscallRunning.java (setUp): 	Ditto.
	* TestTaskSyscallObserver.java (TestSyscallInterruptInternals.TestSyscallInterruptInternals): Ditto.

	* Host.java (requestFindProc): Added. Assumes refresh tasks.

	* TestLib.java (Child.findProcUsingRefresh): Removed.
	(Child.findProcUsingRefresh (boolean) ): Ditto.

	* TestRefresh.java (testRefreshDaemon): Changed to use assertFindProcAndTasks.
	Used to just find task.
	(testUnattachedSingleExec): Ditto.
	(testExitLoosesChild): Ditto.

	* TestProcTasksObserver.java (manyExistingThread): Changed to use assertFindProcAndTasks.
	Used to just find task.
	(doClone): Ditto.
	(cloneThenKill): Ditto.
	(singleExistingThread): Ditto. 
	(singleExistingClone): Ditto.
	(delete): Ditto.

	* TestProcStopped.java (running): Changed to use assertFindProcAndTasks.
	Used to just find task.
	(stopped): Ditto.

	* TestProcGet.java 	(testGetCommand): Changed to use assertFindProcAndTasks. 
	Used to just find task		 
	(testGetExe): Ditto.
	(testGetCmdLine): Ditto.
	(testGetChildren): Ditto.

	* TestProcForceDetach.java (requestRemove): Changed to use assertFindProcAndTasks. 
	Used to just find task		
	
	* TestRefresh.java (testRefreshZombie): Changed to use assertFindProcAndTasks.
	(testUnattachedMultipleExec): Ditto.
	* TestExec.java (testAttachedMultipleChildExec): Ditto.
	(testAttachedMultipleParentExec): Ditto.
	* TestProcGet.java (testGetTasks): Ditto.
	* StressAttachDetachRapidlyCloningMainTask.java (test): Ditto.
	* TestAbandon.java (testAbandonAndAbandon): Ditto.
	(abandonThenRemove): Ditto.
	(removeThenAbandon): Ditto.
	
	* TestLib.java (Child.assertFindProcAndTasks): Added.

2006-11-27  Andrew Cagney  <cagney@redhat.com>

	* TestTaskTerminateObserver.java (testBlockingWhileTerminating):
	Disable, bug 3603.

	* TestTaskTerminateObserver.java (TerminatingCounter.addedTo):
	Add; stop the event loop.
	(testAttachToUnJoinedTask): Rename testTerm; simplify, explicitly
	terminate the thread.

2006-11-27  Nurdin Premji  <npremji@redhat.com>

	* TestProcTasksObserver.java (testDoCloneAckDaemon): Enabled. Bug fixed.
	(testDoCloneDetached): Ditto.
	
	* TestFindProc.java (testFindAndRefreshFailed): Added, checks for bug 3600.
	* LinuxHost.java (sendRefresh): Changed to throw procNotFound earlier. Fixes bug 3600.
	* TestLib (findProcUsingRefresh.procNotFound): Changed to throw a fail.

2006-11-26  Andrew Cagney  <cagney@redhat.com>

	* LinuxHost.java (PollWaitOnSigChild.waitObserver.cloneEvent):
	Call attemptDeliveringFsckedKernelEvents to force re-delivery of
	any stray waitpid events.
	(attemptDeliveringFsckedKernelEvents): Add more logging.
	
	* TestLib.java (tidsToKillDuringTearDown): Rename children.
	(capturedSendTkill): Rename capturedSendKill.
	(tearDown): When scanning for stray TIDs, iterate over a copy of
	tidsToKillDuringTearDown.

2006-11-23  Nurdin Premji  <npremji@redhat.com>

	* TestFindProc.java: Removed some debugging statements,
	enabled some asserts.

2006-11-22  Nurdin Premji  <npremji@redhat.com>

	* TestRefresh.java (testRefreshZombie): Changed to use old requestRefreshXXX to find children.
	(testRefreshDaemon): Ditto.
	* LinuxHost.java: (sendRefresh): Optimized for FindProc.

2006-11-21  Nurdin Premji  <npremji@redhat.com>

	* TestBreakpoints.java: Changed to use new FindProc interface.
	* TestTaskSyscallObserver.java: Ditto.
	* TestLib.java: Ditto.
	* TestSyscallSignal.java: Ditto.
	* TestSyscallRunning.java: Ditto.

2006-11-21  Tim Moore  <timoore@redhat.com>

	* IsaIA32.java (XMMRegister): New class.
	(IsaIA32): Add XMM registers.
	* RegisterView.java (getFloatField, getDoubleFloatField): New methods.

2006-11-20  Mike Cvet  <mcvet@redhat.com>

	* ProcAttachedObserver.java: Removed.

2006-11-20  Nurdin Premji  <npremji@redhat.com>

	* Host.java (FindProc.procFound): Changed javadoc to be more general about process list.
	(sendRefresh): Added boolean refreshAll to determine whether to refreshTasks.
	(requestFindProc): Ditto.
	* HostState.java (handleRefresh): Ditto.
	* LinuxHost.java (sendRefresh): Ditto.
	* DummyHost.java (sendRefresh): Ditto.
	* TestFindProc.java (doFindProc): Changed to call requestFindProc with a boolean for refreshTasks.
	(testFindFailed): Ditto.
	
	* ProcBlockObserver.java (ProcBlockTaskObserver.updateExecuted): Changed to call existingTask in
	a new event. Bug found by TestProcForceDetach. 
	* TestProcForceDetach.java: Changed to use ProcBlockObserver. Added (C).
	
	* DummyHost.java (sendRefresh): Changed to use ProcId rather than int.
	(requestFindProc): 	Ditto.
	* TestFindProc.java (MyFinder): Changed to hold expected ProcId for assertion purposes.
	(testFindFailed): Changed to use ProcId rather than int.
	(doFindProc):  Ditto. Check that the pids are the same.
	* LinuxHost.java (sendRefresh): Changed to use ProcId rather than int.
	* HostState.java (running.handleRefresh): Changed to use ProcId rather than int.
	(handleRefresh): Ditto.
	* Host.java (FindProc.procFound): Changed to use ProcId rather than proc.
	(FindProc.procNotFound): Renamed from procFoundFailed.
	(requestFindProc): Changed to use ProcID rather than int.
	(sendRefresh): Ditto.

2006-11-20  Andrew Cagney  <cagney@redhat.com>

	* TestTaskSyscallObserver.java: Add message to fail call.

2006-11-17  Nurdin Premji  <npremji@redhat.com>

	* Host.java (FindProc): Added, new interface for finding processes.
	(requestFindProc): Added.
	(sendRefresh): Added.
	* TestFindProc.java: Added.
	* DummyHost.java (sendRefresh): Added.
	* LinuxHost.java (sendRefresh): Added.
	* HostState.java (running.handleRefresh): Added.
	(handleRefresh): Added.
	
2006-11-16  Nurdin Premji  <npremji@redhat.com>

	* TestAbandon.java: Added.
	* ProcState.java (Attaching.ToMainTask.handleDetach): Added.
	
	* Proc.java (performDetach.execute): Changed to use new parameter shouldRemoveObservers = false.
	(requestAbandonAndRunEvent): Changed to call requestAbandon.
	(requestAbandon): Added new line to log message.
	* ProcBlockObserver.java (requestAdd.execute): Changed to add observer to the non-main tasks to...
	(ProcBlockTaskObserver.updateExecuted): ... here.
	(ProcBlockTaskObserver): Implemented TaskObserver.Terminated.
	(requestAddObservers): Ditto.
	(ProcBlockTaskObserver.updateTerminated): Added.  	
	* ProcState.java (Detaching.handleTaskDetachCompleted): Added task to logging output.
	(Detaching.handleDetach): Added.
	(handleDetach): Added method parameters to use boolean shouldRemoveObservers.
	* TaskState.java (getDestroyed): Added.		
	* Task.java (isDestroyed): Added.	

2006-11-14  Andrew Cagney  <cagney@redhat.com>

	* TestId.java: Use frysk.junit.TestCase.

2006-11-08  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (log): New.
	(capturedSendKill): New.
	(capturedSendDetachContKill): New.
	(tearDown): Use.

2006-11-07  Andrew Cagney  <cagney@redhat.com>

	* LinuxHost.java: Update, use frysk.sys.proc.ProcBuilder.
	* LinuxProc.java: Ditto.
	* TestLib.java: Ditto.

2006-11-06  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (tearDown): For all children being killed, add
	their tasks to the list.
	(sendStopXXX): Rename assertSendStop.
	(killDuringTearDown): Fix log formatting.
	(setUp): Don't register a killDuringTearDown observer against
	thread addeded.
	* TestProcStopped.java (stopped): Use Child.sendStopXXX.
	
2006-11-06  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockObserver.java: Ran GNU Formatter.
	(taskAddFailed): Added.
	(ProcBlockTaskObserver): Removed terminating implementation.
	(ProcBlockTaskObserver.addFailed): call taskAddFailed.
	(requestAddObservers): Removed requestAddTerminatingObserver.

2006-11-06  Tim Moore  <timoore@redhat.com>

	* IsaIA32.java (IsaIA32): Add floating point unit configuration 
	registers.
	* IsaX8664.java (IsaX8664): Add floating point and xmm registers.

2006-11-03  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockObserver.java: Split the observer into a main Proc observer and a private
	Task Observer which gets added to each task individually. Allows for better separation
	of addfails between tasks and procs.
	(ProcBlockTaskObserver): Added.
	(requestDeleteInstructionObserver): Added. 
	(requestAddObservers): Changed to add the task Observer rather than the proc Observer to each task.
	(requestDeleteTerminatingObserver): Added.
	(requestUnblock): Changed to unblock task obsever rather than proc observer.
	(blockTask): Ditto.
	* TaskState.java (.handleAddObservation): Fixed typo, "destroyed" instead of "detached".
	
	* TestProcStopped.java (testRunningAttached): Changed to use a ProcBlockObserver.
	(MyTester.MyTester): Ditto.
	(testMultiThreadedStoppedAttached): Ditto.
	(testMultiThreadedRunningAttached): Ditto.
	(running): Ditto.
	(stopped): Ditto.
	(testStoppedAttached): Ditto.
	(MyTester): Ditto.
	(MyTester.deletedFrom): Ditto.
	
2006-11-02  Mike Cvet  <mcvet@redhat.com>

	* ProcBlockObserver.java (ProcBlockObserver): Changed 
	TaskObserver.Terminated to TaskObserver.Terminating.
	(updateTerminated): Removed.
	(updateTerminating): Added.

2006-11-01  Nurdin Premji  <npremji@redhat.com>

	* Host.java (getProc): Added ProcID logging info.
	
	* ProcBlockObserver.java: Implemented TaskObserver.Terminated and ProcObserver.ProcTasks
	for tasks that get removed. 
	(requestAddObservers): Added TaskObserver.Terminated.
	(taskAdded): Added.
	(addFailed): Moved eventLoop join out of the eventLoop event. Changed event to common
	requestStopEvent.
	(taskRemoved): Added.
	(updateTerminated): Added.
	* TestLib.java (AckDaemonCloneProcess.AckDaemonCloneProcess): Added.
	(AckDaemonCloneProcess): Added.
	(funitThreadsCommand): Added.	

2006-11-01  Mike Cvet  <mcvet@redhat.com>

	* ProcBlockObserver.java (ProcBlockObserver): Removed unnecessary boolean flag. 
	(existingTask): Removed.

2006-10-31  Mike Cvet  <mcvet@redhat.com>

	* ProcBlockObserver.java (.execute): Added null proc check properly. 
	Iterate through all tasks to add this observer rather than just letting
	the main task propagate to the others.
	(addedTo): Removed observer handling code.
	(updateExecuted): Removed isAdded check.

2006-10-31  Tim Moore  <timoore@redhat.com>

	* FPRegister.java: New file.
	* IsaIA32.java (IA32FPRegister): Rename from FPRegister; use new
	FPRegister class as superclass.

2006-10-27  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockObserver.java: Changed proc to protected so child classes can access.
	(requestAdd): Added. Contains synchronized add and error checking.

2006-10-26  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockObserver.java (addFailed): Added, default behaviour for commandline utilities.
	

2006-10-26  Mike Cvet  <mcvet@redhat.com>

	* ProcBlockObserver.java (addedTo): Update numTasks from here rather
	than the constructor.

2006-10-25  Mike Cvet  <mcvet@redhat.com>

	* ProcBlockObserver.java (ProcBlockObserver): General clean up.
	(updateExecuted): Added check to make sure existingTask () isn't 
	called more than once.
	(blockTask): Added. Blocks a separate Task.
	(getNumTasks): Added.
	(resetIsAdded): Added.

2006-10-25  Nurdin Premji  <npremji@redhat.com>

	* TestLib.java (Child.findProcUsingRefresh): Made public so util tests can use this function as well.
	* Proc.java (requestAbandonAndRunEvent): Added. 
	
2006-10-24  Nurdin Premji  <npremji@redhat.com>

	* ProcBlockObserver.java: Added.	
	* ProcObserver.java (existingTask): Moved here from: ProcTasks.existingTask	
	* TestLib.java (AckDaemonProcess.AckDaemonProcess): Made public so frysk-core/util/TestFStack can use.
	(DetachedAckProcess.DetachedAckProcess): Ditto.
	* TaskState.java (Attached.WaitForUnblock.handleDetach): Added.

2006-10-24  Yao Qi  <qiyaoltc@cn.ibm.com>

	* LinuxTask.java (Task): Enlarge the boundary of PtraceByteBuffer
	for 64-bit address space.

2006-10-20  Nurdin Premji  <npremji@redhat.com>

	* TestLib.java (DetachedAckProcess.DetachedAckProcess): Made public so can be used in frysk-core/frysk/util tests.
	(AckDaemonProcess.AckDaemonProcess): Ditto.
	
2006-10-18  Mike Cvet  <mcvet@redhat.com>

	* ProcAttachedObserver.java (attachTask): Added.

2006-10-18  Nurdin Premji  <npremji@redhat.com>

	* TestProcForceDetach.java (MyObserver.existingTask): Refactored proc.requestRemoveAllObservers to proc.requestAbandon.
	* ProcState.java (running.handleDetach): Added
	(Detaching.Detaching): Added new boolean parameter to decide whether to remove the observers from a task during detach.
	(initial): Call to Detaching changed.
	(handleDetach): Added.
	(Attaching.ToOtherTasks.handleDeleteObservation): Call to mainTask.performDetach changed.
	(Attaching.ToMainTask.handleDeleteObservation): Ditto.
	(running.handleDeleteObservation): 	Call to Detaching changed..
	* Observable.java (removeAllObservers): Added.
	* TaskState.java (BlockedSignal.handleDetach): Added new boolean parameter to decide whether to remove the observers from a task during detach.
	(Running.handleDetach): Ditto.
	(attaching.handleDetach): Ditto.
	(handleDetach): Ditto.
	* Task.java (performDetach): Added new boolean parameter to decide whether to remove the observers from a task during detach.
	(removeObservers): Added.	
	* Proc.java (performDetach): Added.
	(requestAbandon): 	Renamed, was requestRemoveAllObservations.

2006-10-16  Nurdin Premji  <npremji@redhat.com>

	* Proc.java (requestRemoveAllObservations): Removed synchronized.
	(addObservation): Ditto.
	(removeObservation): Ditto.

2006-10-14  Mark Wielaard  <mark@klomp.org>

	* Proc.java (requestAddInstructionObserver): Call updateExecuted()
	when observation is added.
	(requestDeleteInstructionObserver): Delete don't add the observer.
	* TaskObserver.java (Instruction): Update documentation.
	* TaskState.java (Running.handleStoppedEvent): Check for blockers.

	* TestLib (AckDaemonProcess(boolean)): New constructor.
	* TestTaskObserverInstruction.java: New tests.

2006-10-14  Mark Wielaard  <mark@klomp.org>

	* LinuxIa32Syscall.java (syscallList): Add entries 273 till 317.
	* LinuxPowerPCSyscall.java (syscallList): Add entries 278 till 300.
	* Syscall.java (toString): New method.
	* TestSyscallsWithAudit.java (syscallTest): New private method.
	(testLinuxIa32): Use generic syscallTest method.
	(testLinuxPPC): Likewise.
	(testLinuxPPC64): Likewise.
	(testLinuxX86_64): Likewise.

2006-10-13  Nurdin Premji  <npremji@redhat.com>

	* TestProcForceDetach.java: Added. Tests proc.requestRemoveAllObservations

2006-10-13  Mike Cvet <mcvet@redhat.com>
	
	* Host.java (getName): Catch a NullPointerException.

2006-10-13  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Coding nit, remove false== and null==.

2006-10-13  Nurdin Premji  <npremji@redhat.com>

	* Proc.java (requestRemoveAllObservations): Added. Tool to easily remove
	all observations from a process, causing a detach.

2006-10-13  Yao Qi  <qiyaoltc@cn.ibm.com>
	
	* IsaPPC.java: New class PPCFPRegister. 

	* IsaPPC64.java: Setup Register object for FPRs.
	* LinuxPPC32On64.java: Likewise.
	
	* TestRegs.java: Check FPR value.

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

	* Proc.java (InstructionAction): New static inner class.
	(requestAddInstructionObserver): New method.
	(requestDeleteInstructionObserver): New method.
	* Task.java (instructionObservers): New field.
	(requestAddInstructionObserver): New method.
	(requestDeleteInstructionObserver): New method.
	(notifyInstruction): New method.
	* TaskObserver.java (Instruction): Update documentation.
	* TaskState.java: Check whether instruction observers are installed
	and do a sendStepInstruction() instead of a sendContinue() or
	sendSyscallContinue().
	(Running.handleTrappedEvent): Also check for instruction observer
	steps.

2006-10-12  Nurdin Premji  <npremji@redhat.com>

	* TestProcStopped.java (MyTester): Changed to exit after all threads are seen.
	(running): Changed to have counter with number of threads.
	(stopped): Ditto.
	(testMultiThreadedRunningAckDaemon): Added.
	(testMultiThreadedRunningDetached): Ditto.
	(testMultiThreadedStoppedAckDaemon): 
	(testMultiThreadedStoppedDetached): Ditto.
	(testRunningAttached): Removed, attached observer not designed for this kind of work.
	(testStoppedAttached): Ditto.
	
2006-10-12  Andrew Cagney  <cagney@redhat.com>

	* TestBreakpoints.java (setUp): Move code creating event loop from
	here ...
	(testHitAndRun, testInsertRemove, testAddLots): ... to here.
	(tearDown): Only shutdown the eventLoop when it is running.
	
2006-10-11  Nurdin Premji  <npremji@redhat.com>

	* LinuxTask.java (sendAttach): Changed comment to explain reasoning for below.
	Applied gnu format.

	* LinuxTask.java (sendAttach): Manually tell the thread that the process
	has been attached Fixes 3316.
	* TestProcStopped.java: Added license.
	(stopped): Added.
	(running): Ditto.
	(testStoppedDetached):
	(testStoppedAttached):
	(testRunningAckDaemon): 
	(testRunningDetached): 
	(testRunningAttached): Ditto.
	(testStoppedAckDaemon): Changed to use stopped.
	(MyTester): Changed to stop eventloop after an attach.

2006-10-11  Mike Cvet  <mcvet@redhat.com>

	* ProcAttachedObserver.java (ProcAttachedObserver): Call iterateAttach()
	instead of doing the attaching here.
	(iterateAttach): Added.
	(addedTo): Makes a call to the local ProcObserver.ProcTasks observer.

2006-10-11  Mark Wielaard  <mark@klomp.org>

	* BreakpointAddresses.java (getCodeObservers): Return the Collection
	of Code Observers, not just an Iterator.
	* Observable.java (observable): Make protected final for use in
	subclasses.
	* PendingCodeObserver.java: Removed.
	* Proc.java (requestAddObservation): Create TaskObservation with
	adding true.
	(requestDeleteObserver): Likewise with adding false.
	(SyscallAction): New inner class.
	(requestAddSyscallObserver): Create TaskObservation with
	SyscallAction.
	(requestDeleteSyscallObserver): Likewise.
	(BreakpointAction): New inner class.
	(requestAddCodeObserver): Create TaskObservation with 
	BreakpointAction.
	(requestDeleteCodeObserver): Likewise.
	* Task.java (Task): Create TaskObservation with adding true.
	(handleAddObserver): Renamed to handleAddObservation().
	(handleDeleteObserver): Renamed to handleDeleteObservation().
	(handleAddSyscallObserver): Removed.
	(handleDeleteSyscallObserver): Removed.
	(handleAddCodeObserver): Removed.
	(handleDeleteCodeObserver): Removed.
	(notifyCodeBreakpoint): Use observers Collections.
	(pendingCodeObservers): Removed.
	(pendingObservations): New field.
	* TaskCodeObservation.java: Removed.
	* TaskObservation.java (TaskObservation): Add arguments for whether
	we are adding and whether any action is needed before adding or
	after deletion.
	(getTaskObservable): New method.
	(getTaskObserver): New method.
	(isAddition): New method.
	(needsSuspendedAction): New method.
	(add): New method.
	(delete): New method.
	* TaskState.java (handleAddObserver): Renamed to
	handleAddObservation().
	(handleDeleteObserver): Renamed to handleDeleteObservation().
	(handleAddSyscallObserver): Removed.
	(handleDeleteSyscallObserver): Removed.
	(handleAddCodeObserver): Removed.
	(handleDeleteCodeObserver): Removed.
	(Running.handleStoppedEvent): Go through pendingObservations.
	(Running.handleAddObservation): If needsSuspendedAction() queue
	and sendStop() if necessary.
	(Running.handleDeleteObservation): Likewise.
	* TaskSyscallObservation.java: Removed.

	* TestBreakpoints.java (testInsertRemove): Mark broken #3240.

2006-10-10  Tim Moore  <timoore@redhat.com>

	* IsaIA32.java (FPRegister): Don't use I387_OFFSET when using the 
	register bank.
	(IsaIA32): Put floating point registers in registerMap.

2006-10-10  Yao Qi  <qiyaoltc@cn.ibm.com>

	* IsaFactory.java: Return a LinuxPPC32On64 object in a bi-arch
	condition.

	* LinuxPPC32On64.java: New file.

	* TestRegs.java: Add bi-arch test for ppc64.

	* LinuxPPC.java: Add licence header.
	* LinuxPPC64.java: Likewise.

	* IsaPPC.java: Merge registerMap to its parent.

2006-10-09  Yao Qi  <qiyaoltc@cn.ibm.com>

	* IsaPowerPC.java : New file.

	* IsaPPC64.java: Refactor it.  Merge the common code to
	IsaPowerPC.
	* IsaPPC.java: Likewise.

2006-10-06  Nurdin Premji  <npremji@redhat.com>

	*TestProcStopped.java: Added

2006-10-05  Mark Wielaard  <mark@klomp.org>

	* LinuxX8664Syscall.java (syscallList): Add entries 256 till 279.

2006-10-05  Mark Wielaard  <mark@klomp.org>

	* TaskState.java (transitionToRunningState): Remove syscalltracing
	argument, use task.syscallObservers.numberOfObservers().
	(WaitForContinueOrUnblock.syscallObserverAdded): Remove field.
	(WaitForUnblock.syscallObserverAdded): Likewise.
	(StartClonedTask.syscallObserverAdded): Likewise.
	(BlockedSignal.syscallObserverAdded): Likewise.
	(syscallBlockedContinue): Removed.

2006-10-05  Mark Wielaard  <mark@klomp.org>

	* Breakpoint.java (getAddress): New method.
	* BreakpointAddresses.java (getCodeObservers): Return null when
	no observers installed on the specified address.
	* Task.java (steppingBreakpoint): New package private field.
	(notifyCodeBreakpoint): Return -1 when no observers at specified
	address.
	* TaskState.java (Running.steppingBreakpoint): Removed field.
	(Running.handleTrappedEvent): Check whether trap is for one
	of our own installed breakpoints, handle it as a regular trap
	signal to process otherwise.

2006-10-05  Tim Moore  <timmore@redhat.com>

	* IsaX8664.java: New file, renamed from IsaEMT64.java
	* IsaEMT64.java: Delete.
	* LinuxX8664.java: New file, renamed from LinuxEMT64.java
	* LinuxEMT64.java: Delete.
	* Breakpoint.java, IsaFactory.java, LinuxIA32on64.java,
	TestRegMemModify.java, TestRegs.java, TestSyscallsWithAudit.java:
	Refactoring renamed classes.

2006-10-04  Nurdin Premji <npremji@redhat.com>

	* Proc.java: made observations set private and gave accessor methods.
	(addObservation): New.
	(removeObservation): New.
	(observationsIterator): New.
	(observationsSize): New.
	(requestUnblock): New.
	(toString): If newState is null (during transition), print out that we are using the oldstate.
	* ProcState.java (Attaching: ToMainTask:handleAddObservation): Changed methods to use accessor functions rather than directly modify proc's observation set.
	(Attaching:ToMainTask:handleDeleteObservation): Ditto.
	(Attaching:ToOtherTasks:handleAddObservation): Ditto.
	(Attaching:ToOtherTasks: handleDeleteObservation): Ditto.
	(Attaching:allAttached): Ditto.
	(Attaching:initialState): Added error if observation not added to observations set.
	(Attaching: running): Added log messages.
	* TaskState.java (BlockedSignal:handleDeleteObserver): Added.
	(BlockedSignal:handleDetach): Added.

2006-10-04  Mike Cvet  <mcvet@redhat.com>

	* ProcAttachedObserver.java (deletedFrom): Removed debug print statements.
	(addedTo): Ditto.

2006-10-03  Tim Moore  <timoore@redhat.com>

	* Isa.java (getRegisterBankBuffers): new method
	* IsaEMT64.java (IsaEMT64): Use getName() method of Register.
	instead of member.
	* (getRegisterBankBuffers): New method.
	* IsaFactory.java (getIsa): Return a LinuxIA32on64 object if
	necessary.
	* IsaIA32.java (getRegisterBankBuffers):New method.
	(fpViews): new array of register views
	(FPRegister): new inner class
	(IsaIA32): Use getName() method of Register; create floating point
	registers.
	* IsaPPC.java (IsaPPC): Use getName method of Register.
	(getRegisterBankBuffers): New method.
	* IsaPPC64.java (IsaPPC64): Use getName method of Register.
	(getRegisterBankBuffers): New method.
	* LinuxIA32on64.java: New class for 32 bit processes on 64 bit machines.
	* LinuxTask.java: (setupMapsXXX): use getRegisterBankBuffers
	method to initialize registerBank.
	* LongFloat.java: New class for x87 floating point registers.
	* RegisterView.java: New class for alternative interpretations of
	register bits.
	* Register.java (views): New member.
	(Register(int, int, String, RegisterView)): New constructor that
	takes RegisterView argument.
	(getViews): New method.
	* TestRegs.java (testRegs): Maybe run i386 tests if running on
	x8664.
	* TestTaskSyscallObserver (execvesys, opensys, readsys): New
	members for system call objects.
	(SyscallObserver): Initialize them with new task argument..
	(SyscallObserver.updateSyscallEnter): Workaround for exit system
	call problem.
	(testForkSyscall, testCloneSyscall, testSyscallLoop,
	attachedObserver, SyscallInteruptObserver): Initialize
	SyscallObserver with task; compare system call objects instead of
	system call numbers.

2006-10-02  Mike Cvet  <mcvet@redhat.com>

	* ProcAttachedObserver.java: Added.

2006-10-02  Nurdin Premji  <npremji@redhat.com>

	* Observation.java (toString): Added.
	* TaskCodeObservation.java (toString): Added.
	* TaskSyscallObservation.java (toString): Added.
	* TestTaskObserverDetach.java (testDetachSignal): Use RequestStopEvent 

2006-09-29  Mark Wielaard  <mark@klomp.org>

	* BreakpointAddresses.java (removeAllCodeObservers): New method.
	* Task.java (codeObservers): Make package private.
	* TaskState.java (Running.handleExecedEvent): Clean up breakpoints.
	* TestBreakpoints.java: Check deletion of Code observers after exec.

2006-09-28  Tim Moore  <timoore@redhat.com>

	* UBigInteger.java: New class
	* BitfieldAccessor.java: New class

2006-09-26  Mark Wielaard  <mark@klomp.org>

	* TestSyscallSignal.java: Replace usage of sys.SyscallNum with
	proc.Syscall.

2006-09-25  Yong Zheng  <zhengyo@cn.ibm.com>

	* TestRegMemModify.java: New file to add PPC64 specific 
	case and merge Test<ISA>Modify into one case.
	* TestI386Modify.java: Delete.
	* TestX8664Modify.java: Delete. 

2006-09-25  Alexandre Oliva  <aoliva@redhat.com>

	* Isa.java (getRegisterNameByUnwindRegnum): New.
	* IsaEMT64.java (getRegisterNameByUnwindRegnum): Implement.
	* IsaIA32.java (getRegisterNameByUnwindRegnum): Implement.
	* IsaPPC.java (getRegisterNameByUnwindRegnum): Add stub.
	* IsaPPC64.java (getRegisterNameByUnwindRegnum): Add stub.

2006-09-21  Mark Wielaard  <mark@klomp.org>

	* BreakpointAddresses.java (addBreakpoint): Take address as argument.
	(removeBreakpoint): Likewise.
	* PendingCodeObserver.java (address): New field.
	* Proc.java (requestAddCodeObserver): Take address as argument.
	(requestDeleteCodeObserver): Likewise.
	* Task.java (handleAddCodeObserver): Likewise.
	(handleDeleteCodeObserver): Likewise.
	(requestAddCodeObserver): Likewise.
	(requestDeleteCodeObserver): Likewise.
	* TaskCodeObservation (address): New field.
	(TaskCodeObservation): Take address as argument.
	(handleAdd): Pass on address.
	(handleDelete): Likewise.
	* TaskObserver.java (Code.getAddress): Removed method.
	(updateHit): Take address as argument.
	* TaskState (*.handleAddCodeObserver): Handle address as argument.
	(*.handleDeleteCodeObserver): Likewise.
	* TestBreakpoints.java: Update test to pass address as argument.

2006-09-21  Mark Wielaard  <mark@klomp.org>

	* LinuxX8664Syscall.java (syscallList): Updated with audit results.
	* TestSyscallsWithAudit.java (testLinuxEMT64): Enable test.

2006-09-20  Nurdin Premji <npremji@redhat.com>

	* ProcTasksObserver.java (deletedFrom): Add a call to the ProcObserver.ProcTasks deletedFrom function.

2006-09-20  Yao Qi  <qiyaoltc@cn.ibm.com>

	* LinuxPowerPCSyscall.java: Change the system call name per
	libaudit result.
	* TestSyscallsWithAudit.java: Enable test for PPC and PPC64.

2006-09-19  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestSyscallsWithAudit.java: New file.
	* LinuxIa32Syscall.java: Fixed all discrepencies with Audit libs.

2006-09-18  Tom Tromey  <tromey@redhat.com>

	* LinuxX8664Syscall.java (unknownSyscalls): Initialize.
	* LinuxPPC.java (unknownSyscalls): Initialize.
	* LinuxPPC64.java (unknownSyscalls): Initialize.
	* LinuxPowerPCSyscall.java (unknownSyscalls): Initialize.
	* LinuxIa32Syscall.java (unknownSyscalls): Initialize.
	* LinuxEMT64.java (unknownSyscalls): Initialize.
	* Syscall.java (syscallByName): Chain exceptions.  Don't "over
	catch".
	(iterateSyscallByName): Now package-private.
	(syscallByNum): Removed redundant toString.  Chain exceptions.
	Removed dead code.  Synchronize on hash map.

2006-09-18  Mike Cvet  <mcvet@redhat.com>

	* Task.java (getDwflLineXXX): Added, takes a long address parameter.

2006-09-18  Mark Wielaard  <mark@klomp.org>

	Fixes bug #3193
	* TestSyscallRunning (SyscallObserver): Take syscall name and
	whether the syscall is in an entered state. Use Syscall.getByName()
	for accept.

2006-09-15  Andrew Cagney  <cagney@redhat.com>

	* Host.java (logger): Remove "public" designation.

2006-09-14  Yao Qi  <qiyaoltc@cn.ibm.com>

	* Isa.java (getSyscallList): New method.
	(getUnknownSyscalls): Likewise.
	(syscallByName): Likewise.
	
	* IsaEMT64.java: Implement them.
	* IsaIA32.java: Likewise.
	* IsaPPC.java: Likewise.
	* IsaPPC64.java: Likewise.

	* LinuxPowerPCSyscall.java: New file.
	* LinuxX8664Syscall.java: New file.
	* LinuxIa32Syscall.java: New file.

	* LinuxIa32.java (returnCode): Remvoed.
	(arg): Removed.
	* LinuxEMT64.java: Likewise.
	* LinuxPPC.java: Likewise.
	* LinuxPPC64.java: Likewise.

	* Syscall.java (iterateSyscallByName): New method. 

	* SyscallEventInfo.java (getSyscall): New abstract method.
	(arg): New method.
	(returnCode): Likewise.
	
	Tom Tromey  <tromey@redhat.com>

	* Syscall.java (syscallByNum): Updated javadoc.  Fixed typo.
	Cache unknown syscalls.
	(unknownSyscalls): New field.
	(equals): New method.
	(syscallByName): Likewise.
	
2006-09-12  Mark Wielaard  <mark@klomp.org>

	* PendingCodeObserver.java: New class.
	* Task.java (pendingCodeObservers): New field.
	* TaskState.java (PendingCodeObserver): Removed, created new class.
	(Running.pendingCodeObservers): Removed, needs to be hold in Task.

2006-09-11  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Pass just "frysk" to getLogger, work-around.
	* LinuxPPC.java: Ditto.
	* Task.java: Ditto.
	* TestLib.java: Ditto.
	* ProcEvent.java: Ditto.
	* Host.java: Ditto.
	* IsaFactory.java: Ditto.
	* LinuxPPC64.java: Ditto.
	* State.java: Ditto.
	* ProcTasksObserver.java: Ditto.
	* TaskEvent.java: Ditto.

2006-09-11  Mark Wielaard  <mark@klomp.org>

	* TestSyscallRunning.java: Add message to each assert.

2006-09-11  Mark Wielaard  <mark@klomp.org>

	* Task.java (syscallObservers): Made package private.
	* TaskState (transitionToSyscallRunning): Removed merged with Running.
	(transitionOutOfSyscallRunning): Likewise.
	(inSyscallRunningTraced): New state.

2006-09-08  Tom Tromey  <tromey@redhat.com>

	* Host.java (requestRefreshXXX): Remove extra field from anonymous
	class.
	(requestCreateAttachedProc): Likewise.

2006-09-08  Mark Wielaard  <mark@klomp.org>

	* TaskState.java: Merge Running and runningInSyscall states.

2006-09-07  Tom Tromey  <tromey@redhat.com>

	* Host.java (requestRefreshXXX): Fix typo.

2006-09-07  Mark Wielaard  <mark@klomp.org>

	* TaskState.java: Merge BlockedSignal, SyscallBlockedInSyscall and
	blockedInExecSyscall.

2006-09-07  Mark Wielaard  <mark@klomp.org>

	* TestSyscallSignal.java: New file.

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

	* TaskState (transitionToSyscallRunningState): Removed, merged with
	transitionToRunningState.

2006-09-06  Phil Muldoon  <pmuldoon@redhat.com>

	* Syscall.java: numArgs, argList make public final

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

	* TaskState.java (SyscallRunning): Removed, merged with Running.

2006-09-05  Mark Wielaard  <mark@klomp.org>

	* TaskState.java (syscallBlockedEnteringSyscall): Removed, merge
	with syscallBlockedInSyscallContinue.

2006-09-04  Mark Wielaard  <mark@klomp.org>

	* TestSyscallRunning.java: Added back, use SYSread and write to
	Socket.

2006-09-04  Yao Qi  <qiyaoltc@cn.ibm.com>

	* LinuxPPC.java (returnCode): Extract sign of return code from
	CCR register.

2006-09-01  Mark Wielaard  <mark@klomp.org>

	* TestSyscallRunning.java: Removed doesn't compile on x86.

2006-09-01  Mark Wielaard  <mark@klomp.org>

	* TaskState.java (runningInSyscall): Handle adding of Observer and
	SyscallObserver.
	* TestSyscallRunning.java: New file.

2006-09-01  Wu Zhou  <woodzltc@cn.ibm.com>

	Yong Zheng's patch to delete redundant testcases.
	2006-09-01  Yong Zheng  <zhengy@cn.ibm.com>

		* TestI386Regs.java: Delete.
		* TestX8664Regs.java: Delete.

2006-08-31  Yao Qi  <qiyaoltc@cn.ibm.com>

	* TestRegs.java: Copy the tests for length of segment registers
	from TetI386Regs.java and TestX8664Regs.java.
	New test for length of register ccr and xer on PPC64.

2006-08-30  Mark Wielaard  <mark@klomp.org>

	* TaskState.java: Merge detaching and detachingInSyscall states.

2006-08-29  Mark Wielaard  <mark@klomp.org>

	* TaskState.java (transitionToSyscallRunningState): Add signal
	parameter.

2006-08-25  Yao Qi  <qiyaoltc@cn.ibm.com>

	* IsaIA32.java: New class for 16-bit segment register on IA32.
	* TestI386Regs.java: Test length of segment register.

	* IsaEMT64.java: New class for 32-bit segment registers on X86_64.
	* TestX8664Regs.java: Test length of segment register.

	* IsaPPC64.java: New class for 32-bit registers on PPC64.

2006-08-29  Yong Zheng  <zhengyo@cn.ibm.com>

	* IsaPPC64.java (getWordSize): Edit the return value from 4 to 8.
	* TestRegs.java: New file to add register access test on PPC64 and
	merge Test<ISA>Regs.java into one case.

2006-08-28  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Extend frysk.junit.TestCase.
	(trueXXX, brokenXXX): Delete, moved to frysk.junit.TestCase.

2006-08-28  Mark Wielaard  <mark@klomp.org>

	* TaskState.java: Merge (syscall)WaitForContinueOrUnblock,
	(Syscall)BlockedSignal and (syscall)WaitForUnblocked states.

2006-08-24  Sami Wagiaalla  <swagiaal@redhat.com>

	* TaskState.java: Added handleSignaledEvent to runningInSyscall 

2006-08-24  Tom Tromey  <tromey@redhat.com>

	* Syscall.java : Updated javadoc.
	* package.html : Don't capitalize 'frysk'.

2006-08-23  Yong Zheng  <zhengyo@cn.ibm.com>

	* Isa.java (getBpInstruction): New method to get the
	instruction to replace the original instruction for breakpoint.
	(getBreakpointAddress): New method to get the breakpoint's
	address after hitting the breakpoint.
	* IsaIA32.java (getBpInstruction): New method to implement the 
	Isa interface.
	(getBreakpointAddress): New method to implement the Isa interface.
	(BREAKPOINT_INSTRUCTION): New attribute to store the breakpoint
	instruction on IA32.
	* IsaEMT64.java (getBpInstruction): New method to implement the 
	Isa interface.
	(getBreakpointAddress): New method to implement the Isa interface.
	(BREAKPOINT_INSTRUCTION): New attribute to store the breakpoint
	instruction on EMT64.
	* IsaPPC.java (getBpInstruction): New method to implement the Isa 
	interface.
	(getBreakpointAddress): New method to implement the Isa interface.
	* IsaPPC64.java (getBpInstruction): New method to implement the 
	Isa interface.
	(getBreakpointAddress): New method to implement the Isa interface.
	(BREAKPOINT_INSTRUCTION): New attribute to store the breakpoint
	instruction on PPC64.

	* Breakpoint.java (TRAP): Move it to BREAKPOINT_INSTRUCTION in 
	specific ISA.
	(origInstruction): Renamed from orig.
	(set): Replace the original instruction with breakpoint instruction 
	got from ISA. 
	(reset): Restore the original instruction.
	(prepareStep): Add support for PPC64.

	* TaskState.java (Running.handleTrappedEvent): Get breakpoint address 
	according to task's ISA.

2006-08-22  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (tearDown): For terminated threads, re-reap their
	pid.
	* TestBreakpoints.java (tearDown): Delete code using the event
	loop to reap children.
	(setUp): Do not add to Manager .host .observableProcRemovedXXX
	.addObserver.

2006-08-22  Mark Wielaard  <mark@klomp.org>

	* TestBreakpoints.java (tearDown): Add more comments about child
	process creation and dead.

2006-08-21  Tom Tromey  <tromey@redhat.com>

	* Syscall.java (getName, getNumber): New methods.

2006-08-21  Mark Wielaard  <mark@klomp.org>

	* TestBreakpoints.java: Implements Observer.
	(procTerminated): New boolean field.
	(setup): Add observableProcRemoved to manager.host.
	(tearDown): Make sure proc is really gone.
	(update): New method.

2006-08-21  Tim Moore  <timoore@redhat.com>

	* LinuxHost.java: (sendCreateAttachedProc): Swallow 
	TaskFileException.

2006-08-18  Andrew Cagney  <cagney@redhat.com>

	* LinuxHost.java (PollWaitOnSigChld .waitObserver): Add
	fsckedOrderedKernelEvents, attemptDeliveringFsckedKernelEvents,
	and saveFsckedOrderedKernelStoppedEvent.
	(PollWaitOnSigChld .waitObserver .stopped): When the task is not
	found, push it onto the fsckedOrderedKernelEvents list.
	(PollWaitOnSigChld .waitObserver .forkEvent): Once the child is
	created, run over the fsckedOrderedKernelEvents.

2006-08-16  Andrew Cagney  <cagney@redhat.com>

	* Host.java: Specify "frysk.proc" as the logger, delete unused
	import of frysk.Config.
	* TestLib.java: Ditto.
	* Task.java: Ditto.
	* TaskEvent.java: Ditto.
	* State.java: Ditto.
	* ProcTasksObserver.java: Ditto.
	* Proc.java: Ditto.
	* ProcEvent.java: Ditto.
	* LinuxPPC.java: Ditto.
	* LinuxPPC64.java: Ditto.
	* IsaFactory.java: Ditto.

2006-08-16  Tim Moore  <timoore@redhat.com>

	* Register.java (bank, offset, length, name): Make final.
	(reverseArray): New method.
	(get): Use byte array accessor of PtraceByteBuffer.
	(getBigInteger): ditto.
	(put): Use putUInt and putULong accessors of PtraceByteBuffer.
	(putBigInteger): ditto.

	* LinuxHost.java (sendCreateAttachedProc,
	PollWaitOnSigChld.anonymous.cloneEvent,
	PollWaitOnSigChld.anonymous.forkEvent): Rethrow TaskException as
	RuntimeException instead of eating it.
	* Task.java (notifySyscallEnter, notifySyscallExit): ditto
	* LinuxProc.java (sendRefresh.TidBuilder.buildId): Document why
	TaskException can be swallowed.

	* TestX8664Regs.java (TestX8664Regs): Use some more interesting 64
	bit values to stress the long and BigInteger Register APIs.
	* TestX8664Modify.java (TestX8664Modify): ditto.


2006-08-15  Mark Wielaard  <mark@klomp.org>

	* frysk/proc/Breakpoint.java: New file.
	* frysk/proc/BreakpointAddresses.java: Likewise.
	* frysk/proc/Proc.java (breakpoints): New final field.
	(Proc): Initialize breakpoints.
	(requestAddCodeObserver): New method.
	(requestDeleteCodeObserver): New method.
	* frysk/proc/Task.java (handleAddCodeObserver): New method.
	(handleDeleteCodeObserver): New method.
	(codeObservers): New field.
	(requestAddCodeObserver): New method.
	(requestDeleteCodeObserver): New method.
	(notifyCodeBreakpoint): Likewise.
	* frysk/proc/TaskCodeObservation.java: New file.
	* frysk/proc/TaskObserver.java (updateHit): Update documentation.
	* frysk/proc/TaskState.java (handleAddCodeObserver): New method.
	(handleDeleteCodeObserver): New method.
	(Running.handleStoppedEvent): Add and remove pending CodeObservers.
	(Running.steppingBreakpoint): New field.
	(Running.handleTrappedEvent): New method.
	(Running.pendingCodeObservers): New field.
	(Running.PendingCodeObserver): New struct.
	(Running.handleAddCodeObserver): New method.
	(Running.handleDeleteCodeObserver): New method.
	(BlockedSignal.handleAddCodeObserver): New method.
	(BlockedSignal.handleDeleteCodeObserver): New method.
	* frysk/proc/TestBreakpoints.java: new file.

2006-08-15  Mark Wielaard  <mark@klomp.org>

	* ForkTestLib.java: New file.
	* cni/ForkTestLib.cxx: Likewise.

2006-08-14  Mike Cvet  <mcvet@redhat.com>

	* TestLib.java (TaskObserverBase): Made public.

2006-08-11  Tim Moore  <timoore@redhat.com>

	bz 3014
	* IsaFactory.java: (getIsa): Call Elf.close() when done with the
	Elf file.
	* LinuxTask.java: rerevert 1.32, calling the IsaFactory class.

2006-08-10  Phil Muldoon  <pmuldoon@redhat.com>

	* LinuxTask.java: Temporarily revert 1.32 patch due to bz 3014.
	Needs another look, due to errors at make check.

2006-08-09  Tim Moore  <timoore@redhat.com>

	* Register.java: GNU indentation.

2006-08-08  Sami Wagiaalla  <swagiaal@redhat.com>

	* ProcState.java: Added handling of DetachComplete to Attaching.toMainTask. 
	* TestTaskObserverBlocked.java (testAddObserverAfterUnblock): 
	Enabled test.

2006-08-08  Tim Moore  <timoore@redhat.com>

	* Isa.java: GNU indentation.
	* IsaIA32.java: ditto.
	* IsaEMT64.java: ditto.

	* TestI386Modify.java: (TestI386ModifyInternals.update): Change
	Task.TaskException to TaskException.

	Patches from IBM.
	2006-08-08  Wu Zhou  <woodzltc@cn.ibm.com>

		* LinuxPPC64.java (returnCode): When the 29th bit of
		register CCR is set, return the negation of register GPR3.


	2006-08-08  Yao Qi  <qiyaoltc@cn.ibm.com>

		* frysk/proc/LinuxTask.java: Do not assume little endian any
		more.

2006-08-07  Tim Moore  <timoore@redhat.com>

	* TestX8664Modify.java : New file; test based on TestI386Modify.java.

	* Task.java (TaskException): Move out of Task to its own class.
	* TaskException.java: New class replacing Task.TaskException.
	* TaskSevereException.java: New class.
	* TaskFileException.java: New class.
	* IsaFactory (getIsa(int, Task)): Make private. Catch new
	ElfFileException. Throw more specific TaskFileException where
	possible.
	(getIsa(int), getIsa(Task)): New methods.
	* LinuxHost.java (sendCreateAttachedProc,
	PollWaitOnSigChild.cloneEvent, PollWaitOnSigChild.forkEvent):
	Change Task.TaskException to TaskException.
	* LinuxProc.java (sendRefresh.TidBuilder): ditto.
	* LinuxTask.java (LinuxTask, sendrecIsa): ditto.
	* Task.java (getIsa, getSyscallEventInfo, getDwflLineXXX,
	sendrecIsa, notifySyscallEnter, notifySyscallExit): ditto.
	(TaskException): remove.
	* TestI386Modify.java
	(TestI386ModifyInternals.TaskEventObserver.updateSyscallEnter): ditto.
	* TestI386Regs.java
	(TestI386RegsInternals.TaskEventObserver.updateSyscallEnter,
	TestI386RegsInternals.RegsTestObserver.update): ditto.
	* TestTaskSyscallObserver.java (.getSyscallEventInfo): ditto.
	* TestX8664Regs.java
	(TestX8664RegsInternals.TaskEventObserver.updateSyscallEnter,
	TestX8664RegsInternals..RegsTestObserver.update): ditto.

2006-08-04  Tim Moore  <moore@redhat.com>

	* Task.java (TaskException): Declare static.

	Yao Qi's contributions for PPC and PPC64.
	2006-07-28  Yao Qi  <qiyaoltc@cn.ibm.com>

		* frysk/proc/LinuxTask.java: Move ISA selection to
		 IsaFactory.java and format it via Emacs.
		* frysk/proc/IsaFactory.java: New file.

	2006-07-27  Yao Qi  <qiyaoltc@cn.ibm.com>
		Wu Zhou  <woodzltc@cn.ibm.com>

		* frysk/proc/LinuxPPC64.java: New file for ppc64.
		* frysk/proc/IsaPPC64.java: Ditto.
		* frysk/proc/LinuxPPC.java: New file for ppc.
		* frysk/proc/IsaPPC.java: Ditto.

2006-08-03  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (AckProcess).  Rename .addClone to
	.assertSendAddCloneWaitForAcks, .delClone to
	.assertSendDelCloneWaitForAcks, .addFork to
	.assertSendAddForkWaitForAcks, .delFork to
	.assertSendDelForkWaitForAcks, .zombieFork to
	.assertSendZombieForkWaitForAcks, .fryParent to
	.assertSendFryParentWaitForAcks, .exec to
	.assertSendExecWaitForAcks, and .execClone to
	.assertSendExecCloneWaitForAcks.
	* StressAttachDetachSignaledTask.java: Update.
	* TestExec.java: Update.
	* TestProcTasksObserver.java: Update.
	* TestRefresh.java: Update.
	* TestTaskObserver.java: Update.
	* TestTaskObserverBlocked.java: Update.
	* TestTaskSyscallObserver.java: Update.

2006-08-03  Tim Moore  <timoore@redhat.com>

	* LinuxHost.java (PollWaitOnSigChld.terminated): Test for null
	pointer return from getTask.

	* MachineType.java: New class; constants for architecture of
	running program.
	* SyscallExaminer.java: New file. Utility superclass for tests
	that halt on a system call for examining machine state.
	* TestI386Regs.java: Rewrite to use SyscallExaminer.
	* TestX8664Regs.java: New file. Register access test for x86_64.
	* TestLib.java (tearDown): Only kill children that were registered
	with killDuringTearDown.

2006-07-27  Sami Wagiaalla  <swagiaal@redhat.com>

	* TaskState.java (clonedState): Added handling for 
	runningInSyscall.
	Created SyscallStartClonedTask.
	* Task.java (notifyClonedOffspring): Added log call.
	(notifyAttached): Ditto.
	* Syscall.java (syscallByNum): Added check for out of
	bound syscall numbers.

2006-07-25  Nurdin Premji  <npremji@redhat.com>

	* TaskState.java (TaskState): added signal number to logging messages
	for handleSignaledEvents.

2006-07-24  Adam Jocksch  <ajocksch@redhat.com>

	* TestLib.java (AckDaemonProcess): Made public.
	(AttachedDaemonProcess): Ditto.
	* ProcId.java: Ditto.

2006-07-24  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskSyscallObserver.java: Added test for adding syscall observer
	to an attached state.
	Added test to check that frysk doesnt miss first exec syscall.
	Enabled some tests. 
	* TaskState.java (handleAddSyscallObserver): Added 
	handleAddSyscallObserver to state BlockedSignal.

2006-07-22  Mark Wielaard  <mark@klomp.org>

	* StressAttachDetachManyTasks.java (test): Mark broken 2468.
	* StressAttachDetachRapidlyCloningMainTask.java (test): Mark broken
	2956.
	* TestTaskObserverDetach.java (testDetachClone): Mark broken 2744.

2006-07-22  Andrew Cagney  <cagney@redhat.com>

	* StressAttachDetachSignaledTask.java: Mark broken tests.
	* TestProcTasksObserver.java: Mark broken tests.

2006-07-20  Tim Moore  <timmore@redhat.com>

	* Task.java (Task.TaskException): New exception class.
	(getSyscallEventInfo, getDwflLineXXX, sendrecIsa): Throw it.
	(notifySyscallEnter, notifySyscallExit): Catch it.
	* LinuxHost.java (sendCreateAttachedProc, cloneEvent, forkEvent): Catch
	TaskException. 
	* LinuxTask.java (LinuxTask): Throw TaskException.
	(sendrecIsa): throw TaskException, use the task's executable to
	determine the ISA.
	* TestI386Modify.java (updateSyscallEnter, TestI386ModifyInternals):
	Catch TaskException.
	* TestI386Regs.java (updateSyscallEnter, TestI386RegsInternals): ditto.
	* TestTaskSyscallObserver.java (getSyscallEventInfo): New method that
	handles TaskException.
	(updateSyscallEnter, updateSyscallExit): Use it.


2006-07-19  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskSyscallObserver.java (testExecSyscall): Added test
	for while in syscall tracing mode and clone while in syscall
	tracing mode.
	* TaskState.java: Added handling for Fork and clone to state
	runningInSyscall.
	* Syscall.java (syscallByNum): Returns unknow syscall
	instead of crashing when an unkown syscall is requested.

2006-07-18  Sami Wagiaalla  <swagiaal@redhat.com>

	* TaskState.java: Added handling for adding/removing observers
	while transitioning to syscall mode.
	* Syscall.java: Replaced an incorrect print statement that was
	resulting in string syscall arguments not being printed correctly.

2006-07-17  Tim Moore  <moore@redhat.com>

	* Register.java (getBigInteger, putBigInteger): New methods for
	retrieving registers as BigInteger.

2006-07-17  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (brokenXXX): Add bug parameter.
	* StressAttachDetachRapidlyForkingMainTask.java: Update.
	* TestI386Modify.java: Update.
	* TestI386Regs.java: Update.
	* TestModify.java: Update.
	* TestTaskObserverBlocked.java: Update.
	* TestTaskSyscallObserver.java: Update.
	* TestTaskSyscallObserver.java: Update.

	* StressAttachDetachRapidlyForkingMainTask.java: Re-indent.
	* TestTaskSyscallObserver.java: Ditto.

2006-07-13  Adam Jocksch  <ajocksch@redhat.com>

	* Host.java (Logger): Made public.

2006-07-12  Adam Jocksch  <ajocksch@redhat.com>

	* TestLib.java (brokenXXX): Made protected.

	* TestLib.java (assertRunUntilStop): Made protected.
	(runPending): Ditto.

2006-07-12  Tim Moore  <timoore@redhat.com>

	* LinuxTask.java (sendrecIsa) : really hardwire LinuxIa432 singleton,
	not LinuxEMT64 singleton.

2006-07-11  Sami Wagiaalla  <swagiaal@redhat.com>

	* TaskState.java: Added comment to explain ignored syscallExit event
	in transitionOutOfSyscallRunning state.
	* Syscall.java: Added javadoc.
	made printCall, printReturn, and syscallByNum public
	* SyscallEventInfo.java: Added javadoc.
	Changed number(),arg(), and returnCode() public.
	* LinuxEMT64.java: Ditto.
	* Host.java: Renamed attachedArg to AttachedObserver.
	* LinuxIa32.java: Ditto.

2006-07-10  Tim Moore  <timoore@redhat.com>

	* Isa.java: Changed class to an interface.
	* IsaIA32.java, IsaEMT64.java: New classes that implement the Isa
	interface. 
	* SyscallEventDecoder.java: New interface
	(getSyscallEventInfo): method that returns a SyscallEventInfo object.
	* LinuxIa32.java: Rework to use IsaIA32 class and implement
	SyscallEventDecoder interface.
	* LinuxEMT64.java: New class like LinuxIa32, but for EMT64
	architecture. 
	* Register.java (Register): Delete isa argument.
	* LinuxTask.java (sendrecIsa): Hardwire LinuxIA32 singleton.
	* Task.java (getSyscallEventInfo): New method.
	(notifySyscallEnter, notifySyscallExit): Use it.
	* TestI386Modify.java (updateSyscallEnter): Use new interface for
	SyscallEventInfo. Use getRegisterByName instead of functions that don't
	exist anymore in Isa.
	* TestI386Regs.java (updateSyscallEnter): Ditto.
	* TestModify.java (updateSignaled): Use new methods getByteOrder() and
	getWordSize().

2006-07-05  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskSyscallObserver.java: Enabled all tests.
	Added test for deleting the last syscallobserver.
	Added test for adding a syscall observer to a running task.
	Added test for removing a syscall observer from a syscallRunning
	task.
	* TaskState.java (Running): Added handleAddSyscallObserver.
	created transitionToSyscallRunning.
	(handleSyscalledEvent): Added handling for blocking request.
	(SyscallRunning) added handling for add/removing syscallObserver.
	and special handling needed for removing the last syscallObserver.
	Created transitionOutOfSyscallRunning.
	Created syscallBlockedEnteringSyscall.
	Created syscallBlockedExitingSyscall.
	* Proc.java (requestAddSyscallObserver): Corrected log message.
	* Observable.java (numberOfObservers): New function.

2006-06-30  Mike Cvet  <mcvet@redhat.com>

	* Task.java (getMemory)): Added
	* Task.java: Reformatted with the new GNU style formatter.
	* LinuxHost.java: Ditto.

2006-06-28  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskTerminateObserver.java (testBlockingWhileTerminating): New
	test.
	* TestLib.java (assertRunWhileProcNotRemoved): New test untility 
	function.
	* TaskState.java: Added handling for block requests of a terminating
	task both in normal running mode and in syscall mode (fix for bz 2862).

2006-06-28  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverBlocked.java: Add testAddObserverAfterUnblock.

2006-06-27  Andrew Cagney  <cagney@redhat.com>
	    Phil Muldoon  <pmuldoon@redhat.com>
	    Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskObserverBlocked.java
	(testRefreshAfterUnblockedForkExits): New test.
	* TaskState.java: In "detachedBlocked" state, remember to
	transition to "detached" when the last blocking observer is
	removed.

2006-06-27  Phil Muldoon  <pmuldoon@redhat.com>

	* StressAttachDetachRapidlyForkingMainTask.java: Add refreshTimer.
	Add brokenXXX() to make sure testsuite passes.

2006-06-26  Phil Muldoon  <pmuldoon@redhat.com>

	* StressAttachDetachRapidlyForkingMainTask.java: New.

2006-06-25  Andrew Cagney  <cagney@redhat.com>

	* StressAttachDetachSignaledTask.java: Enable.  Remove code doing
	back-to-back attach-detach as it is so agressive that the process
	never makes forward progress.
	* TaskState.java: During an attach save any signal delivering it
	after the attach has completed.

	* StressAttachDetachSignaledTask.java: New file and tests,
	disable.

	* TestLib.java (brokenXXX, trueXXX): Add.
	* TestI386Regs.java: Use.
	* TestI386Modify.java: Use.
	* TestTaskSyscallObserver.java: Use.
	* TestModify.java: Use.

	* TaskState.java: Run EMACS indent over code.
	* ProcTasksObserver.java: Ditto.
	* TestLib.java: Ditto.
	* TestProcTasksObserver.java: Ditto.

2006-06-24  Sami Wagiaalla  <swagiaal@redhat.com>

	* ProcTasksObserver.java (addFailed): Made addFailed call addFailed of
	the observer instead of throwing an exception.

2006-06-23  Nurdin Premji  <npremji@redhat.com>

	* TestLib.java (DetachedAckProcess): Added
	* TestProcTasksObserver.java: Added, was TestOffspringObserver.
	* ProcTasksObserver.java: Renamed, was OffspringObserver. Implemented 
	TasksObserver.Terminated, unimplemented TasksObserver.ForkedObserver.
	(requestAddObservers): added. To keep track of all the tasksObservers
	implemented.
	* ProcObserver.java (ProcTasks): Renamed was Offspring.

2006-06-19  Nurdin Premji  <npremji@redhat.com>

	* OffspringObserver.java (procOffspringObserver): renamed. Was 
	offspringObserver.
	(execute): Added more detail to exception thrown. Bug 2795

2006-06-19  Mike Cvet  <mcvet@redhat.com>

	* TestTaskTerminateObserver.java (testTerm): Fixed attachCounter.count oops

2006-06-16  Nurdin Premji  <npremji@redhat.com>

	* TestOffspringObserver.java 
	(addObserverToProcRequestStopAssertRunUntilStop): Renamed
	was addObserverToProcRquestStop.
	(testExistingClone): Added.
	(testExistingFork): Added.
	(testForkThenKill): Added.
	(testCloneThenKill): Added.
	(testStressForking): Added.
	* ProcObserver.java (taskAdded): Documentation.
	* OffspringObserver.java: Implemented Terminated Observer.
	(updateTerminated): Added.

2006-06-15  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskSyscallObserver.java: Enabled the rest of the tests.
	* TestLib.java: Added StopEventLoopWhenProcRemoved.
	* TaskState.java: removed handleExeced from syscallRunning state.
	* Task.java (notifyTerminated): Added log line.

2006-06-13  Stan Cox  <scox@redhat.com>

	* LinuxTask.java (sendAttach):  Handle Errno.Eperm.

2006-06-13  Nurdin Premji  <npremji@redhat.com>

	* TestOffspringObserver.java (testCloneThenFork): Added
	(testForkThenClone): Added
	(tasksAddedCounter): Added back in counters for two layers of testing :)
	(testCloneThenFork): Fixed problem with random failures. Error was that
	TaskSet.toArray does not guarantee the order of the tasks is the order they
	came in.
	(testForkThenClone): Fixed ^
	(addObserverToProcRequestStop): Added, refactored since its used by a bunch of tests.

2006-06-12  Adam Jocksch  <ajocksch@redhat.com>

	* Proc.java (getMainTask): Added.
	* Task.java (getDwflLineXXX): Now uses getIsa instead of isa.

2006-06-12  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (AckProcess): Add methods .addClone(int), and
	.addFork(int).

2006-06-11  Sami Wagiaalla  <swagiaal@redhat.com>

	Added syscall equivalents to all running classes which can add
	syscall Observers, and added transitions from non syscall states
	to syscall states.
	* TaskState.java (handleAddSyscallObserver): New.
	(handleDeleteSyscallObserver): New.
	(Attached): Add transitionToSyscallRunningState.
	(waitForContinueOrUnblock): Add handleAddSyscallObserver.
	(syscallWaitForContinueOrUnblock): New.
	(syscallWaitForUnblock): New.
	(Running): Renamed from running.
	(SyscallRunning): New.
	(runningInSyscall): Add handleExecedEvent.
	(BlockedSignal): Add handleAddSyscallObserver.
	(SyscallBlockedSignal): New.
	(syscallBlockedContinue): New.
	(syscallBlockedInExecSyscall): New.	

	* TaskSyscallObservation.java: New class.
	* TestI386Modify.java: Removed task.traceSyscall = true.
	* TestI386Regs.java: Ditto.
	* TaskObservation.java: Changed the task reference from private to
	protected so that specialized children of TaskObservation can see it.
	* Task.java: Removed traceSyscall flag.
	(handle(Add/Delete)SyscallObserver):  Special handling need for
	SyscallObservers. 
	(sendSyscallContinue,startTracingSyscalls,stopTracingSyscalls): New.
	* Proc.java (requestAddSyscallObserver, requestDeleteSyscallObserver):
	Add/remove the special SyscallObservation instead of the default
	Observations.
	* LinuxTask.java: Added implementations of start/stop tracingSyscalls
	and sendSyscallContinue.  Removed traceSyscalls flag, and checks
	for it this is handled by the active TaskState.
	* DummyTask.java: Added empty implementations of sendSyscallContinue,
	startTracingSyscalls, and stopTracingSyscalls.
	* TestTaskSyscallObserver.java: Added a test to make sure the
	State machine can correctly handle an execedEvent in systemcall
	tracing mode. 

2006-06-09  Nurdin Premji  <npremji@redhat.com>

	* TestOffspringObserver.java (tasksAdded): changed from integer counters
	to task sets so that duplicates can be ignored.
	(testOffspringObserver): more refactoring done, used to be
	testTasksObserver. 
	(OffsprintObserver): used to be TasksObserver.
	* OffspringObserver.java (addedTo): Forgot to enclose if statement
	in a block.
	(updateOffspring): added some Logging info
	(addedTo): changed if condition so that combination of clone and fork
	observers do not both call existingTask (just the first one does)

2006-06-08  Nurdin Premji  <npremji@redhat.com>

	* TestOffspringObserver.java: Used to be TestTasksObserver.
	* ProcObserver.java (Offspring): Used to be Tasks.
	* OffspringObserver.java: Used to be TasksObserver.
	Implemented Forked Observer.

2006-06-07  Adam Jocksch  <ajocksch@redhat.com>

	* Task.java (getDwflLineXXX): Used to be getDwflLine.

	* Task.java (getDwflLine): Added.

2006-06-06  Adam Jocksch  <ajocksch@redhat.com>

	* Isa.java (pc): Made public.
	* LinuxIa32.java (pc): Ditto.

2006-05-30  Andrew Cagney  <cagney@redhat.com>

	* TasksObserver.java: Add the observer when running within the
	event loop.

	* TasksObserver.java: New file.
	* TestTasksObserver.java: Update.
	* Proc.java (requestAddTasksObserver): Delete.
	* ProcState.java (handleAddTasksObserver): Delete.

	* TaskObserver.java (Forked): Add method updateForkedOffspring.
	(Cloned): Add method updateClonedOffspring.
	* TestTaskObserverBlocked.java: Handle updateForkedOffspring, and
	updateClonedOffspring.
	* TestTaskObserverDetach.java: Ditto.
	* TestTaskForkedObserver.java: Handle updateForkedOffspring.
	* TestTaskClonedObserver.java: Handle updateClonedOffspring.
	* TaskState.java: Generate notifyForkedOffspring, and
	notifyClonedOffspring events.
	* Task.java (id, proc): Make final.
	(creator): New member.
	(Task): Initialize creator.
	(notifyClonedOffspring, notifyForkedOffspring): New.
	* ProcState.java ("detached" .handleAddTasksObserver): Add
	updateClonedOffspring to local class, block the offspring.

	* Proc.java: Make members final.
	(creator): New member.
	(host, id): Make final.
	(Proc): Initialize the creator.
	(toString): Do not print the command.

2006-05-29  Andrew Cagney  <cagney@redhat.com>

	* HostState.java: In log, print the Host.  Trace all state
	transitions at level FINE.

2006-05-25  Stan Cox  <scox@redhat.com>

	* Task.java: Change to FINEST.
	* ProcState.java (initial): Change to FINEST.
	(handleRemoval): Change to FINEST.
	* Proc.java: Change to FINEST.
	(performRemoval): Change to FINEST.
	(add): Change to FINEST.
	(remove): Change to FINEST.
	* HostState.java (running): Change to FINEST.
	* Host.java (add): Change to FINEST.
	(remove): Change to FINEST.

2006-05-10  Andrew Cagney  <cagney@redhat.com>

	* TaskObserver.java (Forked .updateForkedParent): Rename
	.updateForked.
	(Cloned .updateClonedParent): Rename .updateCloned.
	* Task.java (notifyForkedParent): Rename notifyForked.
	(notifyClonedParent): Rename notifyCloned.
	* ProcState.java: Update.
	* TaskState.java: Update.
	* TestTaskClonedObserver.java: Update.
	* TestTaskForkedObserver.java: Update.
	* TestTaskObserverBlocked.java: Update.
	* TestTaskObserverDetach.java: Update.

2006-05-08  Phil Muldoon  <pmuldoon@redhat.com>

	* Proc.java (getUID): Added - Return UID of Proc object.
	(getGID): Added - Return GID of Proc object.
	* LinuxProc.java (sendrecUID): Added - Send UID request
	to static Status object in frysk-sys.
	(sendrecGID): Added - Send GID request to static Status 
	object in frysk-sys.
	* DummyProc.java (sendrecUID): Added skeleton function
	call.
	(sendrecGID): Ditto.

2006-05-04  Andrew Cagney  <cagney@redhat.com>

	mkenum.sh changed to generate different constant names.
	* TestTaskTerminateObserver.java: Update.
	* TestTaskSyscallObserver.java: Update.
	* TestTaskObserver.java: Update.
	* TestModify.java: Update.
	* LinuxHost.java: Update.

2006-05-02  Sami Wagiaalla  <swagiaal@redhat.com>

	* TestTaskTerminateObserver.java: Removed unused imports.

2006-05-01  Stan Cox  <scox@redhat.com>

	* TestTaskTerminateObserver.java (AttachCounter): New class.
	(TerminatingCounter): New class.
	(testTerm): New test.
	* TestLib.java (DetachedAckProcess): New constructor.
	* TestExec.java (testProcBlockExec): Cast null.
	(testTaskBlockExec): Cast null.

2006-04-17  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestCreateAttachedProcXXX): Rename to
	requestCreateAttachedProc.
	(requestCreateAttachedProc, sendCreateAttachedProc): Add
	TaskObserver .Attached parameter.
	* LinuxHost.java : Update.
	* HostState.java (handleCreateAttachedProc): Update.
	* Proc.java (handleAddObservation): Factor out of
	requestAddObserver.
	* Task.java (Task (Proc, TaskObserver.Attached)): Replace Task
	(Proc); send the attached observer to the proc for processing
	using handleAddObservation.
	* LinuxTask.java: Update.
	* TestLib.java (AttachedAckObserver): Pass an Attached observer to
	requestCreateAttachedProc.
	* TestRun.java (testCreateAttachedContinuedProc)
	(testCreateAttachedStoppedProc): Pass a attached observer to
	requestCreateAttachedProc.
	(AutoAddTaskObserver): Delete.

2006-04-15  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (AutoAddTaskObserver): Move from here ...
	* TestRun.java (AutoAddTaskObserver): ... to here.
	* TestTaskObserver.java (testAddObserverToRunning): Delete,
	redundant.

	* TestTaskSyscallObserver.java: Delete unused imports.

	* TestTaskTerminateObserver.java: Eliminate use of
	AutoAddTaskObserverBase.

	* TestProcGet.java: Replace requestCreateAttachedProc with
	AttachedDaemonProcess.  Simplify.

	* TestTaskObserverBlocked.java (BlockingFibonacci): Replace
	requestCreateAttachedProc with AttachedDaemonProcess.
	(testBlockingFibonacciClone, testBlockingFibonacciFork): Update.
	* TestLib.java (TaskSet): For clear, add, and unblock, return the
	TaskSet.

	* TestTaskForkedObserver.java, TestTaskClonedObserver.java:
	Replace requestCreateAttachedProc with AttachedDaemonProcess.
	Correctly propogate the observer to offspring.
	* TaskState (BlockedSignal): Add handleAddObserver. 

	* TestTaskSyscallObserver.java: New, not enabled.
	* TestSyscall.java: Delete.
	* TestSyscallOpen.java: Delete.
	* TestSyscall2.java: Delete.

	* TestLib.java (AttachedDaemonProcess): New class.
	* TestTaskObserverBlocked.java: Simplify, explicitly attach the
	blocked observer.
	* TestTaskObserver.java: Use AttachedDaemonProcess.
	* TestModify.java: Use AttachedDaemonProcess.
	* TestI386Regs.java: Use AttachedDaemonProcess.
	* TestI386Modify.java: Use AttachedDaemonProcess.
	* TestTaskTerminateObserver.java: Use AttachedDaemonProcess.

	* TestExec.java (ExecBlockCounter): Based on ExecCounter.
	(testProcBlockExec, testTaskBlockExec): Replace testProcExec, and
	testTaskExec.
	* TestLib.java (ExecCounter): Move to TestExec.java.

	* TestLib.java (funitChildCommand): New function.
	(AckProcess): Use funitChildCommand to construct program to run.
	* TestExec.java (testAttachedMultipleChildExec): Check that the
	first command line argument changes, not the second.

2006-04-09  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverDetach.java: Enable accidentally disabled tests.

	* TestLib.java (AckHandler): Re-implement so that it provides
	better logging.  Update calls.
	(tearDown): Move check for pending signals to start.
	* TestTaskObserverBlocked.java: Update.
	* TestTaskObserverDetach.java (Detach): Split constructor adding
	assertDetach method.

	* TestRun.java: Delete variable taskAttachContinuedObserver,
	unused.

2006-04-08  Andrew Cagney  <cagney@redhat.com>

	Implement auto-matic detach of new processes with no observers.
	* ProcState.java: Start a new process, created via fork, in the
	Detaching state.
	* TaskState.java (StartMainTask): Re-implement so that, unless
	told otherwize, the task is detached.

	* TaskState.java: Fix tipo, "PerformContinue" to "handleContinue".

	* TestTaskObserverBlocked.java: Add killDuringTearDown calls.
	* TestTaskForkedObserver.java: Block the forked process.
	* TestRun.java (testCreateAttachedStoppedProc): Re-order test to
	ensure that task observers are always added early.
	* TestLib.java (assertRunUntilStop): Add logging.
	(AutoAddTaskObserverBase): Add logging.

	* TaskState.java (StartClonedTask): New sub-state machine, for
	moment duplicate of .StartMainTask.

	* TaskState.java: Rename .Start to .StartMainTask.

	* TaskState.java: Replace "attached" with Attached class
	containing sub-states to handle combinations of waiting for
	unblock and continue.

2006-04-07  Adam Jocksch  <ajocksch@redhat.com>

	* Register.java (getLength): Added.

2006-04-07  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (killDuringTearDown): Rename registerChild.
	(tearDown): Log the task kill.
	* TestSyscallOpen.java: Update.
	* TestSyscall.java: Update.
	* TestSyscall2.java: Update.
	* TestModify.java: Update.
	* TestI386Modify.java: Update.
	* TestI386Regs.java: Update.

2006-04-06  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java, ProcState.java: Rename "unattached" to
	"detached". Make states final.
	* TestRefresh.java: Update.
	* Task.java: Update.

2006-04-06  Adam Jocksch  <ajocksch@redhat.com>

	* Isa.java: Made public.
	(RegisterIterator): Ditto.
	(getRegisterByName): Ditto.

2006-04-05  Andrew Cagney  <cagney@redhat.com>

	* TestSyscallOpen.java: Skip.
	* TestSyscall.java: Skip.
	* TestSyscallInterrupt.java: Skip.
	* TestModify.java: Skip.
	* TestI386Regs.java: Skip.
	* TestI386Modify.java: Skip.

2006-03-28  Stan Cox  <scox@redhat.com>

	* TaskState.java (attaching): Handle handleTerminatedEvent.

2006-03-26  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserverDetach.java: Check that the ack signal, after a
	fork, clone, or exec, is received.
	* TestTaskObserver.java (detach): Add boolean shouldStillHaveTasks
	making the check for tasks conditional.
	(detachExitingTask): Do not expect any tasks after the detach.
	* TestLib.java (await): Add String, aka reason, parameter.
	(execAck, spawnAck): New.
	(tearDown): Re-implement pehding signal code, to assert that tere
	are no bad pending signals.
	* TaskState.java: When in detaching state, skip terminating,
	terminated, fork, exec, and clone events.

2006-03-25  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java (running, destroyed): Handle handleDelete.
	* TaskObservation.java (handleDelete): Pass request onto the task.

	* Host.java (oldState, newState, getState): Replace state.
	* Proc.java (oldState, newState, getState): Replace state.
	* Task.java (toString): Clean up.

	* TaskState.java, ProcState.java, HostState.java: Make "handle"
	the prefix for all event methods.
	* Task.java, Host.java, Proc.java: Update.

	* TaskState.java (handleAddObserver): Replace
	processPerformAddObservation.
	(handleDeleteObserver): New.
	* TaskObservation.java (handleDelete): New.
	(handleAdd): Rename requestAdd.
	* Task.java (handleAddObserver, handleDeleteObserver): New.
	(performAddObservation): Delete.
	* ProcState.java: Update.
	* Observation.java (handleAdd): Rename requestAdd.
	(handleDelete): New.
	(add, delete): Delete.

2006-03-24  Andrew Cagney  <cagney@redhat.com>

	* Proc.java (requestAddObserver, requestDeleteObserver): Use
	TaskObservation as an event.
	* TaskObservation.java: Make abstract.
	* Observation.java: Implement Event.

	* Task.java (performContinue, performAttach, performDetach)
	(performAddObservation): Simplify.

	* Task.java (performRemoval): Simplify.
	(performContinue): Note race condition with performAddObservation.

	* Proc.java (requestDeleteObserver, requestAddObserver): Replace
	performAddObservation, and performDeleteObservation.
	* Task.java (requestAddObserver, requestDeleteObserver): Delete,
	instead directly call Proc .requestDeleteObserver and Proc
	.requestAddObserver.  Clean up log messages.
	* Observation.java (observable, observer): Change from private to
	final.
	* TaskState.java: Update.

	* TaskState.java (processSignaledEvent): Rename
	processPerformedSignaled.
	* Task.java: Update.  Rename received* methods to processed*.
	* LinuxHost.java: Update.

2006-03-22  Andrew Cagney  <cagney@redhat.com>

	* ProcState.java (isStopped): Delete.
	* Proc.java (isStopped): Delete.

2006-03-20  Andrew Cagney  <cagney@redhat.com>

	* TestId.java: New.
	* ProcId.java (isCompatible): New
	* TaskId.java (isCompatible): New.
	* Id.java (isCompatible): New.
	(equals): Use isCompatible instead of isInstance.
	(compareTo): Simplify.

2006-03-19  Andrew Cagney  <cagney@redhat.com>

	* Task.java (receiveClonedEvent, receiveForkedEvent)
	(receiveStoppedEvent, receiveTrappedEvent, receiveSignaledEvent)
	(receiveTerminatingEvent, receiveDisappearedEvent)
	(receiveSyscalledEvent, receiveTerminatedEvent)
	(receiveExecedEvent): Simplify, directly handle the event.
	* LinuxTask.java (postDisappearedEvent): New; use instead of
	receiveDsiappearedEvent.

	* TaskState.java (clonedState): Replace Task parameter with
	TaskState parameter.
	* Task.java (newState, oldState): Replace <<state>>.
	(getState): Replace getStateString.
	(toString): Update.
	* TestRefresh.java: Update.

	* StressAttachDetachManyTasks.java: New file.

	* StressAttachDetachRapidlyCloningMainTask.java: Rename
	StressTaskObserver.java.

2006-03-16  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java (processRequestStepInstruction): Delete.
	(stepping, stopped): Delete state.	
	* Task.java (requestStepInstruction): Delete.

2006-03-15  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java (isStopped, isRunning, isDead): Delete.
	* Task.java (isStopped, isRunning, isDead): Delete.

	* TaskState.java (processRequestStop): Delete.
	(processPerformContinue): Rename processRequestContinue.
	(stopping, stoppingInSyscall, paused, unpaused): Delete states.
	* Task.java (requestStop): Delete.
	(performContinue): Rename requestContinue.
	* ProcState.java: Update.

	* ProcState.java (processPerformTaskContinueCompleted): Delete.
	* Proc.java (performTaskContinueCompleted): Delete.
	* Task.java (performContinue): Delete.
	* TaskState.java (processPerformContinue): Delete.

	* TaskState.java (processPerformStop): Delete.
	(performingStop): Delete state.
	* ProcState.java (processPerformTaskStopCompleted): Delete.
	* Proc.java (performTaskStopCompleted): Delete.
	* Task.java (performStop): Delete.

	* Proc.java (observableTaskAddedXXX, observableTaskRemovedXXX):
	Delete.

2006-03-14  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (assertRunUntilStop (int, String): New.
	* StressTaskObserver.java: Increase timeout to 20 seconds.

	* TestTaskObserver.java (testAttachDetachRapidlyCloningMainTask):
	Move to new file.
	* StressTaskObserver.java: New file.

	* TestLib.java (logger): Add protected field.
	* Task.java (logger): Change from private to protected final.
	* Host.java (logger): Ditto.
	* Proc.java (logger): Ditto.
	* LinuxHost.java (logger): Delete.
	* LinuxTask.java (logger): Delete.

	* TestLib.java: Update; frysk.sys.Poll simplified, member
	SignalSet deleted, Fds parameter removed.

2006-03-13  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java: Add missing log messages.
	* ProcState.java: Ditto.

2006-03-12  Andrew Cagney  <cagney@redhat.com>

	* Host.java: Clean up log messages.
	* TaskState.java: Ditto.
	* ProcState.java: Ditto.
	* LinuxTask.java: Ditto.
	* LinuxHost.java: Ditto.
	* LinuxProc.java: Delete redundant log messages.
	* LinuxTask.java (toString): Delete.

2006-03-09  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Use Sig, instead of int for signals.
	(ackSignal, childAck, parentAck, addCloneSig)
	(delCloneSig, addForkSig, delForkSig, zombieForkSig, execSig)
	(execCloneSig): Move to global scope.
	* TestTaskObserverDetach.java: Update.
	* TestTaskObserver.java: Update.
	* TestTaskObserverBlocked.java: Update.
	* TestSyscallInterrupt.java: Update.

	* TestLib.java (tearDown): Update Poll.Oboserver.signal, now takes
	a Sig parameter.

	* TestTaskObserver.java (assertTaskGone): Change theSig parameter
	to a Sig, update calls.
	* TestLib.java (tearDown): Use Sig as an object.

	frysk.event.SignalEvent's constructor changed to take a Sig.
	* LinuxHost.java: Update.
	* TestLib.java: Update.

	frysk.sys.Sig.MEMBER renamed to frysk.sys.Sig._MEMBER.
	* TestTaskObserverDetach.java: Update.
	* TestModify.java: Update.
	* TestLib.java: Update.
	* LinuxHost.java: Update.
	* TestTaskObserver.java: Update.

2006-03-07  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java (testExitLoosesChild): Replace
	testExitLoosesAllChildren, only create one child process.

	* TestLib.java: Check for still pending signals.

2006-02-28  Stan Cox  <scox@redhat.com>

	* TestSyscallInterrupt.java (update): remove unreferenced variable
	proc.

2006-02-27  Stan Cox  <scox@redhat.com>

	* TestSyscallInterrupt.java (TestSyscallInterrupt): Use fork.daemon.
	(ProcDestroyedObserver): Remove parent check.	

2006-02-23  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (Child): Add static .sleepTime member.  Pass to
	funit-child.  Reduce sleep-time to 10, from 20 seconds.

2006-02-16  Stan Cox  <scox@redhat.com>

	* TestExec.java (testAttachedMultipleChildExec): Check getCmdLine
	and getCommand before and after exec.
	* TestLib.java (AckProcess (String)): New

2006-02-14  Stan Cox  <scox@redhat.com>

	* TaskState.java (processExecedEvent): Refresh stat call.
	* Proc.java (getCommand): Don't cache.
	(getExe): Likewise.
	(getCmdLine): Likewise.
	* LinuxHost.java (PollWaitOnSigChld):  Pass arg to logger message.

2006-02-12  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java (testExitLoosesAllChildren): New.
	* LinuxHost.java: Add more comments.

2006-02-10  Adam Jocksch  <ajocksch@redhat.com>

	* DummyHost.java: Added.
	* DummyProc.java: Added.
	* DummyTask.java: Added.

2006-02-08  Andrew Cagney  <cagney@redhat.com>

	* HostObserver.java: New file.  Draft.

2006-02-07  Stan Cox  <scox@redhat.com>

	* TestExec.java (testAttachedMultipleParentExec): New.
	(testAttachedMultipleChildExec): Rename, simplify, eliminate
	explict refresh call. 

2006-02-05  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Prefix executables with prefix from
	frysk.junit.Paths; add funit- et.al. prefixes to program names.
	* TestExec.java: Ditto.
	* TestI386Modify.java: Ditto.
	* TestI386Regs.java: Ditto.
	* TestModify.java: Ditto.
	* TestProcGet.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestSyscallInterrupt.java: Ditto.
	* TestSyscallOpen.java: Ditto.
	* TestTaskClonedObserver.java: Ditto.
	* TestTaskForkedObserver.java: Ditto.
	* TestTaskObserver.java: Ditto.
	* TestTaskObserverBlocked.java: Ditto.
	* TestTaskTerminateObserver.java: Ditto.

2006-02-02  Andrew Cagney  <cagney@redhat.com>

	* TestExec.java (testAttachedSingleExec): Simplify, eliminate
	explict refresh call.

2006-02-02  Stan Cox  <scox@redhat.com>

	* TestExec.java (testAttachedSingleExec): Add ExecObserver. 

2006-02-01  Andrew Cagney  <cagney@redhat.com>

	* Proc.java (toString): Do not print the command, has sideffects.
	(sendrecCommand): New abstract method.
	(getCommand): Change to a function.
	(command): New private variable.
	* LinuxProc.java (sendrecCommand): Rename getCommand.

	* Host.java (requestRefreshXXX(boolean)): Rename requestRefresh.
	(requestRefresh()): Delete.
	* TestSyscallInterrupt.java: Update.
	* TestRefresh.java: Update.
	* TestLib.java: Update.

2006-01-31  Andrew Cagney  <cagney@redhat.com>

	* Host.java (observableProcAddedXXX): Rename observableProcAdded.
	(observableProcRemovedXXX): Rename observableProcRemoved.
	(observableTaskAddedXXX): Rename observableTaskAdded.
	(observableTaskRemovedXXX): Rename observableTaskRemoved.
	* Proc.java: Update.
	* TestI386Modify.java: Update.
	* TestI386Regs.java: Update.
	* TestLib.java: Update.
	* TestModify.java: Update.
	* TestRefresh.java: Update.
	* TestSyscall.java: Update.
	* TestSyscall2.java: Update.
	* TestSyscallInterrupt.java: Update.
	* TestSyscallOpen.java: Update.

2006-01-29  Stan Cox  <scox@redhat.com>

	* Proc.java (retain): Use HashMap instead of Collection.
	* TestExec.java (testAttachedSingleExec): New.
	(testAttachedMultipleExec): New.

2006-01-24  Stan Cox  <scox@redhat.com>

	* Host.java (add,remove,removeTasks,get,getProc,requestRefresh,execute)
	(requestRefresh,requestCreateAttachedProc): Improve logger messages.
	* ProcState.java (ProcState,isStopped,process*,state): logger messages.
	* TaskEvent.java (getTask): logger messages.
	* TaskState.java (process*): logger messages.

2006-01-19  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java (testUnattachedMultipleExec)
	(testUnattachedSingleExec): Simplify, use string comparison to
	check getCmdLine()[0].

	* TestLib.java (AckProcess.execClone): Wait for both parentAck and
	childAck.

2006-01-19  Stan Cox  <scox@redhat.com>

	* TestLib.java (execClone): Use parentAck instead of childAck.

2006-01-16  Andrew Cagney  <cagney@redhat.com>

	* Host.java (requestCreateAttachedProcXXX): Rename
	requestCreateAttachedProc.
	* TestTaskTerminateObserver.java: Update.
	* TestTaskObserver.java: Update.
	* TestTaskObserverBlocked.java: Update.
	* TestSyscallOpen.java: Update.
	* TestSyscall.java: Update.
	* TestSyscall2.java: Update.
	* TestRun.java: Update.
	* TestModify.java: Update.
	* TestI386Regs.java: Update.
	* TestI386Modify.java: Update.

2006-01-16  Stan Cox  <scox@redhat.com>

	* TestRefresh.java (testUnattachedMultipleExec): Check colon. 

2006-01-16  Stan Cox  <scox@redhat.com>

	* TestLib.java (findProcUsingRefresh): Always poll.
	(execClone): New.
	* TestRefresh.java (testUnattachedSingleExec): New.
	(testUnattachedMultipleExec): New.

2006-01-11  Andrew Cagney  <cagney@redhat.com>

	* TestProcGet.java, Syscall.java, Auxv.java: Update inua imports
	to match latest import.

	* Proc.java (requestDetachedContinue): Delete.
	(requestAttachedContinue): Delete.
	* ProcState.java (processRequestAttachedContinue): Delete.
	(processRequestDetachedContinue): Delete.
	* TestProcStates.java: Delete.

	* Task.java (stepEvent): Delete.
	* TaskState.java: Delete calls to Task .stepEvent .notify.

	* Task.java (requestedStopEvent): Delete.
	* TaskState.java: Delete calls to Task .requestedStopEvent
	.notify.
	* TestUnpaused.java: Delete.
	* TestStop.java: Delete.
	* TestStopAndStop.java: Delete.
	* TestStep.java: Delete.
	* TestStopAndGo.java: Delete.
	* TestPaused.java: Delete.
	* TestGoAndGo.java: Delete.

2006-01-10  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserver.java (attach(Task)): Refactor, creating ...
	(attach(Task,AttachedObserver): New function.
	(testAttachDetachRapidlyCloningMainTask): Add local
	AttachedObserver object that allows failure.
	* ProcState.java: In .Detaching state, handle
	processPerformDeleteObservation; always fail it.

	* TestTaskObserver.java (deleteUnattachedObserver): Add.
	(testDeleteUnattachedFromAttachedMain):	Add.
	(testDeleteUnattachedFromDetachedMain): Add.
	* ProcState.java: In states "unattached", and "running" handle
	processPerformDeleteObservation.  Delete state "startRunning".

2006-01-09  Andrew Cagney  <cagney@redhat.com>

	* State.java (unhandled): Log the event.
	* TaskState.java: For unhandled cases delete redundant log call.
	* ProcState.java: Ditto.
	* HostState.java: Ditto.

	* TaskState.java (processStoppedEvent): Rename
	processPerformStopped.
	(processTrappedEvent): Rename .processPerformTrapped.
	(processSyscallEvent): Rename .processPerformSyscall.
	(processTerminatingEvent): Rename .processPerformTerminating.
	(processTerminatedEvent): Rename .processPerformTerminated.
	(processExecedEvent): Rename .processPerformExeced.
	(processDisappearedEvent): Rename .processPerformDisappeared.
	(processClonedEvent): Rename .processPerformCloned.
	(processForkedEvent): Rename .processPerformForked.
	* Task.java (receiveClonedEvent): Rename .performCloned.
	(receiveForkedEvent): Rename .performForked.
	(receiveStoppedEvent): Rename .performStopped.
	(receiveTrappedEvent): Rename .performTrapped.
	(receiveSignaledEvent): Rename .performSignaled.
	(receiveTerminatingEvent): Rename .performTerminating.
	(receiveDisappearedEvent): Rename .performDisappeared.
	(receiveSyscalledEvent): Rename .performSyscalled.
	(receiveTerminatedEvent): Rename .performTerminated.
	(receiveExecedEvent): Rename .performExeced.
	* LinuxHost.java: Update.
	* LinuxTask.java: Update.

2006-01-08  Andrew Cagney  <cagney@redhat.com>

	* Task.java, Proc.java: For logging, print THIS at start of log
	message.
	* LinuxHost.java: Simplify wait event logging; use a scratch
	TaskId when looking up tasks.

2006-01-07  Andrew Cagney  <cagney@redhat.com>

	* LinuxProc.java (getStat): Make package visible.
	(stat): Make private.
	* LinuxHost.java (ProcChanges.update): Use LinuxProc.getStat, not
	LinuxProc.stat.

	* TestLib.java (host): Add, use.
	(setUp()): Initialize the host using resetXXX.
	* Manager.java (resetXXX()): Return the Host.
	* TestGoAndGo.java: Use.
	* TestUnpaused.java: Use.
	* TestTaskTerminateObserver.java: Use.
	* TestTaskObserver.java: Use.
	* TestTaskObserverBlocked.java: Use.
	* TestTaskForkedObserver.java: Use.
	* TestTaskClonedObserver.java: Use.
	* TestSyscallOpen.java: Use.
	* TestSyscall.java: Use.
	* TestSyscallInterrupt.java: Use.
	* TestSyscall2.java: Use.
	* TestStop.java: Use.
	* TestStopAndStop.java: Use.
	* TestStopAndGo.java: Use.
	* TestStep.java: Use.
	* TestRun.java: Use.
	* TestRefresh.java: Use.
	* TestProcGet.java: Use.
	* TestPaused.java: Use.
	* TestModify.java: Use.
	* TestI386Regs.java: Use.
	* TestI386Modify.java: Use.
	* TestHostGet.java: Use.
	* TestGoAndGo.java: Use.
	* TestExec.java: Use.

	* LinuxProc.java (sendrecExe()): Add.
	* TestProcGet.java (testGetExe()): Add.
	* Proc.java (exe, sendrecExe(), getExe()): Add.

2006-01-06  Andrew Cagney  <cagney@redhat.com>

	* LinuxProc.java (sendrecCmdLine): Implement using CmdLineBuilder.

2006-01-05  Andrew Cagney  <cagney@redhat.com>

	* LinuxProc.java (sendrecCmdLine): IMplement stub.
	* Proc.java (getCmdLine()): Add.
	(sendrecCmdLine()): Add, abstract.
	(argv): Add, private.
	* TestLib.java (Child.getArgv()): Add.
	(Child.Child(int)): Delete.
	* TestProcGet.java: Add .testGetCmdLine.

2006-01-04  Stan Cox  <scox@multics.rdu.redhat.com>

	* TestExec.java (testUnattachedSingleExec, testAttachedSingleExec): New.

2005-12-22  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Delete .PidChildXXX.

2005-12-21  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Add .AckProcess and .AckDaemonProcess constructors
	that take a boolean busy parameter to enable use of busy waits.
	* TestUnpaused.java: Use .AckDaemonProcess instead of
	XXX.infThreadLoop.
	* TestGoAndGo.java: Ditto.
	* TestPaused.java: Ditto.
	* TestStop.java: Ditto.
	* TestStopAndGo.java: Ditto.
	* TestStopAndStop.java: Ditto.
	* TestUnpaused.java: Ditto.

	* TestLib.java: Rename .PidChild to .PidChildXXX.
	* TestUnpaused.java: Update.
	* TestStop.java: Update.
	* TestStopAndStop.java: Update.
	* TestStopAndGo.java: Update.
	* TestPaused.java: Update.
	* TestGoAndGo.java: Update.

	* TestExec.java, TestGoAndGo.java, TestHostGet.java,
	TestI386Modify.java, TestI386Regs.java, TestLib.java,
	TestModify.java, TestPaused.java, TestProcGet.java,
	TestRefresh.java, TestRun.java, TestStep.java, TestStop.java,
	TestStopAndGo.java, TestStopAndStop.java, TestSyscall.java,
	TestSyscall2.java, TestSyscallInterrupt.java,
	TestSyscallOpen.java, TestTaskClonedObserver.java,
	TestTaskObserverBlocked.java, TestTasksObserver.java,
	TestUnpaused.java: Clean up assert text messages so that they
	state what is being checked, not the expected value or why.

2005-12-13  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Rename .observableTaskAdded to
	.observableTaskAddedXXX.

	* TestUnpaused.java: Eliminate use of Proc .observableTaskAdded.
	* TestSyscallOpen.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestStop.java: Ditto.
	* TestStopAndStop.java: Ditto.
	* TestStep.java: Ditto.
	* TestPaused.java: Ditto.

	* Proc.java: Restore .observableTaskRemoved, renamed to
	.observableTaskRemovedXXX.  Revert 2005-12-12 change.

2005-12-12  Andrew Cagney  <cagney@redhat.com>

	* TestI386Modify.java: Eliminate use of .observableTaskAdded.
	* TestI386Regs.java: Ditto.
	* TestModify.java: Ditto.

	* TestStopAndGo.java: Eliminate use of .observableTaskAdded.

	* Proc.java: Delete .observableTaskRemoved.

2005-12-04  Sami Wagiaalla  <swagiaal@redhat.com>
	    Andrew Cagney  <cagney@redhat.com>

	* ProcState.java: In .unattached state, handle a request to add a
	ProcObserver.Tasks.
	* TestTasksObserver.java: New file.
	* Proc.java: Add .requestAddTasksObserver
	* ProcObserver.java: New file.

2005-12-04  Andrew Cagney  <cagney@redhat.com>

	* TestGoAndGo.java: Use Host.observableTaskAdded.

	* TestLib.java: In TaskCounter, directly add to Host
	.observableTaskAdded.

	* TestLib.java: In AutoAddTaskObserverBase, directly add to Host
	.observableTaskAdded.
	* Proc.java: Notify the Host of tasks being added and removed.

	* Host.java: Add .observableTaskAdded and .observableTaskRemoved.

2005-11-22  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java: In .running state, handle processRequestUnblock.
	* TestTaskObserverBlocked.java: Add testUnblockRunning.

2005-11-21  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserver.java: Add.
	.testAttachDetachRapidlyCloningMainTask.
	* TestLib.java (AckDaemonProcess(int,String[])): Add.

	* TaskState.java: Handle PerformTrapped.

	* Proc.java (performTaskAttachCompleted(Task,Task)): Add
	* ProcState.java: Handle performTaskAttachCompleted.
	* TaskState.java: In .detaching, when a clone, notify owning
	process of the clone Task.  Replace .initial with .mainState,
	.unattachedState, and .clonedState.  Replace .Stating states with
	.Start states.  Simplify.
	* Task.java: Update.

	* TaskState.java: Delete transition from detaching to
	detachingInSyscall.

	* TestTaskClonedObserver.java: Delete testBlockingTaskCloneObserver.
	* TestTaskForkedObserver.java: Delete testBlockingTaskForkObserver
	* TestTaskObserverBlocked.java: Add .testBlockingFibonacciFork,
	and testBlockingFibonacciClone.

	* TestTaskObserverBlocked.java: New.
	* TestTaskObserver.java: Move .testGetBlockers, .SpawnObserver,
	.CloneObserver, .ForkObserver, .testBlockedForkUnblockChildFirst,
	.testBlockedForkUnblockParentFirst,
	testBlockedCloneUnblockChildFirst,
	testBlockedCloneUnblockParentFirst to TestTaskObserverBlocked.

	* TaskState.java: In .detaching state, handle PerformForked,
	PerformCloned, PerformExeced, PerformSignaled.
	* TestTaskObserverDetach.java: New file.

2005-11-20  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserver.java: Add class .CloneObserver.  Add tests
	.testBlockedForkUnblockChildFirst, and
	.testBlockedForkUnblockParentFirst.

	* TestTaskObserver.java: Add classes .SpawnObserver, and
	.CloneObserver.  Add tests .testBlockedCloneUnblockChildFirst, and
	.testBlockedCloneUnblockParentFirst.
	* TaskObserver.java: Note that Cloned and Forked will block both
	the parent and child.

	* TestLib.java: Add constants childAck, parentAck, addCloneSig,
	delCloneSig, addForkSig, delForkSig, zombieForkSig, execSig to
	AckProcess.  Use.

	* TestLib.java: Add exec method.

	* TaskState.java: Replace state .startRunning with class .Starting
	containing sub-states .waitingForStop and .waitingForUnblock.
	* Task.java: In notifyForked, add blocking observer to fork's
	list.  Similar for notifyCloned.
	* TestTaskForkedObserver.java: Update, also unblock the fork.
	* TestTaskClonedObserver.java: Update, also unblock the clone.

	* TaskState.java: Fix typo's, zombied -> disappeared.

	* Task.java: Refactor single constructor into separate unattached,
	attached clone, and attached main constructors.
	* Proc.java: Re-organize constructor code.  Delete
	sendNewAttachedTask.
	* LinuxTask.java: Ditto.
	* LinuxProc.java: Update.
	* LinuxHost.java: Update.  Explicitly create an attached processes
	first task.

	* LinuxHost.java: Pass the forked process's only task to Task
	.performeForked.
	* TaskObserver.java: Change .Forked.updateForked fork parameter to
	a Task.
	* TaskState.java: Update.
	* Task.java: Update.

2005-11-19  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Delete .Daemon.

	* TestLib.java: Delete .AttachedChild.  Add multi-thread
	constructor to .AttachedAckProcess.
	* TestProcStates.java: Use .AttachedAckProcess.

	* TestLib.java: Delete .DetachedChild.  Add .reap to
	DetachedAckProcess.
	* TestRefresh.java: Use DetachedAckProcess.
	* TestProcGet.java: Ditto.

	* TestLib.java: Merge .CloneDaemon into .Daemon.
	* TestProgGet.java, TestProcStates.java, TestTaskObserver.java:
	Use AckDaemonProcess.

	* TestLib.java: Replace ZombieDaemon with AckProcess, and
	AckDaemonProcess.  Add AckAttachedProcess, and AckDetachedProcess.
	* TestRefresh.java: Update.

2005-11-18  Jeff Johnston  <jjohnstn@redhat.com>

	* TestSyscallInterrupt.java: New test.

2005-11-17  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Replace .Child .setupAckHandler and .waitForAck,
	with .AckHandler class.  Update all calls.

	* TestLib.java: Make functions static to work around gcc bug, see
	frysk-imports/tests/nestedcall/Nest.java.

	* Task.java: Do not print the proc.

	* Observer.java: Replace .added, and .deleted with .addedTo,
	.deletedFrom, and .addedFailed.
	* Observable.java (fail): Add.
	* TaskObservable.java (TaskObservable(Task)): Add consructor.
	* Task.java: Update.
	* TestLib.java: Update.
	* TestTaskObserver.java: Update.

	* TestLib.java: Refactor DaemonChild into Daemon, CloneDaemon, and
	ZombieDaemon.  Delete ZombieChild.
	* frysk/proc/TestProcGet.java: Update.
	* frysk/proc/TestProcStates.java: Update.
	* frysk/proc/TestRefresh.java: Update.
	* frysk/proc/TestTaskObserver.java: Update.

2005-11-17  Jeff Johnston  <jjohnstn@redhat.com>

	* TestSyscall2.java: Re-enable and drop loop count down to
	much lower number to ensure test runs in allotted time.

2005-11-17  Andrew Cagney  <cagney@redhat.com>

	* TestTaskAttachedObserver.java: Delete.  Fold into ...
	* TestTaskObserver.java: Merge in TestTaskAttachedObserver.

2005-11-16  Stan Cox  <scox@redhat.com>

	* Host.java (Host): Add logger.
	(add,remove,removeTasks,get,getProc,requestRefresh,execute)
	(requestRefresh,requestCreateAttachedProc): Add logging.
	* HostState.java (HostState): Add logger.
	(process*): Add logging.
	* LinuxHost.java (LinuxHost): Add logger.
	(sendCreateAttachedProc,PollWaitOnSigChld,waitObserver,forkEvent)
	(exitEvent,execEvent,disappeared,syscallEvent,stopped,terminated):
	Add logging.
	* LinuxProc.java (LinuxProc): Add logger.
	(LinuxProc,sendNewAttachedTask): Add logging.
	* LinuxTask.java (LinuxTask): Add logger.
	(send*): Add logging.
	* Proc.java (Proc): Add logger.
	(execute,add,remove,notify,retain): Add logging.
	* ProcEvent.java (ProcEvent): Add logger.
	(getProc,getProcFromTaskId): Add logging.
	* ProcState.java (ProcState): Add logger.
	(ProcState,isStopped,process*,state): Add logging.
	* Task.java (Task): Add logger.
	(requestStop,request*,execute): Add logging.
	* TaskEvent.java (TaskEvent): Add logger.
	(getTask): Add logging.
	* TaskState.java (TaskState): Add logger.
	(process*): Add logging.

2005-11-11  Jeff Johnston  <jjohnstn@redhat.com>

	* TestSyscallOpen.java: Remove updateSyscallXXX reference.

2005-11-11  Andrew Cagney  <cagney@redhat.com>

	* LinuxX8664.java, LinuxPowerPc.java: Delete.  Re-instate once Isa
	code stable.

2005-11-10  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Delete Child.stopEventLoopOnDestroy.
	* TestStep.java: Replace stopEventLoopOnDestroy with
	StopEventLoopWhenChildProcRemoved.

	* ProcState.java: Delete "stop" variable.  Delete delete states
	.stopped, and .ContinuingAllTasks.

	* TestTaskAttachedObserver.java: Add .testDeletedAttachOtherTask,
	and .testBackToBackAttachDetachOtherTask.
	* ProcState.java (Detaching.state(Proc,Collection): Add.  When
	part way through an attach, only detach attached tasks.

	* TestSyscall2.java: Disable for moment.

	* TestTaskAttachedObserver.java: Add .attachDetachTask,
	.detachExitingTask, .attachDeadTask, .attachDieingTask,
	.attachToAttachedTask, .backToBackAttachAttachTask,
	.backToBackAttachDetachTask, .deletedAttachTask.  Refactor
	existing tests to use.

2005-11-10  Jeff Johnston  <jjohnstn@redhat.com>

	* LinuxHost.java: Revert previous change to Wait.Observer.syscallEvent
	function to remove syscall event type parameter.
	* TestLib.java: Ditto.
	* Task.java (performSyscalled): Revert previous change and remove
	syscallType parameter.
	(notifySyscallXXX): Removed.
	* TaskObserver.java (updateSyscallXXX): Removed.
	(stopping.processPerformSyscalled): New member function.
	(detaching.processPerformSyscalled): Ditto.
	(running.processPerformSyscalled): Change to notify for syscall
	entry and then return runningInSyscall state.
	(runningInSyscall, detachingInSyscall, stoppingInSyscall): New states.
	* TestI386Modify.java: Modify to use updateSyscallEnter () and
	updateSyscallExit () rather than updateSyscallXXX ().
	* TestI386Regs.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestSyscallOpen.java: Ditto.

2005-11-09  Andrew Cagney  <cagney@redhat.com>

	* ProcState.java: Refactor .DetachingAllTasks into Detaching that
	contains .state and .AllTasks.  When attaching handle the deletion
	of an observer.
	* TaskState.java: Add transitions between attaching and detaching
	states.
	* TestTaskAttachedObserver.java: Add .testDeletedAttach,
	.testBackToBackAttachAttachMainTask, and
	.testBackToBackAttachDetachMainTask.

	* ProcState.java: Refactor .AttachingToMainTask, and
	.AttachingToOtherTasks into .Attaching class containing .state,
	.allAttached, .ToMainTask and .ToOtherTasks.

2005-11-08  Andrew Cagney  <cagney@redhat.com>

	* TestTaskAttachedObserver.java: Add testAttachToAttached.

	* TaskState.java: In destroyed state, abandon attempt to add an
	observation.
	* ProcState.java: In unattached state, recover from a missing
	task.
	* Observation.java: Add .fail.
	* TestTaskAttachedObserver.java: Add .FailedObserver,
	.testAttachDieingOtherTask, .testAttachDieingMainTask, and
	.testAttachDeadMainTask.

	* TestTaskAttachedObserver.java: Add .assertTaskGone, use.  For
	testAttachDetachManyTasks, only create 20 tasks.  Rename
	testDetachExitingTask to testDetachExitingMainTask.

	* TestLib.java: Add Child.findTaskUsingRefresh, and .getPid.  Add
	.isChildOf, and isDescendantOf.  Delete .sigKill.
	* TestTaskAttachedObserver.java: Update.
	* TestRefresh.java: Update.

	* TaskObservation.java: New.
	* TaskState.java: Add .processPerformAddObservation.
	* Task.java: Add .performAddObservation.
	* ProcState.java: Use Observation.requestAdd
	* Observation.java: Add abstract method .requestAdd.

	* Task.java: Replace .performZombied with .performDisappeared.
	Update instances of Wait.Observer interface to match changes to
	disappeared method.
	* TestLib.java: Ditto.
	* LinuxTask.java: Ditto.
	* LinuxHost.java: Ditto..

	* TestAttachCloningThreads.java: Delete.

2005-11-07  Jeff Johnston  <jjohnstn@redhat.com>

	* SyscallEventInfo.java (ENTRY, EXIT, UNKNOWN): New constants.
	* Task.java (performSyscalled): Add additional syscallType
	parameter.
	* TaskState.java (processPerformSyscalled): Ditto.
	* TestLib.java: Change Wait.Observer classes to add
	additional parameter to syscallEvent member functions.
	* LinuxHost.java: Add additional parameter to Wait.Observer
	syscallEvent member function.
	* TestSyscall2.java: Lower repetition count to 5000 so
	test doesn't fail due to time limitation.

2005-11-07  Andrew Cagney  <cagney@redhat.com>

	* TestTaskAttachedObserver.java: Add
	.ttestAttachDetachExitingTask.
	* TaskState.java: For "detaching", handle
	.processPerformTerminating.

	* TestTaskAttachedObserver.java: Refactor .attachDetach, adding
	separate .attach and .detach methods that all take a Task[].  Add
	testAttachDetachManyTasks.

	* TestLib.java: For DaemonChild, add a constructor that starts its
	argument as the program.

	* LinuxProc.java: Delete unused .auxv.

	* TestTaskAttachedObserver.java: Add .attachDetach and
	.testAttachDetachOtherTask.

	* Proc.java: Rename .observableAttachedContinue, and
	.observableDetachedContinue to .observableAttached, and
	.observableDetached.
	* ProcState.java: Update.
	* TestProcStates.java: Update.

2005-11-06  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Delete .observableAttachedStop.
	* ProcState.java: Delete reference.

	* ProcState.java: Use Proc.getTasks, use Collection.

	* Task.java: Delete .stopEvent.
	* TaskState.java: Update.

	* TaskEvent.java: Delete .Trapped.
	* TestSyscall.java, TestSyscallOpen.java: Delete
	stoppedTaskEventCount.  Do not monitor Task.stopEvent.

	* TaskEvent.java: Delete .Stopped.
	* TaskState.java: Update.

	* TestStep.java: In StepEventObserver, cast obj to a Task.
	* TaskState.java: Pass the Task, not TaskEvent, to
	Task.stepEvent.notify.

	* Task.java: Make parameter to .TaskEventObservable.notify an
	Object.
	* TestStopAndStop.java (TaskEventObserver): Cast obj to a Task.
	* TaskState.java: Pass Task to .requestedStopEvent.

	* Proc.java: Delete .requestAttachedStop.
	* TestProcStates.java: Delete .requestAttachedStop.
	* ProcState.java: Delete .processRequestAttachedStop, and
	.StoppingAllTasks.

	* TestTaskAttachedObserver.java: Replace
	.testAddObserverToOneMainDetachedTask with
	testAttachDetachMainTask.
	* Observation.java: Add .delete.
	* ProcState.java: In "running" state, handle
	.processPerformDeleteObservation.
	* Observable.java: Notify when an observer is deleted.

	* TaskState.java: Add state "attached".
	* ProcState.java: When unattached, and RequestAddObserver
	transition to attached state.  Delay enabling Observations until
	after the attach has completed.
	* TestTaskAttachedObserver.java: New.

	* TaskState.java: Delete .processRequestAddObserver, and
	.processRequestDeleteObserver.
	* Task.java: Re-implement .requestAddObserver and
	.requestDeleteObserver to pass the request, as an Observation, to
	the Task's Proc.
	* ProcState.java: Add .processPerformAddObservation.
	* Proc.java: Add .observations, .performAddObservation, and
	.performDeleteObservation.
	* Observation.java: New.

2005-11-05  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Replace TaskObservable, and ProcObservable with
	ObservableXXX.
	* Host.java: Replace ProcObservable with ObservableXXX.
	* ProcObservable.java: Delete.
	* TaskObservable.java: Refactor, creating Observable.
	* Observable.java: New.

2005-11-04  Jeff Johnston  <jjohnstn@redhat.com>

	* LinuxIa32.java: Add constructor that sets
	wordSize and byteOrder.
	* LinuxX8664.java: Ditto plus add in register
	and SyscallEventInfo data.

2005-11-04  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Add .getTasks, and .getChildren.  Replace .children
	with private .childPool.
	* TestProcGet.java: Test Proc.getTasks and .getChildren.
	* TestRefresh.java: Update.

2005-11-03  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Refactor constructors.
	* LinuxProc.java: Update.  Delete LinuxProc(Proc,ProcId,boolean).

	* LinuxHost.java (sendCreateAttachedProc): Find and pass this task
	to LinuxProc.
	* TestI386Regs.java: Delete check of the manager's taskPool size.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestSyscallOpen.java: Ditto.
	* TestI386Modify.java: Ditto.
	* TestModify.java: Ditto.

	* LinuxHost.java: Replace .getSelf with .sendrecSelf.
	* Host.java: Make .getSelf a method, add .sendrecSelf.

	* TestLib.java (TaskCounter, ProcCounter): Simplify, add variant
	that only counts descendants.
	* TestExec.java: Update.  Only count child tasks.
	* TestRefresh.java: Update.

	* Proc.java (sendNewAttachedChild(ProcId)): Delete.
	* LinuxProc.java (sendNewAttachedChild(ProcId)): Delete.

	* Task.java (Task(Task,TaskId)): Delete.
	* LinuxTask.java (Task(Task,TaskId)): Delete.
	* LinuxHost.java: Use Task(Proc,TaskId,boolean).
	* LinuxProc.java: Ditto.

	* Task.java: Drop running parameter from constructor.
	* TaskState.java: Delete running parameter from .initial.  Delete
	startStopped state.
	* LinuxTask.java: Update.

	* Proc.java: Delete running parameter from constructor and
	.sendNewAttachedTask, and .sendNewAttachedProc.
	* LinuxProc.java: Update.
	* ProcState.java: Drop running parameter from .initial; delete
	startStopped state.

	* HostState.java: Replace processPerformCreateAttachedProc with
	processRequestCreateAttachedProc.  Drop sendCreateAttachedProc's
	running parameter.
	* Host.java: Fold processCreateAttachedProc into
	requestCreateAttachedProc.
	* LinuxHost.java: Update.

	* Host.java (requestCreateAttachedStoppedProc): Delete.
	* TaskState.java: When notifyAttached has blockers and a trap,
	transition a startRunning task to blockedContinue.
	* TestRun.java: Re-implement testCreateAttachedStoppedProc to use
	TaskObserver.Attached.

	* Host.java (requestCreateAttachedProc): Rename
	requestCreateAttachedContinuedProc.
	* TestExec.java, TestI386Modify.java, TestI386Regs.java,
	TestLib.java, TestModify.java, TestProcGet.java, TestRun.java,
	TestStep.java, TestSyscall.java, TestSyscall2.java,
	TestSyscallOpen.java, TestTaskClonedObserver.java,
	TestTaskForkedObserver.java, TestTaskObserver.java,
	TestTaskTerminateObserver.java: Update.

	* Proc.java (Proc(Task,ProcId): New constructor.
	* LinuxProc.java (Proc(Task,ProcId): Ditto.
	* Task.java (Task(Task,TaskId)): New constructor.
	* LinuxTask.java (Task(Task,TaskId)): Ditto.
	* LinuxHost.java: Use new LinuxProc and LinuxTask constructors.

	* Proc.java (sendAttach(boolean)): Delete.
	* LinuxProc.java (sendAttach(boolean)): Ditto.

	* Proc.java: Reduce constructors to just one.
	* Task.java: Reduce constructors to just one.
	* LinuxTask.java: Update.
	* LinuxProc.java: Update.

2005-11-02  Andrew Cagney  <cagney@redhat.com>

	* LinuxProc.java: Update, add .buildDimensions to BuildAuxv.

2005-11-01  Jeff Johnston  <jjohnstn@redhat.com>

	* TestGoAndGo.java: Wrap internal counters, timers, etc.. in
	a class so initialization occurs each time test is run.
	* TestModify.java: Ditto.
	* TestPaused.java: Ditto.
	* TestStep.java: Ditto.
	* TestStop.java: Ditto.
	* TestStopAndGo.java: Ditto.
	* TestStopAndStop.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestUnpaused.java: Ditto.
	* TestSyscallOpen.java: Ditto.  Also use SyscallNum to reference
	open syscall number.
	* TestI386Modify.java: Ditto, plus add check for isa and abort
	test if not ia32.
	* TestI386Regs.java: Ditto.

2005-10-31  Andrew Cagney  <cagney@redhat.com>

	* TestProcGet.java: For ./prog/print/auxv, set STDERR to
	/dev/null.
	* LinuxProc.java: Update BuildAuxv, add bigEndian parameter to
	buildBuffer.

2005-10-31  Phil Muldoon  <pmuldoon@redhat.com>

	* Host.java (getName): Added getName function.

	* Task.java (getName): Added getName function.

2005-10-31  Andrew Cagney  <cagney@redhat.com>

	* LinuxProc.java: Update BuildAuxv, replace buildDimensions with
	buildBuffer.

	* Isa.java: Add .getSyscallEventInfo.
	* LinuxIa32.java: Implement getSyscallEventInfo.
	* LinuxPowerPc.java: Delete unimplemented .SyscallEventInfo.
	* LinuxX8664.java: Ditto.
	* TestSyscallOpen.java: Update.
	* TestI386Regs.java: Update.
	* TestI386Modify.java: Update.

	* LinuxIa32.java: Fold inner Isa class into main class.
	* LinuxX8664.java: Ditto.
	* LinuxPowerPc.java: Ditto.
	* TestI386Regs.java, TestI386Modify.java: Update.

2005-10-30  Andrew Cagney  <cagney@redhat.com>

	* LinuxIa32.java: Delete class .Task.
	* LinuxTask.java: Implement .sendrecIsa.  Add method setupMaps,
	use in constructors.
	* Task.java: Add abstract method .sendrecIsa.  Make .getIsa final.
	* LinuxProc.java, LinuxHost.java: Create LinuxTask, not
	LinixIa32.Task.

	* LinixIa32.java, LinuxPowerPc.java, LinuxX8664.java: Rename
	I386Linux.java, PowerPcLinux.java, X8664Linux.java:
	* LinuxHost.java: Update.
	* LinuxProc.java: Update.
	* TestI386Modify.java: Update.
	* TestI386Regs.java: Update.
	* TestSyscallOpen.java: Update.

	* TestSyscallOpen.java: Simplify, use SyscallEventInfo, not
	I386Linux .SyscallEventInfo.
	* TestI386Regs.java, TestI386Modify.java: Ditto.

	* LinuxHost.java: Update to track frys.sys.proc changes,
	AuxvBuilder and IdBuilder replacing ScanDir and
	AuxiliaryVectorBuilder.
	* LinuxProc.java: Ditto.

	* TestProcGet.java: Fix typo, auxv.val not auxv.type.
	* Proc.java: Add .sendrecAuxv.  Implement .getAuxv locally.
	* LinuxProc.java: Replace .getAuxv with .sendrecAuxv.  Use
	frysk.sys.proc.AuxiliaryVectorBuilder to construct the auxv.
	* Auxv.java: Simplify.

	* TestLib.java: Fix tipo, TaskObserverBase, not TaskObserverBaseX.
	* TestProcGet.java: Reimplement CaptureAuxv by extending TestLib
	.AutoAddTaskObserverBase.
	* TestUnpaused.java: For TaskObserver's extend TaskObserverBase.
	* TestSyscallOpen.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestStep.java: Ditto.
	* TestModify.java: Ditto.
	* TestI386Regs.java: Ditto.
	* TestI386Modify.java: Ditto.

	* TestLib.java: Split .TaskObserverBase, creating
	.AutoAddTaskObserverBase sub-class.  Use AutoAddTaskObserverBase
	throughout.
	* TestUnpaused.java, TestTaskTerminateObserver.java,
	TestTaskObserver.java, TestTaskForkedObserver.java,
	TestTaskClonedObserver.java, TestStop.java, TestStopAndStop.java,
	TestStopAndGo.java, TestStep.java, TestPaused.java,
	TestGoAndGo.java: Ditto.

	* TestLib.java: Split out .TaskSet from .TaskObserverBase.
	* TestTaskObserver.java, TestTaskForkedObserver.java,
	TestTaskClonedObserver.java: Update, add explict TaskSet.

	* TestUnpaused.java, TestStep.java, TestModify.java,
	TestI386Regs.java, TestI386Modify.java: Replace TaskEvent
	.Signaled, with TaskObserver .Signaled.
	* TaskObserver.java: Fix typo, rename .Signaled updateTerminated
	to .updateSignaled.
	* Task.java: Add .signaledObservers, .notifySignaled,
	.requestDeleteSignaledObserver, .requestAddSignaledObserver.
	* TaskState.java: Add class .BlockedSignal.  Rename .blocked to
	.blockedContinue.  Handle .processRequestAddObserver in .unpaused
	state.
	* TaskEvent.java: Delete .Signaled.

	* TestTaskObserver.java: Add .testGetBlocked.
	* TestLib.java: Add method .getTasks to TaskObserverBase.
	* Task.java: Add .getBlockers.

2005-10-26  Andrew Cagney  <cagney@redhat.com>

	* TestTaskObserver.java: New.
	* TaskState.java: Handle .processRequestAddObserver in "running"
	state.

	* TaskEvent.java: Delete .Terminated.
	* TaskObservable.java: Call TaskObserver .add from here.
	* TaskState.java: Allow processRequestAddObserver in .unattached
	state.
	* TestPaused.java: Make TaskDestroyedObserver an extension of
	TaskObserverBase, implementing TaskObserver.Terminated.
	* TestUnpaused.java: Ditto.
	* TestStop.java: Ditto.
	* TestStopAndStop.java: Ditto.
	* TestStopAndGo.java: Ditto.
	* TestGoAndGo.java: Ditto.
	* TestStep.java: Ditto.

2005-10-26  Jeff Johnston  <jjohnstn@redhat.com>

	* TestModify.java: Fix comment.  Also fix modification code to
	index by 4 when writing ints as opposed to using word size which
	may vary from platform to platform.

2005-10-26  Andrew Cagney  <cagney@redhat.com>

	* TaskEvent.java: Delete TaskEvent .Execed, .Exiting, .Exited, and
	.Zombied.

	* Task.java: Delete .syscallEvent.  Add .notifySyscallXXX.
	* TaskEvent.java: Delete .Syscall.
	* TaskObserver.java: Add Syscall .updateSyscallXXX.
	* TestI386Regs.java: Add .updateSyscallXXX, .updateSyscallEnter,
	.updateSyscallExit, .added, and .deleted, to .TaskEventObserver.
	* TestI386Modify.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscallOpen.java: Ditto.
	* TaskState.java: Replace Task .syscallEvent with
	.notifySyscallXXX.

	* Task.java: Add .notifySyscall, .requestAddSyscallObserver,
	.requestDeleteSyscallObserver, and .syscallObservers.
	* TaskObserver.java: Simplify .Syscall interface.

2005-10-25  Andrew Cagney  <cagney@redhat.com>

	* TestTaskTerminateObserver.java: Enable all tests.

	* TaskObservable.java: New file.
	* TestTaskTerminateObserver.java, TestTaskForkedObserver.java,
	TestTaskClonedObserver.java, TestProcGet.java, TestModify.java:
	Update.
	* TestLib.java: Make .TaskObserverBase abstract adding .updateTask
	method; have it register itself as a task-added observer.  Delete
	AddTaskObserver.
	* TaskState.java: Update .processRequestAddObserver, and
	.processRequestDeleteObserver to take a TaskObservable.
	* Task.java: Add .clonedObservers, .requestAddClonedObserver,
	requestDeleteClonedObserver, .attachedObservers,
	.requestAddAttachedObserver, .requestDeleteAttachedObserver,
	.forkedObservers, .requestAddForkedObserver,
	.requestDeleteForkedObserver, .terminatedObservers,
	.requestAddTerminatedObserver, .requestDeleteTerminatedObserver,
	.terminatingObservers, .requestAddTerminatingObserver,
	.requestDeleteTerminatingObserver, .execedObservers,
	.requestAddExecedObserver, .requestDeleteExecedObserver.  Make
	.requestAddObserver, and .requestDeleteObserver private.

2005-10-24  Andrew Cagney  <cagney@redhat.com>

	* TestTaskTerminateObserver.java: New.
	* TestExiting.java: Delete.
	* TestTerminated.java: Delete.

	* Action.java: New.  * TaskObserver.java: Change doc so that
	observers return Action.BLOCK to to block.
	* Task.java: Update .notifyCloned, .notifyAttached, .notifyForked,
	.notifyTerminated, .notifyTerminating, .notifyExeced; have them
	return the block count.
	* TestTerminated.java, TestTaskForkedObserver.java,
	TestTaskClonedObserver.java, TestProcGet.java, TestModify.java,
	TestLib.java, TestExiting.java, TaskState.java: Update.

2005-10-23  Andrew Cagney  <cagney@redhat.com>

	* Task.java: Fold in TaskEventObservable.
	* TaskEventObservable.java: Delete file.

	* TestLib.java: Use TaskObserver .Execed.
	* Task.java: Add .notifyExeced.
	* TaskState.java: Replace Proc ..taskExeced with Task
	.notifyExeced.
	* Proc.java: Delete .taskExeced.

	* Proc.java: Delete .taskExiting.
	* Task.java: Add .notifyTerminating.
	* TestExiting.java: Use TaskObserver .Terminating.
	* TaskState.java: Replace Proc .taskExiting, with Task
	.notifyTerminating.

	* Proc.java: Delete .taskDestroyed.
	* TaskState.java: Replace Proc .taskDestroyed, with Task
	.notifyTerminated.
	* Task.java: Add .notifyTerminated.
	* TestTerminated.java, TestModify.java, TestExiting.java: Use
	TaskObserver .Terminated.

	* TaskState.java: When fork, call Task .notifyForked.
	* Task.java: Add .notifyForked.
	* TestTaskForkedObserver.java: New.
	* TestFork.java: Delete.

	* TestLib.java: Add .StopEventLoopWhenChildProcRemoved, replaces
	.addStopEventLoopOnChildProcRemovedObserver.
	* TestTerminated.java: Update.
	* TestTaskClonedObserver.java: Update.
	* TestRun.java: Update.
	* TestProcGet.java: Update.
	* TestFork.java: Update.
	* TestExiting.java: Update.
	* TestExec.java: Update.

	* TestTaskClonedObserver.java: Use TestLib's .AddTaskObserver, and
	TaskObserverBase.
	* TestLib.java: Add method .isDescendantOfMine.  Add classes
	AddTaskObserver, and TaskObserverBase.
	(setUp): Register any descendant process.

	* TaskState.java: Handle .processPerformTerminating in
	startRunning, and zombied states.  Do not pass the terminating
	exit status to Task .sendContinue.
	* LinuxTask.java: Always enable exit tracing.
	* Task.java: Delete .traceExit.

	* Task.java: Merge .performExited into .performTerminated.
	Replace .performExiting into .performTerminating.
	* LinuxHost.java: Update.
	* TaskState.java: Replace .processPerformExiting with
	.processPerformTerminating.  Merge .processPerformExited into
	.processPerformTerminated.

	* TestLib.java, LinuxHost.java: Update Wait .Observer objects so
	that .eventExit has additional signal, and coreDumped parameters,
	and .exited is merged into .terminated.

	* TaskObserver.java: Replace .Exiting with .Terminating; Merge
	.Exited into .Terminated.

2005-10-22  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Delete .taskDiscovered.
	* TaskObservable.java: Delete, merged into Proc.java.
	* TaskObserver.java: Add .Attached.
	* TaskState.java: Replace Proc .taskDiscovered, with Task
	.notifyAttached.
	* Task.java: Update; add .notifyAttached.

	* Observer.java: New file.
	* TaskObserver.java: Extend Observer.

	* Task.java: Delete .traceFork.
	* TestLib.java: Update.
	* LinuxTask.java: Assume fork tracing.

	* TestTaskClonedObserver.java: Rename TestClone.java.

	* TaskObserver.java: Update names, .Step to .Instruction,
	.Breakpoint to .Code.

2005-10-21  Andrew Cagney  <cagney@redhat.com>

	* TaskObserver.java: Add .Forked, .Execed, .Exiting, .Exited,
	.Terminated, .Signaled, .Syscall, .Step, and .Breakpoint.

	* TestClone.java: Replace .testClone with .testTaskCloneObserver,
	and .testBlockingTaskClonedObserver.
	* TaskState.java: Add new state .blocked.  Add methods
	.processRequestUnblocked, .processRequestAddObserver, and
	.processRequestDeleteObserver.
	* Task.java: Add methods .requestUnblock, .requestAddObserver,
	.requestDeleteObserver, and .notifyCloned.  Add local fields
	.observers, and .blockers.
	* TaskObserver.java: New file.

2005-10-18  Jeff Johnston  <jjohnstn@redhat.com>

	* TestModify.java: New platform-independent test that
	verifies memory modification.

2005-10-11  Andrew Cagney  <cagney@redhat.com>

	* LinuxTask.java: Use .performZombied.
	* TaskState.java: Handle .performZombied, .performSyscalled,
	.performExited, .performTerminated, and .performExeced, instead of
	TaskEvent .Zombied, .Syscall, .Terminated, .Exited, and .Execed.
	* Task.java: Add .performZombied, .performSyscalled,
	.performExited, .performTerminated, and .performExeced.
	* LinuxHost.java: Use Task .performZombied, .performSyscalled,
	.performExited, .performTerminated, and .performExeced.
	* TaskEvent.java: Simplify .Zombied, .Syscall, .Exited,
	.Terminated, and .Execed.

	* TaskState.java: Handle .performExiting, instead of TaskEvent
	.Exiting.
	* TaskEvent.java: Simplify .Exiting.
	* Task.java: Add .performExiting.
	* LinuxHost.java: Use Task .performExiting.

	* TaskState.java: Handle .processPerformedCloned,
	.processPerformedTrapped, and .processPerformedSignaled, instead
	of TaskEvent .Stopped, .Trapped, and .Signaled.
	* Task.java: Add .performSignaled, .performStopped, and
	.performTrapped.
	* LinuxHost.java: Use Task .performStopped, .performTrapped, and
	.performSignaled.
	* TaskEvent.java: Simplify .Stopped, .Trapped and .Signaled.

	* TaskState.java: Handle processPerformForked, instead of
	TaskEvent .Forked.
	* ProcState.java: Delete code handling ProcEvent.TaskForked.
	* ProcEvent.java: Delete TaskForked.
	* TaskEvent.java: Delete Forked.
	* Task.java: Add performForked.
	* LinuxHost.java: Use Task .performForked.

	* TaskState.java: Handle processPerformCloned, instead of
	TaskEvent.Cloned.
	* TaskEvent.java: Delete Cloned.
	* Task.java: Add performCloned.
	* ProcState.java: Delete code handling TaskCloned.
	* ProcEvent.java: Delete TaskCloned.
	* LinuxHost.java: Use Task .performCloned.

2005-10-09  Andrew Cagney  <cagney@redhat.com>

	* LinuxProc.java, LinuxHost.java: Use frysk.sys.proc.ScanDir.

	* LinuxHost.java, LinuxProc.java: Use frysk.sys.proc.Stat.  Better
	handle a lost /proc/PID/stat file.

2005-10-07  Andrew Cagney  <cagney@redhat.com>

	* Host.java, LinuxHost.java, LinuxTask.java, Proc.java, Task.java:
	Update, EventLoop .appendEvent renamed to .add.

	* TestLib.java, LinuxHost.java: Update, EventLoop .addHandler
	renamed to .add.

	* TestAttachCloningThreads.java, TestExiting.java,
	TestGoAndGo.java, TestPaused.java, TestStep.java, TestStop.java,
	TestStopAndGo.java, TestStopAndStop.java, TestTerminated.java,
	TestUnpaused.java: Update, EventTimer .addTimerEvent renamed to
	.add.

2005-10-06  Andrew Cagney  <cagney@redhat.com>

	* TestRun.java: Rename testRun to testCreateAttachedContinuedProc.
	Add testCreateAttachedStoppedProc.
	* Host.java: Add requestCreateAttachedStoppedProc.
	* ProcState.java, TaskState.java: Simplify startRunning state.
	Fix startStopped state.

	* Proc.java: Rename newAttachedTask to sendNewAttachedTask.
	* LinuxProc.java, ProcState.java: Update.

	* TestLib.java: In setUp, add an observer that registers any child
	process.

	* TestLib.java: Change children to a set.  Replace
	StopEventLoopOnProcDestroy with
	addStopEventLoopOnChildProcRemovedObserver.
	* TestTerminated.java, TestRun.java, TestProcGet.java,
	TestFork.java, TestExiting.java, TestExec.java, TestClone.java:
	Update.

	* Task.java: Replace getPid with getTid.  Make getTid, and
	getTaskId final.
	* LinuxTask.java: Delete "pid", "addMemoryAndRegisters", and
	"ptraceAttached".  Use getTid.
	* I386Linux.java, ProcState.java, LinuxProc.java: Update.

	* Host.java, HostState.java, I386Linux.java, LinuxHost.java,
	LinuxProc.java, LinuxTask.java, Proc.java, ProcState.java,
	Task.java, TaskState.java: Replace "runnable" with "attached" and
	"running", pass through out.  Replace newTask with
	newAttachedTask.  Further consolidate Task, Proc, and Host
	constructors.  Add startRunning and startStopped to Proc states.

	* TaskState.java, ProcState.java, HostState.java: Add method
	initial, make all state variables and classes private.
	* TestPaused.java, TestRefresh.java, TestStop.java,
	TestStopAndStop.java, TestUnpaused.java: Use .getStateString when
	comparing states.
	* Task.java, Proc.java, Host.java: Use State .initial.  Add method
	getStateString.
	* State.java: Change toString to return the simple name.

2005-10-05  Andrew Cagney  <cagney@redhat.com>

	* LinuxHost.java: In sendCreateAttachedProc, set the sub-processes
	parent.

	* TestLib.java: Add method isChildOfMine.  Use.
	* TestTerminated.java, TestSyscallOpen.java, TestSyscall.java,
	TestSyscall2.java, TestI386Regs.java, TestI386Modify.java,
	TestStep.java, TestExiting.java: Use.

	* Host.java, Task.java, Proc.java: Include the super's name in
	toString.

	* Proc.java, LinuxProc.java: Rationalize constructor methods.
	* LinuxHost.java: Update.

	* TestLib.java: For StopEventLoopOnProcDestroy, check that the
	proc is a child of frysk using getSelf.
	* TestExiting.java, TestTerminated.java: Ditto for
	ProcCreatedObserver.

	* TestLib.java: For ProcCounter, replace numberAdded and
	numberRemoved with getAdjustNumberAdded and
	getAdustedNumberRemoved.  Add getAdjustedHostProcPoolSize.
	* TestRun.java, TestFork.java: Update.

2005-10-05  Phil Muldoon  <pmuldoon@redhat.com>

	* TaskEvent.java: Change class scope to public.

2005-10-04  Andrew Cagney  <cagney@redhat.com>

	* TestHostGet.java: New.
	* Host.java: Add getSelf.
	* LinuxHost.java: Implement getSelf.  Refactor updateProc into
	ProcChanges.

	* LinuxHost.java, Host.java: Delete sendAttachProc.

	* Host.java: Delete requestAttachProc.
	* HostState.java: Update.
	* TestUnpaused.java, TestStop.java, TestStopAndStop.java,
	TestStopAndGo.java, TestPaused.java, TestGoAndGo.java,
	TestAttachCloningThreads.java: Replace Host .requestAttachProc,
	with Proc .requestAttach.

	* TestAttachCloningThreads.java, TestGoAndGo.java,
	TestPaused.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java, TestUnpaused.java: Use TestLib .PidChild.
	Parameterize ProcCreatedObserver with the process pid.  Delete
	registerChild call, handled by PidChild.

	* TestStep.java: Move PidChild call to ProcCreatedObserver, delete
	global "pid".
	* TestLib.java: In class Child, always register the pid.

	* TestStep.java, TestAttachCloningThreads.java: Replace
	StopEventLoopOnProcDestroy with PidChild and Child
	.stopEventLoopOnDestroy.
	* TestLib.java: Add class PidChild.  Add method
	stopEventLoopOnDestroy to Child class.

	* Host.java, HostState.java: Add "Perform" prefix to
	PerformCreateAttachedProc event.

	* Host.java: Replace sendCreateProc with sendCreateAttachedProc.
	Replace requestCreateProc with requestCreateAttachedContinuedProc,
	and the private performCreateAttachedProc.
	* TestTerminated.java, TestSyscallOpen.java, TestSyscall.java,
	TestSyscall2.java, TestStep.java, TestRun.java, TestProcGet.java,
	TestLib.java, TestI386Regs.java, TestI386Modify.java,
	TestFork.java, TestExiting.java, TestExec.java, TestClone.java,
	LinuxHost.java, HostState.java: Update.

	* Host.java: Create nested HostEvents.
	* HostState.java: Replace existing "process" methods with
	"processRequestRefresh", "processRequestCreateProc", and
	"processRequestAttachProc".
	* HostEvent.java: Delete RequestRefresh, RequestCreateProc, and
	RequestAttachProc.

2005-10-03  Andrew Cagney  <cagney@redhat.com>

	* TestTerminated.java, TestSyscallOpen.java, TestSyscall.java,
	TestSyscall2.java, TestStep.java, TestStopAndStop.java,
	TestStopAndGo.java, TestGoAndGo.java, TestI386Regs.java,
	TestI386Modify.java, TestAttachCloningThreads.java,
	TestExiting.java, TestPaused.java, TestStop.java,
	TestUnpaused.java: Replace Proc .taskDiscovered with Proc
	.observableTaskAdded.

	* TaskState.java: Move observableTaskAdded from here ...
	* Task.java (Task): ... and from here ...
	* Proc.java (add (Task)): .. to here.

	* TestStep.java: Inline call to stopAllTasks.
	* Proc.java: Delete startAllTasks, and stopAllTasks.

	* LinuxHost.java: Delete unused local "searchId".
	* Syscall.java: Delete unused local "index".
	* TestExec.java: Delete unused local "procCounter".
	* TestI386Modify.java, TestI386Regs.java: Delete unused local
	"ste", "ch", "arg1", "arg2", and "index".
	* TestLib.java: Delete unused locals "proc", and "ignoreWaits".
	* TestGoAndGo.java, TestPaused.java, TestStep.java, TestStop.java,
	TestStopAndGo.java, TestUnpaused.java: Delete unused local "e".
	* TestSyscall.java: Delete unused local "ste".
	* TestSyscallOpen.java: Delete unused local "ste", "syscall", "ch",
	"arg1", "arg2", and "index".

2005-09-30  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Delete stopObserver.
	* ProcEvent.java, ProcState.java: Delete AllStopped.

	* ProcState.java: Delete method "stop", and state "stopping".
	* Proc.java: Delete "stop", and allStopped.
	* TestStep.java: Replace call to Proc .stop with Proc
	.stopAllTasks.
	* TestUnpaused.java: Delete AllStoppedObserver.

2005-09-29  Andrew Cagney  <cagney@redhat.com>

	* TestProcStates.java: Add
	testMultiTaskAttachedContinueToAttachedContinue, and
	testMultiTaskAttachedStopToAttachedStop.
	* ProcState.java: When stopped, handle processRequestAttachedStop;
	and when running, handle processRequestAttachedContinue.

	* TestProcStates.java: Refactor.  Add
	testSingleTaskAttachedStopToDetachedContinue, and
	testMultiTaskAttachedStopToDetachedContinue.
	* ProcState.java: Handle processRequestDetachedContinue when in
	stopped state.
	* TaskState.java: Handle processPerformDetach when in stopped
	state.
	* TestLib.java: Add RequestEventLoopStopObserver.

	* Proc.java: Delete method "go".
	* ProcState.java: Delete code handling "go".

	* TestProcStopAndGo2.java, TestProcStopAndStop.java,
	TestProcStopAndGo.java, TestProcStop.java: Delete, replaced by
	TestProcStates.java.
	* TestProcStates.java: Add notes listing more tests.

	* ProcState.java: Handle requestAttachedStop.
	* TestProcStates.java: Add
	testSingleTaskDetachedContinueToAttachedStop, and
	testMultiTaskDetachedContinueToAttachedStop.

2005-09-28  Andrew Cagney  <cagney@redhat.com>

	* TestPaused.java, TestUnpaused.java: Eliminate call to "Proc
	.detach".
	* TestLib.java: Detach all processes.
	* LinuxProc.java, Proc.java: Delete "detach".

	* TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndStop.java, TestProcStopAndGo2.java: Eliminate call
	to "Proc .detach".

	* TestGoAndGo.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java: Eliminate call to "Proc .detach".

	* TestLib.java: Add AttachedChild constructor for creating a
	busy-loop process.

	* Proc.java: In "toString", print the current "state".

	* TaskState.java: Handle processPerformStop, and
	processPerformContinue, add state performingStop.
	* Task.java: Add performStop, and performContinue.
	* ProcState.java: Handle processPerformTaskStopCompleted, and
	processPerformTaskContinueCompleted.  Add states StoppingAllTasks,
	and ContinuingAllTasks.
	* Proc.java: Add performTaskStopCompleted,
	performTaskContinueCompleted, and observableAttachedStop.
	* TestProcStates.java: Add
	testSingleTaskAttachedContinueAndAttachedStop, and
	testMultiTaskAttachedContinueAndAttacheStop.

	* Proc.java: Replace requestRemoval, with performRemoval.
	* ProcState.java, LinuxHost.java: Update.

	* Proc.java: Delete TaskForcedStopObserver.

	* Proc.java: Make detach package local.

	* Task.java: Add performAttach, performDetach, and performRemoval.
	* Proc.java: Add performTaskAttachCompleted, and
	performTaskDetachCompleted.
	* ProcEvent.java: Delete TaskAttached, and TaskDetached.
	* TaskState.java, ProcState.java, LinuxProc.java: Update.

2005-09-27  Andrew Cagney  <cagney@redhat.com>

	* TestProcStates.java: Add tests
	testOneTaskAttachedContinueToDetachedContinue, and
	testMultiTaskAttachedContinueToDetachedContinue.
	* TestLib.java: Add class AttachedChild.
	* TaskState.java: Add state "detaching"; handle
	processRequestDetach.
	* Task.java: Add "sendDetach", and "requestDetach".
	* ProcState.java: Add state DetachingAllTasks; handle
	ProcEvent.TaskDetached, and processRequestDetachedContinue.
	* ProcEvent.java: Add "TaskDetached".
	* Proc.java: Add "observableDetachedContinue".
	* LinuxTask.java: Implement "sendDetach".

	* HostEvent.java, HostState.java, Isa.java, LinuxHost.java,
	LinuxProc.java, LinuxTask.java, Proc.java, TestClone.java,
	TestExec.java, TestExiting.java, TestFork.java, TestGoAndGo.java,
	TestI386Modify.java, TestI386Regs.java, TestPaused.java,
	TestProcGet.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestRun.java,
	TestStep.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java, TestSyscall.java, TestSyscall2.java,
	TestSyscallOpen.java, TestTerminated.java, TestUnpaused.java: More
	comment tweaks.

	* Manager.java: Delete procRemoved.
	* Host.java, TestI386Modify.java, TestI386Regs.java, TestLib.java,
	TestSyscall.java, TestSyscall2.java, TestSyscallOpen.java: Instead
	of Manager .procRemoved, use Host .observableProcRemoved.

	* Manager.java: Delete procDiscovered.
	* Host.java, TestAttachCloningThreads.java, TestExiting.java,
	TestGoAndGo.java, TestI386Modify.java, TestI386Regs.java,
	TestPaused.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestStep.java,
	TestStop.java, TestStopAndGo.java, TestStopAndStop.java,
	TestSyscall.java, TestSyscall2.java, TestSyscallOpen.java,
	TestTerminated.java, TestUnpaused.java: Instead of Manager
	.procDiscovered, use Host .observableProcAdded.

	* Proc.java: Rename taskAdded to observableTaskAdded, and
	taskRemoved to observableTaskRemoved.
	* Task.java, TaskState.java, TestGoAndGo.java, TestLib.java,
	TestPaused.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestStep.java,
	TestStop.java, TestStopAndGo.java, TestStopAndStop.java,
	TestUnpaused.java: Update.

	* TestAttachThreads.java, TestAttach.java: Delete, replaced by
	TestProcStates.java.

	* TaskObservable.java: New, moved from Proc.java.
	* ProcObservable.java: New, moved from Manager.java.
	* Proc.java: Update.	
	* TestLib.java: Update.
	* Manager.java: Update.
	* TestProcGet.java: Update.
	* TestRefresh.java: Update.
	* Host.java: Rename procAdded and procRemoved to
	observableProcAdded and observableProcRemoved.

	* Proc.java: Add observableAttachedContinue.
	* ProcState.java: Notify observableAttachedContinue.
	* TestProcStates.java: New file.

2005-09-26  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Replace Child.findProc with
	Child.findProcUsingRefresh.
	* TestRefresh.java, TestProcGet.java: Update.

2005-09-23  Jeff Johnston  <jjohnstn@redhat.com>

	* TestI386Modify.java: Reenabled now that poke logic has
	been updated and test works.

2005-09-23  Andrew Cagney  <cagney@redhat.com>

	* State.java: Add String parameter to "unhandled" method.
	* TaskState.java, ProcState.java: Use.

2005-09-21  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java (tearDown): Simplify reap / detach code.

	* TestI386Modify.java: Disable for moment.

2005-09-20  Jeff Johnston  <jjohnstn@redhat.com>

	* TestLib.java (ExitWaitObserver): New class to wait for exit-type
	events.
	(tearDown): Fix kill / waiting logic to prevent infinite waits.
	* TestExiting.java: Register the test pid for tear down purposes.
	* TestI386Regs.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestSyscallOpen.java: Ditto.
	* TestTerminated.java: Ditto.
	* TestI386Modify.java: Ditto.  As well, uncomment out the test as
	the new TestLib tearDown logic can now handle this.

2005-09-19  Andrew Cagney  <cagney@redhat.com>

	* Auxv.java, I386Linux.java, Isa.java, LinuxProc.java,
	LinuxTask.java, Register.java, Syscall.java, Task.java,
	TestProcGet.java, TestSyscallOpen.java: Import inua instead of
	util.

2005-09-18  Andrew Cagney  <cagney@redhat.com>

	* package.html: Add more detail.
	* doc-files/task-tree.fig: New file.
	* doc-files/proc-tree.fig: Simplify.

2005-09-16  Andrew Cagney  <cagney@redhat.com>

	* doc-files/proc-tree.fig, doc-files/proc-state.fig: New files.
	* package.html: New file.

2005-09-13  Andrew Cagney  <cagney@redhat.com>

	* I386Linux.java, Isa.java, Manager.java, Proc.java,
	ProcEventObservable.java, Register.java, Task.java,
	TaskEventObservable.java, TestAttach.java,
	TestAttachCloningThreads.java, TestAttachThreads.java,
	TestExiting.java, TestGoAndGo.java, TestI386Modify.java,
	TestI386Regs.java, TestPaused.java, TestProcStop.java,
	TestProcStopAndGo.java, TestProcStopAndGo2.java,
	TestProcStopAndStop.java, TestStep.java, TestStop.java,
	TestStopAndGo.java, TestStopAndStop.java, TestSyscall.java,
	TestSyscall2.java, TestSyscallOpen.java, TestTerminated.java,
	TestUnpaused.java: Replace util.eio.* and java.util.* with
	explicit imports.

2005-09-10  Andrew Cagney  <cagney@redhat.com>

	* Proc.java: Delete stray semicolons.

2005-09-09  Andrew Cagney  <cagney@redhat.com>

	* Move com/redhat/fedora/frysk/proc/ to frysk/proc/.

2005-09-07  Andrew Cagney  <cagney@redhat.com>

	* Proc.java, ProcEvent.java, Task.java, TaskEvent.java: Simplify,
	exploit nested classes ability to access containg classes
	variables.

	* Host.java, Manager.java: Move taskPool to Host.
	* Proc.java, ProcEvent.java, ProcState.java, Task.java,
	TaskEvent.java, TestAttach.java, TestAttachCloningThreads.java,
	TestAttachThreads.java, TestExiting.java, TestGoAndGo.java,
	TestI386Regs.java, TestPaused.java, TestProcStop.java,
	TestProcStopAndGo.java, TestProcStopAndGo2.java,
	TestProcStopAndStop.java, TestRun.java, TestStop.java,
	TestStopAndGo.java, TestStopAndStop.java, TestSyscall.java,
	TestSyscall2.java, TestSyscallOpen.java, TestTerminated.java:
	Update.

2005-09-06  Andrew Cagney  <cagney@redhat.com>

	* Proc.java, ProcState.java, Task.java, TaskEvent.java,
	TaskState.java, TestGoAndGo.java, TestStep.java,
	TestStopAndGo.java, TestUnpaused.java: Replace request events with
	anonymous objects.

	* TaskState.java: Add attaching state; handle RequestAttach.
	* ProcState.java: Add states AttachingToMainTask, and
	AttachingToOtherTasks; handle requestAttachingContinue.
	* LinuxTask.java, Task.java: Add sendAttach.

2005-09-06  Andrew Cagney  <cagney@redhat.com>

	* HostState.java, LinuxHost.java, Proc.java, ProcEvent.java,
	ProcState.java, State.java: Replace request events with anonymous
	objects.

	* ProcState.java, TaskState.java, LinuxProc.java, LinuxHost.java:
	Instead of the state machine, make requestRefresh responsible for
	removing the child.

2005-09-05  Andrew Cagney  <cagney@redhat.com>

	* Task.java: Delete traceExec.
	* LinuxTask.java, TestLib.java: Update.

	* LinuxTask.java: Always enable traceClone.
	* Task.java: Delete traceClone.
	* TestLib.java, TestAttachCloningThreads.java, TestStep.java:
	Update.

	* ProcState.java, ProcEvent.java: Add and handle TaskAttached.

	* TaskState.java, TaskEvent.java, TaskState.java: Add and handle
	RequestAttach.

2005-09-01  Andrew Cagney  <cagney@redhat.com>

	* PsEvent.java, PsListener.java, PsObserver.java: Delete.

	* TestTerminated.java, TestSyscallOpen.java, TestSyscall.java,
	TestSyscall2.java, TestStep.java, TestI386Regs.java,
	TestI386Modify.java, TestExiting.java: Remove try / catch wrapping
	Host.requestCreateProc.

	* TestLib.java: Add methods assertRunUntilStop and runPending.

	* TestAttach.java, TestAttachCloningThreads.java,
	TestAttachThreads.java, TestClone.java, TestExec.java,
	TestExiting.java, TestFork.java, TestGoAndGo.java,
	TestI386Modify.java, TestI386Regs.java, TestPaused.java,
	TestProcGet.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestRun.java,
	TestStep.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java, TestSyscall.java, TestSyscall2.java,
	TestSyscallOpen.java, TestTerminated.java, TestUnpaused.java: Use.

2005-08-31  Jeff Johnston  <jjohnstn@redhat.com>

	* TestAttach.java: Change to not use static variables or classes.
	* TestAttachCloningThreads.java: Ditto.
	* TestAttachThreads.java: Ditto.
	* TestExiting.java: Ditto.
	* TestGoAndGo.java: Ditto.
	* TestI386Modify.java: Ditto.
	* TestI386Regs.java: Ditto.
	* TestPaused.java: Ditto.
	* TestProcStop.java: Ditto.
	* TestProcStopAndGo.java: Ditto.
	* TestProcStopAndGo2.java: Ditto.
	* TestProcStopAndStop.java: Ditto.
	* TestStep.java: Ditto.
	* TestStop.java: Ditto.
	* TestStopAndGo.java: Ditto.
	* TestStopAndStop.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestSyscallOpen.java: Ditto.
	* TestTerminated.java: Ditto.
	* TestUnpaused.java: Ditto.

2005-08-31  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java: Add method processAttachedDestroy, use
	throughout.

2005-08-30  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java: Add	testRefreshZombie.
	* TaskState.java: When requestRemove, and a process with no
	threads, do not remove it from its parent.

	* Proc.java: Move code removing a process with no tasks from here
	...
	* TaskState.java: ... to here.

	* Proc.java: Move calls to taskDestroyed.notify from here ...
	* TaskState.java: To here.

	* Proc.java: Add procDestroyed observer.  Change procRemoved to a
	simple TaskObserver.
	* TestAttach.java, TestAttachThreads.java, TestExiting.java,
	TestLib.java, TestTerminated.java: Update.

	* TestI386Modify.java: Disable for moment.

2005-08-30  Jeff Johnston  <jjohnstn@redhat.com>

	* TestI386Modify.java: Use runPolling to put upper limit on time
	for test to complete.

2005-08-30  Jeff Johnston  <jjohnstn@redhat.com>

	* I386Linux.java: Specify little-endianness for generic memory.
	* Register.java: Add put method.
	* TestI386Modify.java: New test.

2005-08-30  Andrew Cagney  <cagney@redhat.com>

	* TaskState.java: Rename state "dead" to "destroyed".
	* TestRefresh.java: Update.

	* TestLib.java, LinuxHost.java: Update to match changes to
	Wait.java, vis rename wait to waitAll, waitNohang to
	waitAllNoHang, signaled to terminated, and zombied to disappeared.

	* TestProcGet.java: Add testGetCommand.
	* Proc.java: Make getCommand abstract.
	* LinuxProc.java: Add getStat and getCommand.

2005-08-30  Jeff Johnston  <jjohnstn@redhat.com>

	* TestLib.java (tearDown): Add comments regarding use of SIGCONT.

2005-08-30  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Add ZombieChild.fryParent.
	* LinuxProc.java: Don't crash when a process has no tasks.
	* LinuxHost.java: Handle a process becomming a daemon
	(re-parenting).  Refresh all processes not just the added ones.
	* TestRefresh.java: Add testRefreshDaemon.

2005-08-29  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java: Add "testParentChild".
	* Proc.java: Add constructor parameterized by Host, ProcId, and
	Stat.
	* LinuxHost.java: Add "updateProc".  Use LinuxProc.Stat to get the
	parent ID.  Update a process parent first.
	* LinuxProc.java: Add "Stat".  Add constructor parameterized by
	Host, ProcId, and Stat.

	* Linux.java: Break up.
	* LinuxProc.java: New.
	* LinuxTask.java: New.
	* LinuxHost.java, I386Linux.java, TestUnpaused.java: Update.

2005-08-26  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Make DetachedChild a sub-class of DaemonChild.
	Add ZombieChild.
	* TestRefresh.java: Update.

	* TestRefresh.java: Add testRepeatedHostRefresh.  Add class
	ChildTracker, use.
	* LinuxHost.java: In sendRefresh, use a ProcId, instead of TaskId,
	when searching for a process.

2005-08-26  Jeff Johnston  <jjohnstn@redhat.com>

	* TestLib.java (tearDown): Fix to wait indefinitely for all events
	before verifying that a particular registered child is gone.
	* TestStep.java: Switch over to use TestLib registerChild and
	StopEventLoopOnProcDestroy methods.

2005-08-26  Andrew Cagney  <cagney@redhat.com>

	* Id.java: Fix "equals", cast to an Id not TaskId.
	* Host.java, HostEvent.java, HostState.java, Linux.java,
	LinuxHost.java, Proc.java, ProcEvent.java, TaskEvent.java,
	TestAttach.java, TestAttachCloningThreads.java,
	TestAttachThreads.java, TestGoAndGo.java, TestPaused.java,
	TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java,
	TestRefresh.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java, TestUnpaused.java: Use ProcId instead of
	TaskId where applicable.

	* ProcId.java: New.

	* Id.java: New file.
	* TaskId.java: Extend Id.

	* Proc.java: Replace requestAttach, and requestDetach with
	requestAttachedCont, requestAttachedStop and requestDetachedCont.
	* HostState.java, LinuxHost.java, ProcEvent.java, ProcState.java:
	Update to match.

	* Manager.java: Note that Host.procAdded and Host.procRemoved are
	prefered.
	* Proc.java: Add taskAdded observer.
	* Host.java: Add procAdded and procRemoved observers.
	* Task.java, TaskState.java, TestClone.java, TestExec.java,
	TestFork.java, TestLib.java, TestProcGet.java, TestRefresh.java,
	TestRun.java: Use.

2005-08-25  Jeff Johnston  <jjohnstn@redhat.com>

	* TestAttachCloningThreads.java: Change to use TestLib
	registerChild and StopEventLoopOnProcDestroy methods.
	* TestAttach.java: Ditto.
	* TestAttachThreads.java: Ditto.
	* TestExiting.java: Ditto.
	* TestGoAndGo.java: Ditto.
	* TestPaused.java: Ditto.
	* TestProcStopAndGo2.java: Ditto.
	* TestProcStopAndGo.java: Ditto.
	* TestProcStopAndStop.java: Ditto.
	* TestProcStop.java: Ditto.
	* TestStopAndGo.java: Ditto.
	* TestStopAndStop.java: Ditto.
	* TestStop.java: Ditto.
	* TestTerminated.java: Ditto.
	* TestUnpaused.java: Ditto plus change testcase to properly stop
	and detach program.
	* TestLib.java (tearDown): Add issuing a SIGCONT before SIGKILL so
	that any processes stuck with pending SIGSTOPs will get the
	SIGKILL and die properly.

2005-08-25  Andrew Cagney  <cagney@redhat.com>

	* TestRefresh.java: Add testRefreshAll.
	* HostState.java: Pass refreshAll to sendRefresh.
	* LinuxHost.java: Add refreshAll to sendRefresh.
	* Host.java: Add refreshAll parameter to requestRefresh and
	sendRefresh.

	* TestRefresh.java: Extend testProcRefresh to check that the task
	list tracks task creation and deletion.

	* Linux.java: Request that any lost tasks be removed.  When
	applicable, create a detached task.
	* Task.java: Add "requestRemoval" and a detached constructor.
	* TaskEvent.java: Add RequestRemoval.
	* TaskState.java: Handle RequestRemoval.

	* TestLib.java: For TaskCounter and ProcCounter, add LinkedLists
	"discovered" and "removed" that contain the added and removed
	tasks/procs/.  Change numberDiscovered and numberRemoved to
	methods.
	* TestClone.java, TestExec.java, TestFork.java, TestLib.java,
	TestRun.java: Update.

	* TestLib.java: Refactor DetachedChild into Child, DetachedChild,
	and DaemonChild.  Implement using prog/kill/detach.

2005-08-24  Jeff Johnston  <jjohnstn@redhat.com>

	* TestAttach.java: Fix comments.
	* TestPaused.java: Ditto.
	* TestProcStopAndGo2.java: Ditto.
	* TestUnpaused.java: Ditto.

2005-08-24  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Replace WatchForProc with PidCounter.  Add
	DetachedChild.reap.
	* TestRefresh.java: Really add file.

2005-08-23  Jeff Johnston  <jjohnstn@redhat.com>

	* TestAttach.java: Switch to JUnit and remove println messages.
	* TestAttachCloningThreads.java: Ditto.
	* TestAttachThreads.java: Ditto.
	* TestExiting.java: Ditto.
	* TestGoAndGo.java: Ditto.
	* TestI386Regs.java: Ditto.
	* TestPaused.java: Ditto.
	* TestProcStopAndGo2.java: Ditto.
	* TestProcStopAndGo.java: Ditto.
	* TestProcStopAndStop.java: Ditto.
	* TestProcStop.java: Ditto.
	* TestStep.java: Ditto.
	* TestStopAndGo.java: Ditto.
	* TestStopAndStop.java: Ditto.
	* TestStop.java: Ditto.
	* TestSyscall2.java: Ditto.
	* TestSyscall.java: Ditto.
	* TestSyscallOpen.java: Ditto.
	* TestTerminated.java: Ditto.
	* TestUnpaused.java: Ditto.

2005-08-23  Andrew Cagney  <cagney@redhat.com>

	* Manager.java: Replace	"procDestroyed" with "procRemoved".
	* Proc.java: Replace taskDestroyed with taskRemoved.
	* Host.java, TestAttach.java, TestAttachCloningThreads.java,
	TestAttachThreads.java, TestClone.java, TestExec.java,
	TestExiting.java, TestFork.java, TestGoAndGo.java,
	TestI386Regs.java, TestLib.java, TestPaused.java,
	TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestRun.java,
	TestStep.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java, TestSyscall.java, TestSyscall2.java,
	TestSyscallOpen.java, TestTerminated.java, TestUnpaused.java:
	Update.

	* TestHost.java: Replace with ...
	* TestRefresh.java: New file.
	* ProcEvent.java: Add RequestRemoval.
	* ProcState.java: Add "destroyed" state, handle RequestRemoval
	event.
	* LinuxHost.java: Send a RequestRemoval message to each removed
	process.
	* TestLib.java: Add WatchForProc.  Make ProcCounter implement
	Cloneable, add "save" method.

	* TestLib.java: For TaskCounter and ProcCounter, rename
	numberCreated to numberDiscovered.
	* TestRun.java, TestFork.java, TestClone.java, TestExec.java:
	Update.

	* Proc.java: Rename taskCreated to taskDiscovered.
	* TaskState.java, TestAttach.java, TestAttachCloningThreads.java,
	TestAttachThreads.java, TestExiting.java, TestGoAndGo.java,
	TestI386Regs.java, TestLib.java, TestPaused.java,
	TestProcGet.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestStep.java,
	TestStop.java, TestStopAndGo.java, TestStopAndStop.java,
	TestSyscall.java, TestSyscall2.java, TestSyscallOpen.java,
	TestTerminated.java, TestUnpaused.java: Update.

2005-08-22  Andrew Cagney  <cagney@redhat.com>

	* Linux.java: Implement Proc .sendRefresh".  In Proc .sendAttach,
	also add the main task.
	* Proc.java: Add requestRefresh, and sendRefresh.  In Proc, only
	add the main task when attached.
	* ProcEvent.java: Add RequestRefresh.
	* ProcState.java: Handle RequestRefresh.
	* TestHost.java: Add testProcRefresh.

	* TestPaused.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestStop.java,
	TestStopAndStop.java, TestUnpaused.java: Compare TaskId values,
	instead of TaskId addresses.

	* TestLib.java: Add DetachedChild constructor with "clones"
	parameter.

	* TestLib.java: In tearDown, discard any Errno.Echild when killing
	processes.

	* Manager.java: Rename "procCreated" to "procDiscovered".
	* Host.java, TestAttach.java, TestAttachCloningThreads.java,
	TestAttachThreads.java, TestExiting.java, TestGoAndGo.java,
	TestI386Regs.java, TestLib.java, TestPaused.java,
	TestProcGet.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java, TestStep.java,
	TestStop.java, TestStopAndGo.java, TestStopAndStop.java,
	TestSyscall.java, TestSyscall2.java, TestSyscallOpen.java,
	TestTerminated.java, TestUnpaused.java: Update.

	* TestLib.java, LinuxHost.java: Update to match event changes.

2005-08-19  Andrew Cagney  <cagney@redhat.com>

	* TestHost.java: Don't import com.redhat.fedora.frysk.sys.Pid,
	com.redhat.fedora.frysk.sys.Fork, or
	com.redhat.fedora.frysk.event.SignalEvent.
	* TestExec.java: Don't import java.util.Observer, or
	java.util.Observable.

	* LinuxHost.java: Add PollWaitOnSigChld, based on
	PollWaitPidEvent.
	* Manager.java: Update.
	* Linux.java: Delete EventLoop and PollWaitPidEvent.

	* TaskEvent.java: Delete .detachHackXXX.
	* TaskState.java: Update.
	* TestAttachSuspended.java, TestDetach.java,
	TestDetachThreads.java, TestReattachThreads.java: Delete.

	* TestLib.java: Add DetachedChild.
	* TestHost.java: Use DetachedChild.

	* Task.java: Add getProc, getEntryPointAddress, and getPid.  Make
	"proc" and "id" protected.

2005-08-18  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Add ExecCounter.
	* TestThreadExec.java: Delete.
	* TestExec.java: Merge in TestThreadExec, rewrite using JUnit,
	check that the exec'd program did run.

	* TestProcGet.java: New.
	* TestLib.java: Add TmpFile.getFile.
	* TestAuxv.java: Delete.

2005-08-18  Andrew Cagney  <cagney@redhat.com>

	* TestClone.java: Delete println call, Enable commented out
	assertEquals calls.
	* TestRun.java: Delete unused
	java.io.File import.

	* TestLib.java: Add TmpFile.
	* TestRun.java: Use.

2005-08-17  Andrew Cagney  <cagney@redhat.com>

	* TestLib.java: Add TaskCounter.
	* TestFork.java: Delete unused import of java.io;
	* TestClone.java: Convert to JUnit.

	* TestLib.java: Add Fibonacci.
	* TestFork.java: Convert to JUnit, simplify.

	* TestFork.java: Extend LibTest.
	* TestClone.java: Extend LibTest.

	* TestLib.java: Add ProcCounter.
	* TestRun.java: Use.

	* TestLib.java: Replace addStopEventLoopOnProcDestroy with the
	class StopEventLoopOnProcDestroy.
	* TestRun.java: Update.

	* Proc.java: Add requestDetach.
	* ProcState.java: Handle RequestDetach.
	* ProcEvent.java: Add RequestDetach.

2005-08-16  Andrew Cagney  <cagney@redhat.com>

	* TestStep.java, TaskState.java: Delete calls to
	isNewTaskLeftStopped.
	* ProcState.java, Proc.java: Delete isNewTaskLeftStopped.

	* ProcState.java: Simplify "unattached" state, when "running"
	handle TaskForked.
	* Proc.java: Add "attached" parameter to constructors, set initial
	state to "running" when "attached".
	* Host.java: Delete "createProc".
	* LinuxHost.java, LinuxHost.java: Update.

	* Linux.java: For fork, create both ProcEvent.TaskForked and
	TaskEvent.Forked events.
	* ProcState.java: Handke ProcEvent.TaskForked.
	* ProcEvent.java: Add TaskForked.
	* TaskState.java: Do not add the forked process.

	* ProcState.java: Create the new task as runnable.
	* Task.java: Add "runnable" parameter to Task constructor, set
	"state" accordingly.
	* I386Linux.java: Add "runnable" parameter to Task constructor.
	* Linux.java: Replace "createTask" with "newTask" add "runnable"
	to Task constructor.
	* Proc.java: Replace "createTask" with "newTask".
	* TaskState.java: Replace state "starting" with "startRunning" and
	"startStopped".

	* Proc.java: Add dummy versions of getCommand, and getPid.

	* TaskState.java: For Cloned, don't add the new task.
	* ProcState.java: Handle TaskCloned.
	* TaskEvent.java: Add TaskCloned.
	* Linux.java: For clone, create both ProcEvent.TaskCloned and
	TaskEvent.cloned events.

	* TaskEvent.java: Make all variable members protected, add public
	accessors.  Add Task parameterized constructor.
	* TaskState.java: Update.

	* TaskEvent.java: Parameterize event constructors with the TaskId,
	find the corresponding task during "execute".
	* Linux.java: Delete local event classes, create TaskEvents, with
	taskId's, instead.

2005-08-15  Andrew Cagney  <cagney@redhat.com>

	* ProcState.java: Move "go", "stop" and AllStopped to the states
	that they apply to.

	* TestLib.java: Add "sigKill" method.
	* Task.java: Delete "kill".
	* Linux.java: Delete "kill".
	* TestAttach.java, TestAttachCloningThreads.java,
	TestAttachThreads.java, TestDetachThreads.java, TestExiting.java,
	TestPaused.java, TestReattachThreads.java, TestTerminated.java,
	TestUnpaused.java: Use Signal.kill instead.

	* TestPsObserver.java: Delete.

2005-08-14  Andrew Cagney  <cagney@redhat.com>

	* ProcEvent.java: Add "unattached" state, handle RequestAttach.
	* Proc.java: Add "requestAttach" and
	"sendAttach", default "state" to "unattached".
	* LinuxHost.java: For "sendAttachProc", send the request to the
	just-created process.
	* Linux.java: Add "sendAttach".
	* HostState.java: For RequestAttach, when the process already
	exists, just pass the request on.

	* ProcEvent.java: Parameterize constructors with "proc".
	* Proc.java: Delete "process", pass "proc" to ProcEvent
	constructors.
	* ProcState.java: Update.

	* Host.java: Add "sendAttachProc", for "requestAttachProc", append
	a RequestAttachProc event.
	* HostEvent.java: Add RequestAttachProc.
	* HostState.java: Handle RequestAttachProc.
	* LinuxHost.java: Replace "equestAttachProc" with
	"sendAttachProc".

	* Host.java: Replace "attachProc" with "requestAttachProc".
	* LinuxHost.java: Update.
	* TestAttach.java, TestAttachCloningThreads.java,
	TestAttachSuspended.java, TestAttachThreads.java,
	TestDetachThreads.java, TestGoAndGo.java, TestPaused.java,
	TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java,
	TestReattachThreads.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java, TestUnpaused.java: Simplify.

	* LinuxHost.java: Replace "createProc" by "sendCreateProc".
	* HostState.java: Handle "RequestCreateProc".
	* HostEvent.java: Add "RequestCreateProc".
	* Host.java: Replace "createProc" with "sendCreateProc" and
	"requestCreateProc".
	* TestAuxv.java, TestClone.java, TestDetach.java, TestExec.java,
	TestExiting.java, TestFork.java, TestI386Regs.java, TestRun.java,
	TestStep.java, TestSyscall.java, TestSyscall2.java,
	TestSyscallOpen.java, TestTerminated.java, TestThreadExec.java:
	Update.

	* Manager.java: Add "resetXXX".
	* TestLib.java: Add "addStopEventLoopOnProcDestroy", make
	"tearDown" more robust, have "setUp" call "resetXXX".
	* TestRun.java: Convert to JUnit.

	* TestAttach.java, TestAttachCloningThreads.java,
	TestAttachSuspended.java, TestAttachThreads.java, TestAuxv.java,
	TestClone.java, TestDetach.java, TestDetachThreads.java,
	TestExec.java, TestExiting.java, TestFork.java, TestGoAndGo.java,
	TestHost.java, TestI386Regs.java, TestPaused.java,
	TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java,
	TestPsObserver.java, TestReattachThreads.java, TestRun.java,
	TestStep.java, TestStop.java, TestStopAndGo.java,
	TestStopAndStop.java, TestSyscall.java, TestSyscall2.java,
	TestSyscallOpen.java, TestTerminated.java, TestThreadExec.java,
	TestUnpaused.java: Update to match event/ changes.

	* TaskEvent.java: Add "execute" to all classes.
	* Linux.java: Update.
	* Task.java: Delete "process".
	* LinuxHost.java: Update.
	* HostState.java: Update.
	* HostEvent.java: Call state.process directly.
	* Host.java: Rename "refresh" to "sendRefresh".  Delete "process".

	* Task.java: Add "send" prefix to cont, stepi, step, and
	setOptions.
	* Linux.java: Update.
	* TaskState.java: Update.

2005-08-13  Andrew Cagney  <cagney@redhat.com>

	* Task.java: Make cont, stepi, and setOptions return void.
	* Task.java: Only return the zombied state when a zombied event.
	* Linux.java: For cont ,stepi, and setOptions, instead of
	returning -1, append a Zombied event to the event queue.

	* Linux.java: Wrap ptrace calls in try catch block.

	* Linux.java: Delete Proc.attached.
	* Host.java: Update.

	* TestHost.java: Delete junit.framework.TestCase import.
	* TestAttachCloningThreads.java: Delete
	com.redhat.fedora.frysk.sys.Signal import.

	* TestLib.java: New.
	* TestHost.java: Extend TestLib, simplify.

2005-08-12  Jeff Johnston  <jjohnstn@redhat.com>

	* Linux.java (Linux.Task): Change cont, stepi, and setOptions
	methods to return an int.
	(Linux.PollWaitPidEvent): Fix all TaskEvent execute methods to
	verify a task is non-null before accessing its process method.
	(Linux.PollWaitPidEvent.ZombiedTaskEvent): New TaskEvent class.
	* Proc.java: Change add (Task) method to not notify observers
	about Task creation.
	* PsObserver.java: Comment out debugging println.
	* Task.java: Add the new Task to the Proc at the point of
	construction.  Change the prototypes of the cont, stepi, and
	setOptions methods to return an int.  Add new process method to
	handle a TaskEvent.Zombied event.  Change the toString method to
	print out the Task's state.
	* TaskEvent.java (TaskEvent.Zombied): New class.
	* TaskState.java: Add zombied state support.  Change every call to
	Ptrace.cont(), Ptrace.setOptions(), and Ptrace.stepi() to check
	for a return code and to change to zombied state should the call
	fail.  For starting state, the first StoppedEvent now results in
	notifying observers of a newly created Task.  Previously, this
	action added the Task to the Proc, but this is now done in Task
	construction.  Add multiple additional process events for starting
	state.  Add new zombied state that waits for termination or exit.
	* TestHost.java: Add new zombied observer.
	* TestPsObserver.java: Change test to no longer be threaded and
	instead use timer support.
	* TestAttachCloningThreads.java: New test.

2005-08-12  Andrew Cagney  <cagney@redhat.com>

	* LinuxHost.java: Delete unused import of java.util.Set.

2005-08-10  Andrew Cagney  <cagney@redhat.com>

	* TestHost.java: New.
	* HostState.java: Handle RefreshRequest.
	* HostEvent.java: Add sub-class RequestRefresh.
	* Host.java: Make "state" protected.  Add abstract method
	"refresh", and method requestRefresh.

	* Host.java: Change procPool to a Map, add "getProc" method.

	* Linux.java: Remove "unknown" from Wait.Observer.

2005-08-08  Andrew Cagney  <cagney@redhat.com>

	* HostState.java: New.
	* HostEvent.java: New.
	* Host.java: Add HostState.

	* State.java: New.
	* ProcState.java,
	* TaskState.java: Extend State.

	* Manager.java: Move procSet to...
	* Host.java: ... here.
	* Proc.java, TestAttach.java, TestAttachSuspended.java,
	TestAttachThreads.java, TestDetach.java, TestDetachThreads.java,
	TestExiting.java, TestGoAndGo.java, TestI386Regs.java,
	TestPaused.java, TestProcStopAndGo2.java, TestProcStopAndGo.java,
	TestProcStopAndStop.java, TestProcStop.java,
	TestReattachThreads.java, TestRun.java, TestStep.java,
	TestStopAndGo.java, TestStopAndStop.java, TestStop.java,
	TestSyscall2.java, TestSyscall.java, TestSyscallOpen.java,
	TestTerminated.java: Update.

2005-08-07  Andrew Cagney  <cagney@redhat.com>

	* Linux.java: Delete unused imports.

	* Proc.java: Add "host" to constructor.
	* Linux.java, LinuxHost.java: Update.

	* Proc.java: Add createTask.
	* TaskFactory.java: Delete.
	* I386Linux.java Linux.java LinuxHost.java Manager.java
	TaskState.java TestI386Regs.java TestStep.java
	TestSyscallOpen.java: Update.

	* Proc.java: Add "host".
	* TaskFactory.java: Delete createProc, moved to Host.
	* Host.java: Add createProc.
	* Linux.java, TaskState.java, LinuxHost.java: Update.
	* Proc.java: Make "parent" private.  Replace getPid with
	getTaskId: Update.

	* ProcFactory.java: Delete.
	* LinuxHost.java: New.
	* Manager.java: Replace "procFactory" with Host.
	* Linux.java: Delete "ProcFactory".
	* Host.java, TestAttach.java, TestAttachSuspended.java,
	TestAttachThreads.java, TestAuxv.java, TestClone.java,
	TestDetach.java, TestDetachThreads.java, TestExec.java,
	TestExiting.java, TestFork.java, TestGoAndGo.java,
	TestI386Regs.java, TestPaused.java, TestProcStopAndGo2.java,
	TestProcStopAndGo.java, TestProcStopAndStop.java,
	TestProcStop.java, TestReattachThreads.java, TestRun.java,
	TestStep.java, TestStopAndGo.java, TestStopAndStop.java,
	TestStop.java, TestSyscall2.java, TestSyscall.java,
	TestSyscallOpen.java, TestTerminated.java, TestThreadExec.java,
	TestUnpaused.java: Update.

2005-08-06  Andrew Cagney  <cagney@redhat.com>

	* Host.java: New.

	* EventLoop.java: Delete.
	* Linux.java: Extend event.EventLoop instead of proc.EventLoop.
	* Manager.java: Update.

2005-08-05  Andrew Cagney  <cagney@redhat.com>

	Fix problems building under eclipse.
	* .cvsignore: New.
	* EventLoop.java, Linux.java, Manager.java, ProcFactory.java,
	PsObserver.java, TestGoAndGo.java: Fix ECJ build errors.

	* Linux.java: Clean up imports - explicitly import Wait, File,
	Iterator, and Collection.

2005-08-04  Andrew Cagney  <cagney@redhat.com>

	* AllStoppedProcEvent.java: Delete.
	* ProcEvent.java: Add AllStopped sub-class.
	* Proc.java, ProcState.java, TestProcStop.java,
	TestProcStopAndGo.java, TestProcStopAndGo2.java,
	TestProcStopAndStop.java, TestStep.java: Update.

2005-08-03  Andrew Cagney  <cagney@redhat.com>

	* ProcState.java: New file.
	* Proc.java: Copy state code to ProcState.
	* ClonedTaskEvent.java, ExecedTaskEvent.java,
	ExitedTaskEvent.java, ExitingTaskEvent.java, ForkedTaskEvent.java,
	RequestGoTaskEvent.java, RequestStepiTaskEvent.java,
	RequestStopTaskEvent.java, SignaledTaskEvent.java,
	StoppedTaskEvent.java, SyscallTaskEvent.java,
	TerminatedTaskEvent.java, TrappedTaskEvent.java: Delete ...
	* TaskEvent.java: .. moved into here.
	* Linux.java, Task.java, TaskState.java, TestAttach.java,
	TestAttachSuspended.java, TestAttachThreads.java, TestDetach.java,
	TestDetachThreads.java, TestExiting.java, TestGoAndGo.java,
	TestI386Regs.java, TestPaused.java, TestProcStopAndGo2.java,
	TestProcStopAndGo.java, TestProcStopAndStop.java,
	TestProcStop.java, TestReattachThreads.java, TestStep.java,
	TestStopAndGo.java, TestStopAndStop.java, TestStop.java,
	TestSyscall2.java, TestSyscall.java, TestSyscallOpen.java,
	TestTerminated.java, TestUnpaused.java: Update.

	* TaskState.java: New file.
	* Task.java: Move state machine to TaskState.
	* TestUnpaused.java, TestPaused.java, TestStop.java,
	TestStopAndStop.java: Update.

2005-08-02  Andrew Cagney  <cagney@redhat.com>

	* Task.java: Delete unused variables startRequest, stopRequest,
	and stepRequest from the state machine.

	* Linux.java, Task.java: Delete stopTask, make operation names
	consistent.
	* TestAttach.java, TestAttachThreads.java, TestDetachThreads.java,
	TestExiting.java, TestPaused.java, TestReattachThreads.java,
	TestTerminated.java, TestUnpaused.java: Update.

	* RequestStepiTaskEvent.java: New.
	* Task.java: Replace "step" with "requestStepi".  Inject a
	RequestStepiTaskEvent into the event queue and handle in the state
	machine.
	* TestStep.java: Update.

	* RequestGoTaskEvent.java: New.
	* Task.java: Replace "go" with "requestGo".  Inject a
	RequestGoTaskEvent into the event queue and handle in the state
	machine.
	* TestUnpaused.java, TestGoAndGo.java, TestStopAndGo.java,
	TestGoAndGo.java, TestStep.java, Proc.java: Update.

	* RequestStopTaskEvent.java: New.
	* Task.java: Replace "stop" with "requestStop".  Inject a
	RequestStopTaskEvent into the event queue and handle in the state
	machine.
	* TestUnpaused.java, TestPaused.java, TestStopAndStop.java,
	TestStop.java, TestStopAndGo.java, TestGoAndGo.java, Proc.java:
	Update.

2005-08-01  Andrew Cagney  <cagney@redhat.com>

	* Linux.java: Convert SIGSTOP into StoppedTaskEvent.
	* TestDetachThreads.java, TestDetach.java,
	TestAttachSuspended.java: Check for StoppedTaskEvent instead of
	SignaledTaskEvent.
	* Task.java: Handle StoppedTaskEvent.
	* StoppedTaskEvent.java: Add member detachHackXXX.
	* TestReattachThreads.java: Simplify.

	* TestSyscallOpen.java, TestSyscall.java: Instead of
	SignaledTaskEvent, check for TrappedTaskEvent.
	* Proc.java, TestStep.java: Instead of SignaledTaskEvent, cast to
	TaskEvent,
	* Task.java: For State, handle TrappedTaskEvent, delete
	unnecessary SignalledTaskEvent cases.
	* Linux.java: For stop with SIGTRAP, create a TrappedTaskEvent.

2005-07-31  Andrew Cagney  <cagney@redhat.com>

	* Linux.java: Parameterize the TaskEvent constructors.

	* Task.java: For State, add "name" member, set using an explicit
	 constructor parameter.  Clean up toString methods.

	* Linux.java: Delete the one parameter "stopped" observer.

	* Task.java: Add "process" methods for SignaledTaskEvent and
	TrappedTaskEvent.
	* Linux.java: Add local SignaledTaskEvent and TrappedTaskEvent
	methods.

	* SignaledTaskEvent.java: New.
	* TrappedTaskEvent.java: New.
	* Linux.java, Proc.java, StoppedTaskEvent.java, Task.java,
	TestAttachSuspended.java, TestDetach.java, TestDetachThreads.java,
	TestI386Regs.java, TestReattachThreads.java, TestStep.java,
	TestSyscall.java, TestSyscallOpen.java, TestUnpaused.java: Replace
	StoppedTaskEvent with SignaledTaskEvent.

	* ClonedTaskEvent.java, ExecedTaskEvent.java,
	ExitedTaskEvent.java, ExitingTaskEvent.java, ForkedTaskEvent.java,
	StoppedTaskEvent.java, SyscallTaskEvent.java, TaskEvent.java,
	TerminatedTaskEvent.java: Delete unnecessary public constructor
	and unused "execute" method.
	* EventLoop.java: Delete unused
	TaskEvent instances.

2005-07-30  Andrew Cagney  <cagney@redhat.com>

	* Linux.java, Task.java: Delete "isTrapSig" and "isStopSig".

	* SysUtils.Java, cni/SysUtils.cxx: Delete files, signal functions
	replaced by sys.Sig.
	* Linux.java, Task.java, TestAttach.java, TestAttachThreads.java,
	TestDetach.java, TestDetachThreads.java, TestExiting.java,
	TestPaused.java, TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java,
	TestReattachThreads.java, TestStep.java, TestStop.java,
	TestStopAndGo.java, TestStopAndStop.java, TestTerminated.java,
	TestUnpaused.java: Use sys.Sig.

	* SysUtils.java, cni/SysUtils.cxx: Delete "infLoop",
	"infThreadLoop", and "suspendedProg"; moved to sys.XXX.
	* TestDetachThreads.java, TestUnpaused.java,
	TestProcStopAndGo2.java, TestReattachThreads.java,
	TestAttachThreads.java, TestAttach.java, TestProcStop.java,
	TestPaused.java, TestStop.java, TestStopAndStop.java,
	TestProcStopAndStop.java, TestStopAndGo.java,
	TestAttachSuspended.java, TestGoAndGo.java,
	TestProcStopAndGo.java: Update to use sys.XXX.

	* SysUtils.java, cni/SysUtils.cxx: Delete "kill" and "tkill".
	* TestAttachSuspended.java, TestDetach.java,
	TestDetachThreads.java, TestGoAndGo.java, TestPaused.java,
	TestProcStop.java, TestProcStopAndGo.java,
	TestProcStopAndGo2.java, TestProcStopAndStop.java,
	TestReattachThreads.java, TestStep.java, TestStop.java,
	TestStopAndGo.java, TestStopAndStop.java, TestUnpaused.java: Use
	Signal.kill.

	* cni/SysUtils.cxx, SysUtils.java: Add sigchld.
	* Linux.java: Use SysUtils.
	* cni/Linux.cxx: Delete.

	* cni/Linux.cxx: Don't include "Linux$EventLoop$WaitEvent.h".

2005-07-29  Andrew Cagney  <cagney@redhat.com>

	* cni/Linux.cxx: Delete "WaitEvet.execute" and corresponding
	support routines.
	* Linux.java: Replace WaitEvent observer with individual
	Wait.Observer's.

2005-07-28  Andrew Cagney  <cagney@redhat.com>
	    Jeff Johnston  <jjohnstn@redhat.com>
	    Sami Wagiaalla  <swagiaal@redhat.com>

	* AllStoppedProcEvent.java: New file.
	* Auxv.java: New file.
	* ByteOrder.java: New file.
	* ClonedTaskEvent.java: New file.
	* EventLoop.java: New file.
	* ExecedTaskEvent.java: New file.
	* ExitedTaskEvent.java: New file.
	* ExitingTaskEvent.java: New file.
	* ForkedTaskEvent.java: New file.
	* I386Linux.java: New file.
	* Isa.java: New file.
	* Linux.java: New file.
	* Manager.java: New file.
	* PowerPcLinux.java: New file.
	* Proc.java: New file.
	* ProcEvent.java: New file.
	* ProcEventObservable.java: New file.
	* ProcFactory.java: New file.
	* PsEvent.java: New file.
	* PsListener.java: New file.
	* PsObserver.java: New file.
	* Register.java: New file.
	* StoppedTaskEvent.java: New file.
	* SysUtils.java: New file.
	* Syscall.java: New file.
	* SyscallEventInfo.java: New file.
	* SyscallTaskEvent.java: New file.
	* Task.java: New file.
	* TaskEvent.java: New file.
	* TaskEventObservable.java: New file.
	* TaskFactory.java: New file.
	* TaskId.java: New file.
	* TerminatedTaskEvent.java: New file.
	* TestAttach.java: New file.
	* TestAttachSuspended.java: New file.
	* TestAttachThreads.java: New file.
	* TestAuxv.java: New file.
	* TestClone.java: New file.
	* TestDetach.java: New file.
	* TestDetachThreads.java: New file.
	* TestExec.java: New file.
	* TestExiting.java: New file.
	* TestFork.java: New file.
	* TestGoAndGo.java: New file.
	* TestI386Regs.java: New file.
	* TestPaused.java: New file.
	* TestProcStop.java: New file.
	* TestProcStopAndGo.java: New file.
	* TestProcStopAndGo2.java: New file.
	* TestProcStopAndStop.java: New file.
	* TestPsObserver.java: New file.
	* TestReattachThreads.java: New file.
	* TestRun.java: New file.
	* TestStep.java: New file.
	* TestStop.java: New file.
	* TestStopAndGo.java: New file.
	* TestStopAndStop.java: New file.
	* TestSyscall.java: New file.
	* TestSyscall2.java: New file.
	* TestSyscallOpen.java: New file.
	* TestTerminated.java: New file.
	* TestThreadExec.java: New file.
	* TestUnpaused.java: New file.
	* X8664Linux.java: New file.
	* cni/Linux.cxx: New file.
	* cni/SysUtils.cxx: New file.

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
