This is the mail archive of the frysk-cvs@sources.redhat.com mailing list for the frysk project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[SCM] master: Move Task.getRawMemory() to LiveTask; make package-local.


The branch, master has been updated
       via  39b06046cc2cac180bbec24e6a1d557f69b45cd6 (commit)
      from  e42a7c12625dc81987dd20571e05080f118d25f1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
commit 39b06046cc2cac180bbec24e6a1d557f69b45cd6
Author: Andrew Cagney <cagney@toil.yyz.redhat.com>
Date:   Fri Jan 11 16:36:33 2008 -0500

    Move Task.getRawMemory() to LiveTask; make package-local.
    
    frysk-core/frysk/proc/ChangeLog
    2008-01-11  Andrew Cagney  <cagney@redhat.com>
    
    	* TestTaskObserverCode.java: Move to frysk.proc.live.
    	* Task.java (getRawMemory()): Move to frysk.proc.live.LiveTask.
    
    frysk-core/frysk/proc/live/ChangeLog
    2008-01-11  Andrew Cagney  <cagney@redhat.com>
    
    	* TestTaskObserverCode.java: Move from
    	frysk.proc.TestTaskObserverCode.
    	* LinuxPtraceTask.java (getRawMemory()): Make package-private.
    	* LiveTask.java (getRawMemory()): Declare.
    	* Breakpoint.java: Update.
    	* Instruction.java: Update.

-----------------------------------------------------------------------

Summary of changes:
 frysk-core/frysk/proc/ChangeLog                    |    3 +
 frysk-core/frysk/proc/Task.java                    |   13 ---
 frysk-core/frysk/proc/live/Breakpoint.java         |    4 +-
 frysk-core/frysk/proc/live/ChangeLog               |    7 ++
 frysk-core/frysk/proc/live/Instruction.java        |    2 +-
 frysk-core/frysk/proc/live/LinuxPtraceTask.java    |    4 +-
 frysk-core/frysk/proc/live/LiveTask.java           |   12 +++
 .../proc/{ => live}/TestTaskObserverCode.java      |   79 ++++++++++++-------
 8 files changed, 76 insertions(+), 48 deletions(-)
 rename frysk-core/frysk/proc/{ => live}/TestTaskObserverCode.java (95%)

First 500 lines of diff:
diff --git a/frysk-core/frysk/proc/ChangeLog b/frysk-core/frysk/proc/ChangeLog
index dc82336..0f5210d 100644
--- a/frysk-core/frysk/proc/ChangeLog
+++ b/frysk-core/frysk/proc/ChangeLog
@@ -1,5 +1,8 @@
 2008-01-11  Andrew Cagney  <cagney@redhat.com>
 
+	* 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.
diff --git a/frysk-core/frysk/proc/Task.java b/frysk-core/frysk/proc/Task.java
index a0edca5..014d6fb 100644
--- a/frysk-core/frysk/proc/Task.java
+++ b/frysk-core/frysk/proc/Task.java
@@ -298,19 +298,6 @@ public abstract class Task {
     }
 
     /**
-     * Returns the memory as seen by frysk-core. That includes things
-     * like inserted breakpoint instructions bytes which are filtered
-     * out by <code>getMemory()</code> (which is what you normally
-     * want unless you are interested in frysk-core specifics).  <p>
-     * Default implementation calls <code>getMemory()</code>, need to
-     * be overriden by subclasses for which the raw memory view and
-     * the logical memory view are different.
-     */
-    public ByteBuffer getRawMemory() {
-	return getMemory();
-    }
-
-    /**
      * Add TaskObserver.Code to the TaskObserver pool.
      */
     public abstract void requestAddCodeObserver(TaskObserver.Code o, long a);
diff --git a/frysk-core/frysk/proc/live/Breakpoint.java b/frysk-core/frysk/proc/live/Breakpoint.java
index 579e7b0..0372b6d 100644
--- a/frysk-core/frysk/proc/live/Breakpoint.java
+++ b/frysk-core/frysk/proc/live/Breakpoint.java
@@ -146,7 +146,7 @@ public class Breakpoint implements Comparable
    */
   private void set(Task task)
   {
-    ByteBuffer buffer = task.getRawMemory();
+      ByteBuffer buffer = ((LinuxPtraceTask)task).getRawMemory();
     Isa isa = ((LinuxPtraceTask)task).getIsaFIXME();
     Instruction bpInstruction = isa.getBreakpointInstruction();
     
@@ -178,7 +178,7 @@ public class Breakpoint implements Comparable
    */
   private void reset(Task task)
   {
-    ByteBuffer buffer = task.getRawMemory();
+      ByteBuffer buffer = ((LinuxPtraceTask)task).getRawMemory();
     buffer.position(address);
     
     Isa isa = ((LinuxPtraceTask)task).getIsaFIXME();
diff --git a/frysk-core/frysk/proc/live/ChangeLog b/frysk-core/frysk/proc/live/ChangeLog
index a4d5ab7..ee234d3 100644
--- a/frysk-core/frysk/proc/live/ChangeLog
+++ b/frysk-core/frysk/proc/live/ChangeLog
@@ -1,5 +1,12 @@
 2008-01-11  Andrew Cagney  <cagney@redhat.com>
 
+	* TestTaskObserverCode.java: Move from
+	frysk.proc.TestTaskObserverCode.
+	* LinuxPtraceTask.java (getRawMemory()): Make package-private.
+	* LiveTask.java (getRawMemory()): Declare.
+	* Breakpoint.java: Update.
+	* Instruction.java: Update.
+	
 	* LiveTask.java (handleAddObservation(TaskObservation))
 	(handleDeleteObservation(TaskObservation)): Declare.
 	* TaskObservation.java: Move from frysk.proc.TaskObservation.
diff --git a/frysk-core/frysk/proc/live/Instruction.java b/frysk-core/frysk/proc/live/Instruction.java
index b76760e..6a62978 100644
--- a/frysk-core/frysk/proc/live/Instruction.java
+++ b/frysk-core/frysk/proc/live/Instruction.java
@@ -141,7 +141,7 @@ public class Instruction
    */
   public void setupExecuteOutOfLine(Task task, long pc, long address)
   {
-    ByteBuffer buffer = task.getRawMemory();
+      ByteBuffer buffer = ((LinuxPtraceTask)task).getRawMemory();
     buffer.position(address);
     buffer.put(instr);
     task.setPC(address);
diff --git a/frysk-core/frysk/proc/live/LinuxPtraceTask.java b/frysk-core/frysk/proc/live/LinuxPtraceTask.java
index a274b42..36ef26c 100644
--- a/frysk-core/frysk/proc/live/LinuxPtraceTask.java
+++ b/frysk-core/frysk/proc/live/LinuxPtraceTask.java
@@ -103,12 +103,10 @@ public class LinuxPtraceTask extends LiveTask {
 	}
     }
 
-
     /**
      * Return the raw memory byte-buffer. This is the TEXT/DATA area.
      */
-    public ByteBuffer getRawMemory ()
-    {
+    ByteBuffer getRawMemory() {
 	logger.log(Level.FINE, "Begin fillMemory\n", this);
 	ByteOrder byteOrder = getISA().order();
 	ByteBuffer memory = new AddressSpaceByteBuffer(getTid(),
diff --git a/frysk-core/frysk/proc/live/LiveTask.java b/frysk-core/frysk/proc/live/LiveTask.java
index 2fd28b4..692933c 100644
--- a/frysk-core/frysk/proc/live/LiveTask.java
+++ b/frysk-core/frysk/proc/live/LiveTask.java
@@ -39,6 +39,7 @@
 
 package frysk.proc.live;
 
+import inua.eio.ByteBuffer;
 import frysk.proc.Task;
 import frysk.proc.Proc;
 import frysk.proc.TaskId;
@@ -69,4 +70,15 @@ abstract class LiveTask extends Task {
      * Process the add observation event.
      */
     abstract void handleDeleteObservation(TaskObservation observation);
+
+    /**
+     * Returns the memory as seen by frysk-core. That includes things
+     * like inserted breakpoint instructions bytes which are filtered
+     * out by <code>getMemory()</code> (which is what you normally
+     * want unless you are interested in frysk-core specifics).  <p>
+     * Default implementation calls <code>getMemory()</code>, need to
+     * be overriden by subclasses for which the raw memory view and
+     * the logical memory view are different.
+     */
+    abstract ByteBuffer getRawMemory();
 }
diff --git a/frysk-core/frysk/proc/TestTaskObserverCode.java b/frysk-core/frysk/proc/live/TestTaskObserverCode.java
similarity index 95%
rename from frysk-core/frysk/proc/TestTaskObserverCode.java
rename to frysk-core/frysk/proc/live/TestTaskObserverCode.java
index 490f381..6a456b0 100644
--- a/frysk-core/frysk/proc/TestTaskObserverCode.java
+++ b/frysk-core/frysk/proc/live/TestTaskObserverCode.java
@@ -1,6 +1,6 @@
 // This file is part of the program FRYSK.
 //
-// Copyright 2006, 2007 Red Hat Inc.
+// Copyright 2006, 2007, 2008 Red Hat Inc.
 //
 // FRYSK is free software; you can redistribute it and/or modify it
 // under the terms of the GNU General Public License as published by
@@ -37,17 +37,38 @@
 // version and license this file solely under the GPL without
 // exception.
 
-package frysk.proc;
-
-import inua.eio.*;
-import frysk.testbed.*;
-import frysk.sys.*;
-import frysk.dwfl.*;
-import lib.dwfl.*;
-import java.util.*;
+package frysk.proc.live;
 
+import lib.dwfl.DwarfCommand;
+import lib.dwfl.ElfCommand;
+import frysk.dwfl.DwflCache;
 import frysk.testbed.TestLib;
 import frysk.testbed.DaemonBlockedAtEntry;
+import frysk.proc.Task;
+import frysk.proc.Proc;
+import frysk.sys.Signal;
+import lib.dwfl.SymbolBuilder;
+import lib.dwfl.Dwfl;
+import lib.dwfl.DwflModule;
+import lib.dwfl.DwarfDie;
+import frysk.proc.TaskObserver;
+import frysk.proc.Action;
+import java.util.Map;
+import java.util.HashMap;
+import frysk.testbed.LegacyOffspring;
+import inua.eio.ByteBuffer;
+import frysk.proc.Manager;
+import frysk.proc.MemoryMap;
+import java.util.Collection;
+import java.util.Arrays;
+import java.util.Iterator;
+import frysk.testbed.StopEventLoopWhenProcRemoved;
+import lib.dwfl.ElfException;
+import java.util.ArrayList;
+import lib.dwfl.Elf;
+import frysk.testbed.Offspring;
+import frysk.sys.Errno;
+import lib.dwfl.Dwarf;
 
 public class TestTaskObserverCode extends TestLib
 {
@@ -470,7 +491,7 @@ public class TestTaskObserverCode extends TestLib
     assertRunUntilStop("adding AttachedObserver");
 
     ByteBuffer memory = task.getMemory();
-    ByteBuffer raw_memory = task.getRawMemory();
+    ByteBuffer rawMemory = ((LiveTask)task).getRawMemory();
     long address = getFunctionEntryAddress("bp1_func");
     DwarfDie func1_die = getFunctionDie("bp1_func");
     long func1_start = func1_die.getLowPC();
@@ -483,8 +504,8 @@ public class TestTaskObserverCode extends TestLib
     bp1_orig = memory.getByte();
 
     byte bp1_orig_raw;
-    raw_memory.position(address);
-    bp1_orig_raw = raw_memory.getByte();
+    rawMemory.position(address);
+    bp1_orig_raw = rawMemory.getByte();
     assertEquals("orig and raw", bp1_orig, bp1_orig_raw);
 
     byte[] func1_orig = new byte[(int) (func1_end - func1_start)];
@@ -492,8 +513,8 @@ public class TestTaskObserverCode extends TestLib
     memory.get(func1_orig);
 
     byte[] func1_orig_raw = new byte[(int) (func1_end - func1_start)];
-    raw_memory.position(func1_start);
-    raw_memory.get(func1_orig_raw);
+    rawMemory.position(func1_start);
+    rawMemory.get(func1_orig_raw);
     assertTrue("func_orig and func_raw",
 	       Arrays.equals(func1_orig, func1_orig_raw));
 
@@ -510,8 +531,8 @@ public class TestTaskObserverCode extends TestLib
     assertEquals("orig and insert", bp1_orig, bp1_insert);
 
     byte bp1_insert_raw;
-    raw_memory.position(address);
-    bp1_insert_raw = raw_memory.getByte();
+    rawMemory.position(address);
+    bp1_insert_raw = rawMemory.getByte();
     assertTrue("insert and raw", bp1_insert != bp1_insert_raw);
 
     byte[] func1_insert = new byte[(int) (func1_end - func1_start)];
@@ -521,8 +542,8 @@ public class TestTaskObserverCode extends TestLib
 	       Arrays.equals(func1_orig, func1_insert));
     
     byte[] func1_insert_raw = new byte[(int) (func1_end - func1_start)];
-    raw_memory.position(func1_start);
-    raw_memory.get(func1_insert_raw);
+    rawMemory.position(func1_start);
+    rawMemory.get(func1_insert_raw);
     assertFalse("func_insert and func_insert_raw",
 		Arrays.equals(func1_insert, func1_insert_raw));
 
@@ -544,14 +565,14 @@ public class TestTaskObserverCode extends TestLib
 	       Arrays.equals(func1_orig, func1_new));
 
     byte bp1_new_raw;
-    raw_memory.position(address);
-    bp1_new_raw = raw_memory.getByte();
+    rawMemory.position(address);
+    bp1_new_raw = rawMemory.getByte();
     assertEquals("new and raw",
 		 bp1_new, bp1_new_raw);
 
     byte[] func1_new_raw = new byte[(int) (func1_end - func1_start)];
-    raw_memory.position(func1_start);
-    raw_memory.get(func1_new_raw);
+    rawMemory.position(func1_start);
+    rawMemory.get(func1_new_raw);
     assertTrue("func_new and func_new_raw",
 	       Arrays.equals(func1_new, func1_new_raw));
   }
@@ -571,7 +592,7 @@ public class TestTaskObserverCode extends TestLib
     assertRunUntilStop("adding AttachedObserver");
 
     ByteBuffer memory = task.getMemory();
-    ByteBuffer raw_memory = task.getRawMemory();
+    ByteBuffer rawMemory = ((LiveTask)task).getRawMemory();
 
     DwarfDie func1_die = getFunctionDie("bp1_func");
     long func1_start = func1_die.getLowPC();
@@ -591,8 +612,8 @@ public class TestTaskObserverCode extends TestLib
     
     memory.position(map.addressLow);
     memory.get(mem_orig);
-    raw_memory.position(map.addressLow);
-    raw_memory.get(raw_orig);
+    rawMemory.position(map.addressLow);
+    rawMemory.get(raw_orig);
 
     assertTrue("mem_orig and raw_orig",
 	       Arrays.equals(mem_orig, raw_orig));
@@ -634,8 +655,8 @@ public class TestTaskObserverCode extends TestLib
     
     memory.position(map.addressLow);
     memory.get(bp_mem);
-    raw_memory.position(map.addressLow);
-    raw_memory.get(bp_raw);
+    rawMemory.position(map.addressLow);
+    rawMemory.get(bp_raw);
 
     assertTrue("mem_orig and bp_mem",
 	       Arrays.equals(mem_orig, bp_mem));
@@ -669,8 +690,8 @@ public class TestTaskObserverCode extends TestLib
 
     memory.position(map.addressLow);
     memory.get(bp_mem);
-    raw_memory.position(map.addressLow);
-    raw_memory.get(bp_raw);
+    rawMemory.position(map.addressLow);
+    rawMemory.get(bp_raw);
 
     assertTrue("deleted mem_orig and bp_mem",
                Arrays.equals(mem_orig, bp_mem));


hooks/post-receive
--
frysk system monitor/debugger


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]