From: Andrew Cagney <cagney@redhat.com>
To: pearly.zhao@oracle.com
Cc: frysk@sourceware.org
Subject: Re: [SCM] master: Add a test testMemoryBufferCapacity() to TestByteBuffer.java
Date: Sat, 24 Nov 2007 00:07:00 -0000 [thread overview]
Message-ID: <47476AEF.4080900@redhat.com> (raw)
In-Reply-To: <1195791150.22218.13.camel@linux-pzhao.site>
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
>>>
>>>
>
>
next prev parent reply other threads:[~2007-11-24 0:07 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20071122090733.7335.qmail@sourceware.org>
2007-11-22 17:10 ` Andrew Cagney
2007-11-23 4:10 ` Zhao Shujing
2007-11-24 0:07 ` Andrew Cagney [this message]
2007-11-26 2:53 ` Zhao Shujing
2007-11-27 14:45 ` Andrew Cagney
2007-11-28 8:21 ` Zhao Shujing
2007-11-29 10:37 ` Mark Wielaard
2007-11-29 10:44 ` Mark Wielaard
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=47476AEF.4080900@redhat.com \
--to=cagney@redhat.com \
--cc=frysk@sourceware.org \
--cc=pearly.zhao@oracle.com \
/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).