This is the mail archive of the frysk@sourceware.org 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]

Re: [SCM] master: Add a test testMemoryBufferCapacity() to TestByteBuffer.java


Zhao Shujing wrote:
This issue is to make sure the hightWater of memory bytebuffer is the
top location of the system.
I'm still not sure I'm following; what is the problem you encountered with .capacity() or is this a test to wire down an assumption?

Yes, it should be ISA dependent. Fixed patch for it:
-------------------------------
diff --git a/frysk-core/frysk/proc/live/TestByteBuffer.java
b/frysk-core/frysk/proc/live/TestByteBuffer.java
index d8d8063..921b477 100644
--- a/frysk-core/frysk/proc/live/TestByteBuffer.java
+++ b/frysk-core/frysk/proc/live/TestByteBuffer.java
@@ -40,9 +40,14 @@
package frysk.proc.live;


 import inua.eio.ByteBuffer;
+import frysk.isa.ISA;
 import frysk.junit.TestCase;
+import frysk.proc.Task;
 import frysk.testbed.AttachedSelf;
+import frysk.testbed.ExecCommand;
+import frysk.testbed.ExecOffspring;
 import frysk.testbed.LocalMemory;
+import frysk.testbed.TearDownFile;
 import frysk.sys.Ptrace.RegisterSet;
 import frysk.sys.Ptrace.AddressSpace;
 import frysk.proc.Manager;
@@ -58,13 +63,12 @@ public class TestByteBuffer
     private ByteBuffer[] addressBuffers;
     private ByteBuffer[] registerBuffers;

- private ByteBuffer memorySpaceByteBuffer;
-
public void setUp () throws Exception
{
int pid;
ByteBuffer addressSpaceByteBufferText;
ByteBuffer addressSpaceByteBufferData;
+ ByteBuffer memorySpaceByteBuffer;
ByteBuffer usrByteBuffer;
ByteBuffer registerByteBuffer;
ByteBuffer fpregisterByteBuffer;
@@ -266,12 +270,22 @@ public class TestByteBuffer
verifyPeeks(registerBuffers[i], addr, origBytes);
}
}
-
public void testMemoryBufferCapacity() {
if (unresolved(5394))
return;
- assertEquals("Memory Buffer Capacity: ", -1L,
- memorySpaceByteBuffer.capacity());
+ TearDownFile tmpFile = TearDownFile.create();
+ ExecOffspring child
+ = new ExecOffspring(new ExecCommand (new String[] {
+ "/bin/rm",
+ tmpFile.toString()
I'm not sure that ExecOffspring is what you need here as it doesn't put the task into an attached/stopped state; I suspect:
Task = new DaemonBlockedAtEntry("funit-slave").getMainTask().getISA();
be simpler?


+ }));
+ Task task = child.findTaskUsingRefresh(true);
+ if (task.getISA() == ISA.IA32)
+ assertEquals("Memory Buffer Capacity: ", 0xffffffffL,
+ task.getMemory().capacity());
+ if (task.getISA() == ISA.X8664)
+ assertEquals("Memory Buffer Capacity: ",
0xffffffffffffffffL,
+ task.getMemory().capacity());
}

There is also the PPC; the attribute is dependent on the ISA's word size, though, is something like:
switch (task.getISA().wordSize())
case 4: assert ... ; break;
case 8: assert ... ; break;
default: fail("unknown word size");
}
simplier?


is the test passing or still being skipped?

private class AsyncPeeks
--------------------------------
On Thu, 2007-11-22 at 12:09 -0500, Andrew Cagney wrote:
Pearly,

This change is 64-bit specific - on a 32-bit system, capacity is much smaller vis:

testMemoryBufferCapacity(frysk.proc.live.TestByteBuffer)junit.framework.AssertionFailedError: Memory Buffer Capacity: expected:<-1> but was:<4294967295>
at frysk.proc.live.TestByteBuffer.testMemoryBufferCapacity(TestRunner)
at frysk.junit.Runner.runCases(TestRunner)
at frysk.junit.Runner.runArchCases(TestRunner)
at frysk.junit.Runner.runTestCases(TestRunner)
at TestRunner.main(TestRunner)


perhaps if you explain the issue here then we can figure out the underlying problem.

Andrew

pzhao@sourceware.org wrote:
The branch, master has been updated
       via  77939fcf72c66c6891797c90a0e4a19ec9e013e4 (commit)
      from  04406050f6a4910464c1dd4756121123c9a3708b (commit)

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

- Log -----------------------------------------------------------------
commit 77939fcf72c66c6891797c90a0e4a19ec9e013e4
Author: Zhao Shujing <pearly.zhao@oracle.com>
Date:   Thu Nov 22 16:52:37 2007 +0800

Add a test testMemoryBufferCapacity() to TestByteBuffer.java

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

Summary of changes:
 frysk-core/frysk/proc/live/ChangeLog           |    4 ++++
 frysk-core/frysk/proc/live/TestByteBuffer.java |    8 +++++++-
 2 files changed, 11 insertions(+), 1 deletions(-)

First 500 lines of diff:
diff --git a/frysk-core/frysk/proc/live/ChangeLog b/frysk-core/frysk/proc/live/ChangeLog
index 81d75eb..04e2937 100644
--- a/frysk-core/frysk/proc/live/ChangeLog
+++ b/frysk-core/frysk/proc/live/ChangeLog
@@ -1,3 +1,7 @@
+2007-11-22 Zhao Shujing <pearly.zhao@oracle.com>
+
+ * TestByteBuffer.java(testMemoryBufferCapacity()): New test.
+
2007-10-29 Mark Wielaard <mwielaard@redhat.com>
* LinuxTaskState.java (sendContinue): Add logging.
diff --git a/frysk-core/frysk/proc/live/TestByteBuffer.java b/frysk-core/frysk/proc/live/TestByteBuffer.java
index 07625f1..f49bb83 100644
--- a/frysk-core/frysk/proc/live/TestByteBuffer.java
+++ b/frysk-core/frysk/proc/live/TestByteBuffer.java
@@ -58,12 +58,13 @@ public class TestByteBuffer
private ByteBuffer[] addressBuffers;
private ByteBuffer[] registerBuffers;
+ private ByteBuffer memorySpaceByteBuffer;
+
public void setUp () throws Exception
{
int pid;
ByteBuffer addressSpaceByteBufferText;
ByteBuffer addressSpaceByteBufferData;
- ByteBuffer memorySpaceByteBuffer;
ByteBuffer usrByteBuffer;
ByteBuffer registerByteBuffer;
ByteBuffer fpregisterByteBuffer;
@@ -265,6 +266,11 @@ public class TestByteBuffer
verifyPeeks(registerBuffers[i], addr, origBytes);
}
}
+
+ public void testMemoryBufferCapacity()
+ {
+ assertEquals("Memory Buffer Capacity: ", -1L, memorySpaceByteBuffer.capacity());
+ }
private class AsyncPeeks
implements Runnable
{



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]