Dear Hewlett Packard Customer,
We would like to advise you of a set of situations that Hewlett-Packard has
identified with MPE/iX software which, in very rare circumstances, could lead to
data corruption on HP e3000 systems running MPE/iX Releases 6.5, 7.0, and 7.5.
Hewlett-Packard has software patches for these releases ready to correct these
situations, MPENX11 and MILNX10, available at the HP ITRC (http://itrc.hp.com/)
or via your HP Support Representative. Though Hewlett-Packard believes very few,
if any, customers are at risk, HP strongly recommends that all customers take
the following corrective actions:
- Install MPENX11 and MILNX10 at your earliest possible convenience (see the
patch descriptions below)
- Your non-HP applications may be impacted: examine the applications running
on your systems to determine if they meet the criteria to require a recompile
(see the notes on patch MILNX10 below) For those interested in more technical
details further information is available on the JAZZ web server:
Patch MPENX11 addresses the following issues
- SORT.PUB.SYS and programmatic calls to HPSORTOUTPUT:: Customers on
MPE/iX Release 6.5, 7.0 or 7.5 who sort 4GB or more of data are at risk. When
either interface is used to sort more than 4 GB of data, the returned record
length could in rare instances be corrupted. If the record length returned is
less than it should be then data could be lost.
- MPE/iX OS millicode handling of long pointer access to large files::
When the OS copies data from a long pointer location only one byte from a range
is moved if, and only if
that range starts six, five, four, three or two bytes from the end of a
four gigabyte space and the length of the move transfers all remaining
bytes of the space. No other source address or transfer length combinations are
affected nor are transfers to such addresses.
Patch MILNX10 addresses potential issues with
It is possible for non-HP Software to have an issue similar to the MPE/iX OS
millicode issue described above and thus be at risk of corrupting data.
Addressing this issue may require that non-HP Software be recompiled after
installation of MILNX10.
Recompilation is not required for programs reading data exclusively through
MPE/iX File System intrinsics like FREAD, FREADDIR or HP compiler library file
access routines such as C/iX read(), Pascal/iX read(), COBOL READ, as long as
patch MPENX11is installed. A recompile may be required if customers and ISVs
have written code to read data from files larger than four gigabytes using Large
Mapped pointers, AND used move_fast or code statements that result in a call to
$$lr_unk_unk_long or $$lr_na_unk_long. Then, as in the OS issue above, if data
is moved starting at locations six or fewer bytes from the end of a four
gigabyte boundary, millicode could silently move less than the requested amount
of data. HP recommends that customers and ISVs rebuild any applications which
read data from large files via long pointers to include the new version of the
$$lr_unk_unk_long and $$lr_na_unk_long routines via the new MILLI.LIB.SYS
delivered in MILNX10.
If you have questions or require help, please contact your local HP support
representative or sales office. We appreciate your business and look forward to
serving your future computing needs.