|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0420 Details Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 0420.
Report 0420 Actions
Problem Report Number 0420 Submitter's Classification Test Suite problem State Resolved Resolution Rejected (REJ) Problem Resolution ID REJ.X.0039 Raised 1993-11-11 08:00 Updated 2003-03-13 08:00 Published null Product Standard Internationalised System Calls and Libraries (XPG4) Certification Program The Open Brand certification program Test Suite VSX4 version 4.2.4 Test Identification ANSI.os/genuts/free 1 Problem Summary PG4R.039 The strategy in test 1 seems flawed based on the XPG4 and ANSI C specifications. The basic assumption that the same memory area is allocated on the subsequent malloc() after a free(), is not specified... Problem Text
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
The strategy in test 1 seems flawed based on the XPG4 and ANSI C
specifications. The basic assumption that the same memory area is
allocated on the subsequent malloc() after a free(), is not specified
in XPG4 or ANSI. This assumption would require that an implementation
follow a specified algorithm for allocation of memory. Since no such
algorithm is specified by XPG4 or ANSI, the assumption made in the
test strategy is in error.
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Test Output
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
/tset/ANSI.os/genuts/free/T.free 1 Failed
Test Description:
free() frees the block pointed to by ptr and makes it available for
further allocation.
Posix Ref: Component FREE Assertion 8.1-04(A)
Test Strategy:
CREATE child process
CHILD process will
CALL malloc() to allocate a range of memory sizes
INITIALISE area of memory last allocated to contain NULL characters
CALL free() to free the area of memory last allocated
CALL malloc() to allocate same size of memory as that just freed
INITIALISE area of memory last allocated to contain non-NULL
characters
VERIFY that area of memory previously allocated contains non-NULL
characters (malloc() re-used freed memory)
Test Information:
failed to reuse freed memory for next malloc()
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
This request depends on the interpretation of the phrase "makes it available
for further allocation". The test attempts to make further allocations after
the memory has been freed and, in most implementations, finds that the freed
memory is available and used in these further allocations.
It is unclear whether this implementation makes the meory available for
later use by the process and the request would be enhanced by the inclusion
of some details as to the algorithm used in making used memory available for
further allocation.
It is likely that this request would be granted when this additional information
is made available.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Rejected (REJ) Review Conclusion
This interpretation request is refused.
Problem Reporting System Options:
- View Report 0420
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority