public inbox for frysk-cvs@sourceware.org
help / color / mirror / Atom feed
From: cagney@sourceware.org
To: frysk-cvs@sourceware.org
Subject: [SCM]  master: Pass up simple int in Proc constructor.
Date: Thu, 14 Feb 2008 18:53:00 -0000	[thread overview]
Message-ID: <20080214185331.30959.qmail@sourceware.org> (raw)

The branch, master has been updated
       via  536bdb48547f55541dca484b61a1ba930363e407 (commit)
      from  4b2ea8d18773d7a72663c59a6817828be8cd8bbc (commit)

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

- Log -----------------------------------------------------------------
commit 536bdb48547f55541dca484b61a1ba930363e407
Author: Andrew Cagney <cagney@redhat.com>
Date:   Thu Feb 14 13:53:04 2008 -0500

    Pass up simple int in Proc constructor.
    
    frysk-core/frysk/proc/ChangeLog
    2008-02-14  Andrew Cagney  <cagney@redhat.com>
    
    	* Proc.java (pid): New; Pass to constructors.
    
    frysk-core/frysk/proc/dead/ChangeLog
    2008-02-14  Andrew Cagney  <cagney@redhat.com>
    
    	* DeadProc.java: Update to match Proc.
    	* LinuxCoreHost.java: Ditto.
    	* LinuxExeHost.java: Ditto.
    	* LinuxExeProc.java: Ditto.
    	* LinuxCoreProc.java: Ditto.
    
    frysk-core/frysk/proc/dummy/ChangeLog
    2008-02-14  Andrew Cagney  <cagney@redhat.com>
    
    	* DummyProc.java: Update to match Proc.
    
    frysk-core/frysk/proc/live/ChangeLog
    2008-02-14  Andrew Cagney  <cagney@redhat.com>
    
    	* LiveProc.java: Replace ProcId with ProcessIdentifier and int.
    	* LinuxPtraceProc.java: Update.
    	* LinuxPtraceHost.java: Ditto.
    
    frysk-sys/frysk/rsl/ChangeLog
    2008-02-14  Andrew Cagney  <cagney@redhat.com>
    
    	* Log.java: Add more log methods.

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

Summary of changes:
 frysk-core/frysk/proc/ChangeLog                 |    4 ++++
 frysk-core/frysk/proc/Proc.java                 |   16 +++++++++-------
 frysk-core/frysk/proc/dead/ChangeLog            |    7 +++++++
 frysk-core/frysk/proc/dead/DeadProc.java        |    5 ++---
 frysk-core/frysk/proc/dead/LinuxCoreHost.java   |    7 ++++---
 frysk-core/frysk/proc/dead/LinuxCoreProc.java   |    7 +++----
 frysk-core/frysk/proc/dead/LinuxExeHost.java    |    2 +-
 frysk-core/frysk/proc/dead/LinuxExeProc.java    |    7 ++-----
 frysk-core/frysk/proc/dummy/ChangeLog           |    2 ++
 frysk-core/frysk/proc/dummy/DummyProc.java      |    3 +--
 frysk-core/frysk/proc/live/ChangeLog            |    4 ++++
 frysk-core/frysk/proc/live/LinuxPtraceHost.java |    3 +--
 frysk-core/frysk/proc/live/LinuxPtraceProc.java |    6 +++---
 frysk-core/frysk/proc/live/LiveProc.java        |   14 +++++++++-----
 frysk-sys/frysk/rsl/ChangeLog                   |    4 ++++
 frysk-sys/frysk/rsl/Log.java                    |    5 +++++
 16 files changed, 61 insertions(+), 35 deletions(-)

First 500 lines of diff:
diff --git a/frysk-core/frysk/proc/ChangeLog b/frysk-core/frysk/proc/ChangeLog
index c3e52f0..260a1b0 100644
--- a/frysk-core/frysk/proc/ChangeLog
+++ b/frysk-core/frysk/proc/ChangeLog
@@ -1,3 +1,7 @@
+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
diff --git a/frysk-core/frysk/proc/Proc.java b/frysk-core/frysk/proc/Proc.java
index 2e87a8e..65a0ba7 100644
--- a/frysk-core/frysk/proc/Proc.java
+++ b/frysk-core/frysk/proc/Proc.java
@@ -96,8 +96,9 @@ public abstract class Proc implements Comparable {
     private final Host host;
 
     public int getPid() {
-	return id.hashCode();
+	return pid;
     }
+    private final int pid;
 
     /**
      * Return the basename of the program that this process is
@@ -148,9 +149,10 @@ public abstract class Proc implements Comparable {
      * Create a new Proc skeleton. Since PARENT could be NULL,
      * explicitly specify the HOST.
      */
-    private Proc(ProcId id, Proc parent, Host host, Task creator) {
+    private Proc(int pid, Proc parent, Host host, Task creator) {
 	this.host = host;
-	this.id = id;
+	this.pid = pid;
+	this.id = new ProcId(pid);
 	this.parent = parent;
 	this.creator = creator;
 	// Keep parent informed.
@@ -164,8 +166,8 @@ public abstract class Proc implements Comparable {
      * Create a new, unattached, running, Proc. Since PARENT could be
      * NULL, explicitly specify the HOST.
      */
-    protected Proc(Host host, Proc parent, ProcId id) {
-	this(id, parent, host, null);
+    protected Proc(Host host, Proc parent, int pid) {
+	this(pid, parent, host, null);
 	logger.log(Level.FINEST, "{0} new - create unattached running proc\n", this);
     }
 
@@ -179,8 +181,8 @@ public abstract class Proc implements Comparable {
      * a Task, while it has the Observable, it doesn't have the
      * containing proc.
      */
-    protected Proc(Task task, ProcId forkId) {
-	this(forkId, task.getProc(), task.getProc().getHost(), task);
+    protected Proc(Task task, int fork) {
+	this(fork, task.getProc(), task.getProc().getHost(), task);
 	logger.log(Level.FINE, "{0} new - create attached running proc\n", this);
     }
 
diff --git a/frysk-core/frysk/proc/dead/ChangeLog b/frysk-core/frysk/proc/dead/ChangeLog
index aa3fdd0..d3ef403 100644
--- a/frysk-core/frysk/proc/dead/ChangeLog
+++ b/frysk-core/frysk/proc/dead/ChangeLog
@@ -1,5 +1,12 @@
 2008-02-14  Andrew Cagney  <cagney@redhat.com>
 
+	* DeadProc.java: Update to match Proc.
+	* LinuxCoreHost.java: Ditto.
+	* LinuxExeHost.java: Ditto.
+	* LinuxExeProc.java: Ditto.
+
+	* LinuxCoreProc.java: Ditto.
+
 	* DeadTask.java: Update to match Task.
 	* LinuxCoreTask.java: Ditto.
 	* LinuxExeTask.java: Ditto.
diff --git a/frysk-core/frysk/proc/dead/DeadProc.java b/frysk-core/frysk/proc/dead/DeadProc.java
index 3e8c373..d89f3a6 100644
--- a/frysk-core/frysk/proc/dead/DeadProc.java
+++ b/frysk-core/frysk/proc/dead/DeadProc.java
@@ -41,7 +41,6 @@ package frysk.proc.dead;
 
 import java.util.logging.Level;
 import frysk.proc.Proc;
-import frysk.proc.ProcId;
 import frysk.proc.Host;
 import frysk.proc.Manager;
 import frysk.proc.ProcEvent;
@@ -53,8 +52,8 @@ import frysk.proc.ProcEvent;
  */
 
 public abstract class DeadProc extends Proc {
-    DeadProc(Host host, Proc parent, ProcId id) {
-	super(host, parent, id);
+    DeadProc(Host host, Proc parent, int pid) {
+	super(host, parent, pid);
     }
 
     /**
diff --git a/frysk-core/frysk/proc/dead/LinuxCoreHost.java b/frysk-core/frysk/proc/dead/LinuxCoreHost.java
index 10d81a3..1ea397d 100644
--- a/frysk-core/frysk/proc/dead/LinuxCoreHost.java
+++ b/frysk-core/frysk/proc/dead/LinuxCoreHost.java
@@ -179,14 +179,15 @@ public class LinuxCoreHost extends DeadHost {
 	    final ElfPrpsinfo coreProc = ElfPrpsinfo.decode(proc_pid);
 	    final ProcId procId = new ProcId(coreProc.getPrPid());
 	    // Currently there can only be one process per core file.
-	    // What happens when we have two core files denoting the same
-	    // process/pid? Leave the test here for now.
+	    // What happens when we have two core files denoting the
+	    // same process/pid? Leave the test here for now.
 
 	    Proc proc = (Proc) procPool.get(procId);
 	    if (proc == null) {
 		// core file processes have no parents as thy are captured
 		// in isolation, and reconstructed.
-		proc = new LinuxCoreProc(proc_pid, LinuxCoreHost.this, procId);
+		proc = new LinuxCoreProc(proc_pid, LinuxCoreHost.this,
+					 coreProc.getPrPid());
 	    }
 
 	    addedProcs.add(proc);
diff --git a/frysk-core/frysk/proc/dead/LinuxCoreProc.java b/frysk-core/frysk/proc/dead/LinuxCoreProc.java
index 5ea4396..7e7fe87 100644
--- a/frysk-core/frysk/proc/dead/LinuxCoreProc.java
+++ b/frysk-core/frysk/proc/dead/LinuxCoreProc.java
@@ -55,7 +55,6 @@ import frysk.sys.proc.AuxvBuilder;
 import java.util.Iterator;
 import java.io.File;
 import java.util.ArrayList;
-import frysk.proc.ProcId;
 import frysk.proc.Task;
 import frysk.proc.Auxv;
 import frysk.proc.MemoryMap;
@@ -78,12 +77,12 @@ public class LinuxCoreProc extends DeadProc {
     private static final Log fine = Log.fine(LinuxCoreProc.class);
 
 
-    public LinuxCoreProc(ElfData data, LinuxCoreHost host, ProcId procId ) {
-	super(host, null, procId);
-	fine.log(this, "LinuxCoreProc(ElfData, LinuxCoreHost, ProcId)");
+    public LinuxCoreProc(ElfData data, LinuxCoreHost host, int pid) {
+	super(host, null, pid);
 	this.elfData = data;
 	this.elfProc = ElfPrpsinfo.decode(elfData);
 	this.corefileBackEnd = host.coreFile;
+	fine.log(this, "LinuxCoreProc elfData", data, "host", host, "pid", pid);
 
 	// Executable is null (non-specified), find the executable
 	// as it is written in the corefile. 
diff --git a/frysk-core/frysk/proc/dead/LinuxExeHost.java b/frysk-core/frysk/proc/dead/LinuxExeHost.java
index 9a78796..79ea200 100644
--- a/frysk-core/frysk/proc/dead/LinuxExeHost.java
+++ b/frysk-core/frysk/proc/dead/LinuxExeHost.java
@@ -120,7 +120,7 @@ public class LinuxExeHost extends DeadHost {
   	{
   	  // executable file processes have no parents as thy are captured
   	  // in isolation, and reconstructed.
-  	  proc = new LinuxExeProc(proc_pid,LinuxExeHost.this,procId);
+  	  proc = new LinuxExeProc(proc_pid,LinuxExeHost.this);
   	}
 
         addedProcs.add(proc);
diff --git a/frysk-core/frysk/proc/dead/LinuxExeProc.java b/frysk-core/frysk/proc/dead/LinuxExeProc.java
index 72acd75..02add4d 100644
--- a/frysk-core/frysk/proc/dead/LinuxExeProc.java
+++ b/frysk-core/frysk/proc/dead/LinuxExeProc.java
@@ -48,20 +48,17 @@ import frysk.isa.ISA;
 import frysk.isa.ElfMap;
 import frysk.proc.Auxv;
 import frysk.proc.MemoryMap;
-import frysk.proc.ProcId;
 
 public class LinuxExeProc extends DeadProc {
 
     private ElfData elfData = null;
     ArrayList metaData = new ArrayList();
     LinuxExeHost host = null;
-    ProcId id = null;	
 
-    public LinuxExeProc(ElfData data, LinuxExeHost host, ProcId id) {
-	super(host, null, id);
+    public LinuxExeProc(ElfData data, LinuxExeHost host) {
+	super(host, null, 0);
 	this.host = host;
 	this.elfData = data;
-	this.id = id;
 	sendRefresh();
 	buildMetaData();
     }
diff --git a/frysk-core/frysk/proc/dummy/ChangeLog b/frysk-core/frysk/proc/dummy/ChangeLog
index d71dfa6..565fc8e 100644
--- a/frysk-core/frysk/proc/dummy/ChangeLog
+++ b/frysk-core/frysk/proc/dummy/ChangeLog
@@ -1,5 +1,7 @@
 2008-02-14  Andrew Cagney  <cagney@redhat.com>
 
+	* DummyProc.java: Update to match Proc.
+
 	* DummyTask.java: Update to match Task.
 
 2008-02-08  Andrew Cagney  <cagney@redhat.com>
diff --git a/frysk-core/frysk/proc/dummy/DummyProc.java b/frysk-core/frysk/proc/dummy/DummyProc.java
index 1333e1f..3312238 100644
--- a/frysk-core/frysk/proc/dummy/DummyProc.java
+++ b/frysk-core/frysk/proc/dummy/DummyProc.java
@@ -40,13 +40,12 @@
 package frysk.proc.dummy;
 
 import frysk.proc.Auxv;
-import frysk.proc.ProcId;
 import frysk.proc.MemoryMap;
 import frysk.proc.Proc;
 
 public class DummyProc extends Proc {
     public DummyProc(DummyHost host, int pid) {
-	super(host, null, new ProcId(pid));
+	super(host, null, pid);
     }
     public DummyProc() {
 	this(new DummyHost(), 42);
diff --git a/frysk-core/frysk/proc/live/ChangeLog b/frysk-core/frysk/proc/live/ChangeLog
index d370c3e..ea26cdb 100644
--- a/frysk-core/frysk/proc/live/ChangeLog
+++ b/frysk-core/frysk/proc/live/ChangeLog
@@ -1,5 +1,9 @@
 2008-02-14  Andrew Cagney  <cagney@redhat.com>
 
+	* LiveProc.java: Replace ProcId with ProcessIdentifier and int.
+	* LinuxPtraceProc.java: Update.
+	* LinuxPtraceHost.java: Ditto.
+
 	* LinuxPtraceProc.java: Update to match Status.
 	* LinuxPtraceTaskState.java: Ditto.
 	
diff --git a/frysk-core/frysk/proc/live/LinuxPtraceHost.java b/frysk-core/frysk/proc/live/LinuxPtraceHost.java
index 724ea42..08aecbe 100644
--- a/frysk-core/frysk/proc/live/LinuxPtraceHost.java
+++ b/frysk-core/frysk/proc/live/LinuxPtraceHost.java
@@ -45,7 +45,6 @@ import java.util.List;
 import java.util.LinkedList;
 import java.util.HashMap;
 import frysk.proc.Proc;
-import frysk.proc.ProcId;
 import frysk.sys.proc.Stat;
 import frysk.sys.proc.ProcBuilder;
 import java.util.Iterator;
@@ -150,7 +149,7 @@ public class LinuxPtraceHost extends LiveHost {
 		}
 		// .. and then add this process.
 		proc = new LinuxPtraceProc(LinuxPtraceHost.this, parent,
-					   new ProcId(pid.intValue()), stat);
+					   pid, stat);
 		added.add(proc);
 	    } else if (removed.containsKey(pid)) {
 		// Process 1 never gets a [new] parent.
diff --git a/frysk-core/frysk/proc/live/LinuxPtraceProc.java b/frysk-core/frysk/proc/live/LinuxPtraceProc.java
index e5808f5..933bd79 100644
--- a/frysk-core/frysk/proc/live/LinuxPtraceProc.java
+++ b/frysk-core/frysk/proc/live/LinuxPtraceProc.java
@@ -41,7 +41,6 @@ package frysk.proc.live;
 
 import frysk.proc.Action;
 import frysk.sys.proc.Exe;
-import frysk.proc.ProcId;
 import frysk.proc.Proc;
 import frysk.proc.Task;
 import frysk.proc.Host;
@@ -75,7 +74,8 @@ public class LinuxPtraceProc extends LiveProc {
      * Create a new detached process.  RUNNING makes no sense here.
      * Since PARENT could be NULL, also explicitly pass in the host.
      */
-    public LinuxPtraceProc(Host host, Proc parent, ProcId pid, Stat stat) {
+    public LinuxPtraceProc(Host host, Proc parent,
+			   ProcessIdentifier pid, Stat stat) {
 	super(host, parent, pid);
 	((LinuxPtraceHost)host).putProc(ProcessIdentifierFactory.create(pid.hashCode()), this);
 	this.newState = LinuxPtraceProcState.initial(false);
@@ -87,7 +87,7 @@ public class LinuxPtraceProc extends LiveProc {
      * Task.
      */
     public LinuxPtraceProc(Task task, ProcessIdentifier fork) {
-	super(task, new ProcId(fork.intValue()));
+	super(task, fork);
 	((LinuxPtraceHost)getHost()).putProc(fork, this);
 	this.newState = LinuxPtraceProcState.initial(true);
 	this.breakpoints = new BreakpointAddresses(this);
diff --git a/frysk-core/frysk/proc/live/LiveProc.java b/frysk-core/frysk/proc/live/LiveProc.java
index e5268ad..9d46f0e 100644
--- a/frysk-core/frysk/proc/live/LiveProc.java
+++ b/frysk-core/frysk/proc/live/LiveProc.java
@@ -40,9 +40,9 @@
 package frysk.proc.live;
 
 import frysk.proc.Proc;
-import frysk.proc.ProcId;
 import frysk.proc.Host;
 import frysk.proc.Task;
+import frysk.sys.ProcessIdentifier;
 
 /**
  * A live Host/Proc/Task is characterised by its stateful nature;
@@ -51,10 +51,14 @@ import frysk.proc.Task;
  */
 
 abstract class LiveProc extends Proc {
-    LiveProc(Host host, Proc parent, ProcId pid) {
-	super(host, parent, pid);
+    final ProcessIdentifier pid;
+
+    LiveProc(Host host, Proc parent, ProcessIdentifier pid) {
+	super(host, parent, pid.intValue());
+	this.pid = pid;
     }
-    LiveProc(Task task, ProcId forkId) {
-	super(task, forkId);
+    LiveProc(Task task, ProcessIdentifier fork) {
+	super(task, fork.intValue());
+	this.pid = fork;
     }
 }
diff --git a/frysk-sys/frysk/rsl/ChangeLog b/frysk-sys/frysk/rsl/ChangeLog
index cfce596..6784735 100644
--- a/frysk-sys/frysk/rsl/ChangeLog
+++ b/frysk-sys/frysk/rsl/ChangeLog
@@ -1,3 +1,7 @@
+2008-02-14  Andrew Cagney  <cagney@redhat.com>
+
+	* Log.java: Add more log methods.
+
 2008-02-12  Andrew Cagney  <cagney@redhat.com>
 
 	* Node.java (set(Level)): Return the node.
diff --git a/frysk-sys/frysk/rsl/Log.java b/frysk-sys/frysk/rsl/Log.java
index be46a3b..e637120 100644
--- a/frysk-sys/frysk/rsl/Log.java
+++ b/frysk-sys/frysk/rsl/Log.java
@@ -474,6 +474,11 @@ public final class Log {
 	    return;
 	prefix(self); print(p1); print(p2); print(p3); print(p4); print(p5); print(p6); suffix();
     }
+    public void log(Object self, String p1, Object p2, String p3, Object p4, String p5, int p6) {
+	if (!logging)
+	    return;
+	prefix(self); print(p1); print(p2); print(p3); print(p4); print(p5); print(p6); suffix();
+    }
     public void log(Object self, String p1, Object p2, String p3, Object p4, String p5, Object p6) {
 	if (!logging)
 	    return;


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


                 reply	other threads:[~2008-02-14 18:53 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080214185331.30959.qmail@sourceware.org \
    --to=cagney@sourceware.org \
    --cc=frysk-cvs@sourceware.org \
    --cc=frysk@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).