All Patches for PowerMAX 4.2 are:
audit-001 base-017 crypt-001 ie-001 ncr-001
base-001 base-018 crypt-002 inet-001 ncr-002
base-002 cld-001 crypt-int-001 inet-002 netboot-001
base-003 cluster-001 dec-001 inet-003 nfs-001
base-004 cluster-002 dec-002 inet-004 nfs-002
base-005 cluster-003 dec-003 inet-005 ngpib-001
base-006 cluster-004 dec-004 inet-006 nsu-001
base-007 cluster-005 dec-005 inet-007 nsu-002
base-008 cluster-006 dec-006 inet-008 pg-001
base-009 cmds-001 dec-007 librt-001 rpc-001
base-010 cmds-002 dec-008 man-001 via-001
base-011 cmds-003 dr11w-001 man-002 vp-001
base-013 crosslibs-001 fbs-001 man-003 vp-002
base-014 crosslibs-002 fd-001 man-004 vp-003
base-015 crosslibs-003 fibre-001 man-005 zld-001
base-016 crosslibs-004 ide-001 man-006 zld-002
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: audit-001
Date Issued: 09/30/98 09:04:20
Software Package: audit pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto nh
Platforms: All PowerMAX OS 4.2 platforms
Related Patches: base-013 (Power Hawk 610/620, PowerStack, PowerStack II),
base-014 (Power Hawk 640, PowerStack II multi-processor),
base-015 (Night Hawk 6200/6800, TurboHawk, PowerMAXION)
Related SARS: none
Brief Description:
PowerMAX OS 4.2 audit package release updates
Problem Description:
1. Added audit package support for the new nvram(2) system call.
Problem Resolution:
1. Entries are added to the audit check function table and the audit
recording table any time a new system call is defined in the kernel.
Entries for the new nvram(2) system call were added to each of these
tables and were set to indicate that no auditing should be performed
by the kernel for this system call.
Object To Be Replaced:
/etc/conf/pack.d/audit/Driver.o
Special Conditions for Installation:
None.
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: audit-001
Date Issued: 09/30/98 09:04:20
Software Package: audit pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto nh
Platforms: All PowerMAX OS 4.2 platforms
Related Patches: base-013 (Power Hawk 610/620, PowerStack, PowerStack II),
base-014 (Power Hawk 640, PowerStack II multi-processor),
base-015 (Night Hawk 6200/6800, TurboHawk, PowerMAXION)
Related SARS: none
Brief Description:
PowerMAX OS 4.2 audit package release updates
Problem Description:
1. Added audit package support for the new nvram(2) system call.
Problem Resolution:
1. Entries are added to the audit check function table and the audit
recording table any time a new system call is defined in the kernel.
Entries for the new nvram(2) system call were added to each of these
tables and were set to indicate that no auditing should be performed
by the kernel for this system call.
Object To Be Replaced:
/etc/conf/pack.d/audit/Driver.o
Special Conditions for Installation:
None.
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: audit-001
Date Issued: 09/30/98 09:04:20
Software Package: audit pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto nh
Platforms: All PowerMAX OS 4.2 platforms
Related Patches: base-013 (Power Hawk 610/620, PowerStack, PowerStack II),
base-014 (Power Hawk 640, PowerStack II multi-processor),
base-015 (Night Hawk 6200/6800, TurboHawk, PowerMAXION)
Related SARS: none
Brief Description:
PowerMAX OS 4.2 audit package release updates
Problem Description:
1. Added audit package support for the new nvram(2) system call.
Problem Resolution:
1. Entries are added to the audit check function table and the audit
recording table any time a new system call is defined in the kernel.
Entries for the new nvram(2) system call were added to each of these
tables and were set to indicate that no auditing should be performed
by the kernel for this system call.
Object To Be Replaced:
/etc/conf/pack.d/audit/Driver.o
Special Conditions for Installation:
None.
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-001
Date Issued: 03/23/98 17:50:15
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 610, 620, PowerStack, PowerStack II
Related Patches: none
Related SARS: HM12323, HM12326
Brief Description:
PowerMAX OS 4.2 base package release updates.
Problem Description:
1. Write errors may occur using cp or cpio on xfs file systems
if the file system is fragmented, even though df shows
plenty of free space is available.
2. mkfs -F xfs (or newfs -F xfs) allows an extent size of 1MB
to be selected with the default fragment size (512 bytes)
using the -e 1024K option. This file system will become
corrupted due to xfs system pages being overwritten by user
files.
3. PANIC: kernel-mode address fault on user address 0x4E800048
The C91007a.X ADA test issued a server_wake1() system call
with argument 1 which is the global_lwpid_t server = 0.
server_wake1() called lwp_find() which is supposed to locate
the proc and lwp structures for the supplied global_lwpid_t.
However, a value of 0 caused lwp_find() to try to reference
p->p_lwpdir[-1]. This picked up a garbage address (0x4E800020)
for the lwp structure which resulted in a reference to an
unallocated memory location (0x4E800048).
4. Panics due to priority inheritance list corruption. This only
occurs with multi-lwp processes.
5. A race condition existed in the special file system driver
that resulted in various "Alignment Fault" kernel panics.
These faults could occur when closing a character special
device followed very closely by an open of the same device.
6. A user-level interrupts fix for SAR HM12323.
When a LWP is disconnected from an interrupt vector
(ICON_DISC), and a deallocation of that same vector (ICON_IVEC
II_DEALLOCATE) occurs at about the same point in time, then
applications are unable to re-allocate that same interrupt
vector until the system is rebooted.
7. NIS doesn't work with cpio and tar (because they are built
statically).
8. The console driver does not support modem control ioctls
(TIOCMGET/TIOCMSET).
9. The console driver fails to drop DTR on COM2 when HUPCL
has been specified and 6 or 8 bit character widths are
used.
10. Loosely-coupled multiprocessors experience random hangs or
panics during periods of heavy VME networking activity.
11. When a kernel panic occurs, the machine drops into kdb as expected.
However, once the kdb command "q" is given to exit kdb and continue
with the dump, the machine will attempt to write the dump but almost
immediately drop into the console debugger. The panicking CPU never
has a chance to complete the dump because the non-panicking CPU
enters the console debugger and interrupts the panicking CPU.
12. When the console debugger is entered, sometimes CPU 1 fails to halt.
CPU 0, upon entering the console debugger, sends an inter-processor
interrupt (IPI 3) to CPU 1 in order to force it into the console
debugger. This interrupt is not always recognized by CPU 1.
13. When CPU 1 is the first CPU to enter the console debugger, the
machine will hang up anywhere from 30 seconds to 3 minutes. Once
CPU 0 enters the console debugger, a flag is set in the console
debugger code indicating that CPU 0 halted. However, this flag is
never cleared upon exit from the console debugger. When CPU 1
subsequently enters the console debugger first, it sees that CPU 0
has been flagged as being halted when it in reality has not halted.
Because of this, CPU 1 does not send inter-processor interrupt
(IPI 3) to CPU 0 to force it into the console debugger and spins
waiting to be started by CPU 0.
14. Changes need to be made to /etc/conf/pack.d/sbc/stubs.c to allow a
kernel to be built on a machine that has the FBS package installed
but not the cluster package.
15. Temporary file handling using writes to xfs files that have
been opened then unlinked fails with EINVAL returned. For
example, this happens when using tmpfile(3S) on an xfs file system.
Problem Resolution:
1. Prior to this fix, xfs selected the size of the first file
extent based on the size of the first write to the file up
to a limit of 1MB. This limit is now set to the file
system extent size which is determined when the file system
was created (default 64KB). You can use "fstyp -v" to see
the file system extent size. See mkfs_xfs(1M) man page for
how to set a larger file system extent size if you prefer
to have xfs default to large extents.
Note this change has no effect on the behaviour of
fallocate(3X).
2. mkfs for xfs has been changed to prohibit the combination of
an extent size of 1024K with a fragment size of 512 bytes.
3. lwp_find() will now check for and return (lwp_t *)0 if
the llwpid portion of the supplied global_lwpid_t is 0.
4. The priority inheritance list was not correctly initialized when
creating new lwps within an existing process.
5. Removed the race condition.
6. Close the race in the kernel between interrupt vector
deallocations and disconnecting a LWP from an interrupt
vector, so that the interrupt vector is always properly
deallocated, thus allowing future allocations of that same
interrupt vector to succeed.
7. Build static and dynamic versions of tar and cpio. Dynamic
by default, in /usr/bin. Static versions in /sbin.
8. Added support for TIOCMGET/TIOCMSET which works on all 4
COM ports. The driver now supports setting/resetting
TIOCM_DTR and TIOCM_RTS using TIOCMSET, and will report
the current state of the following lines using TIOCMGET:
TIOCM_DTR, TIOCM_RTS, TIOCM_CTS, TIOCM_CAR, TIOCM_RNG,
and TIOCM_DSR.
9. A variable in the DTR setting logic was not properly
initialized to zero. The stale value was inherited from
bits used to select character widths. When 6 or 8 bit
character widths were specified, one of the bits inherited
forced the assertion of DTR.
10. An inappropriate interrupt level was being used for vme
message passing which was incomparable with generic
"Streams" code. Fixed the sbc/vmemsg drivers to interrupt
at IPL5 which is compatible with "Streams" modules.
11. Add code to kernel pause_self() function to allow the non-panicking
CPU to drop IPL and spin until forced into the console debugger by
the panicking CPU.
12. Add code to cpu_serv() console debugger function to temporarily
boost the priority of IPI 3 from a very low priority of 0x1 to the
highest priority of 0xf when an inter-processor interrupt is to be
sent. The priority is returned to 0x1 by CPU 0 before it enters the
console debugger command prompt loop centry().
13. a. In the console debugger kern_restart() function, if the CPU to
be restarted is CPU 0, then its halted flag is cleared before
returning to context before the console debugger was entered.
b. In the console debugger runcpu() and stepcpu() functions,
CPU 0's halted flag is cleared before restarting it.
14. Make appropriate changes to the stubs source code file.
15. Corrected a regression introduced in code for xfs writes to
non-persistent files.
Object To Be Replaced:
/etc/conf/cf.d/intr.s
/etc/conf/pack.d/bsp2600/Driver.o
/etc/conf/pack.d/cons/Driver.o
/etc/conf/pack.d/mem/Driver.o
/etc/conf/pack.d/vme/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/sbc/stubs.c
/etc/conf/pack.d/specfs/Driver.o
/etc/conf/pack.d/svc/Driver.o
/etc/conf/pack.d/ui/Driver.o
/etc/conf/pack.d/xfs/Driver.o
/etc/fs/xfs/mkfs
/sbin/cpio.st
/sbin/tar.st
/stand/cp1
/usr/bin/cpio
/usr/lib/fs/xfs/mkfs
/usr/include/sys/vm_mdep.h
/usr/include/sys/z8536.h
/usr/sbin/tar
Special Conditions for Installation:
During installation of base-001, an updated version of /stand/cp1
will be installed and the new console overlay will be written to
partition 6 on the system disk. Following successful installation,
the system must be taken down and reset to load the new console
before rebooting. Failure to do so may result in unexpected or
unreliable behavior.
Possible Side Effects:
If the base-001 package is removed (pkgrm(1M)), the original
console will be re-written to partition 6 on the system disk. To
ensure there are no adverse side effects, the kernel should be
rebuilt (idbuild(1M)) and the system taken down and reset to load
the original console before rebooting the system.
Suggested procedure for removing base-001:
# pkgrm base-001
# /etc/conf/bin/idbuild -B
# sync
# init 0
# Reset system
Follow the normal boot procedure detailed in the PowerMAX OS Product
Release Notes to load the new console and boot the new kernel.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-002
Date Issued: 03/23/98 18:02:53
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 640, PowerStack II (multi-processor only)
Related Patches: none
Related SARS: HM12323, HM12326
Brief Description:
PowerMAX OS 4.2 base package release updates.
Problem Description:
1. Write errors may occur using cp or cpio on xfs file systems
if the file system is fragmented, even though df shows
plenty of free space is available.
2. mkfs -F xfs (or newfs -F xfs) allows an extent size of 1MB
to be selected with the default fragment size (512 bytes)
using the -e 1024K option. This file system will become
corrupted due to xfs system pages being overwritten by user
files.
3. PANIC: kernel-mode address fault on user address 0x4E800048
The C91007a.X ADA test issued a server_wake1() system call
with argument 1 which is the global_lwpid_t server = 0.
server_wake1() called lwp_find() which is supposed to locate
the proc and lwp structures for the supplied global_lwpid_t.
However, a value of 0 caused lwp_find() to try to reference
p->p_lwpdir[-1]. This picked up a garbage address (0x4E800020)
for the lwp structure which resulted in a reference to an
unallocated memory location (0x4E800048).
4. Panics due to priority inheritance list corruption. This only
occurs with multi-lwp processes.
5. A race condition existed in the special file system driver
that resulted in various "Alignment Fault" kernel panics.
These faults could occur when closing a character special
device followed very closely by an open of the same device.
6. A user-level interrupts fix for SAR HM12323.
When a LWP is disconnected from an interrupt vector
(ICON_DISC), and a deallocation of that same vector (ICON_IVEC
II_DEALLOCATE) occurs at about the same point in time, then
applications are unable to re-allocate that same interrupt
vector until the system is rebooted.
7. NIS doesn't work with cpio and tar (because they are built
statically).
8. The console driver does not support modem control ioctls
(TIOCMGET/TIOCMSET).
9. The console driver fails to drop DTR on COM2 when HUPCL
has been specified and 6 or 8 bit character widths are
used.
10. Loosely-coupled multiprocessors experience random hangs or
panics during periods of heavy VME networking activity.
11. When a kernel panic occurs, the machine drops into kdb as expected.
However, once the kdb command "q" is given to exit kdb and continue
with the dump, the machine will attempt to write the dump but almost
immediately drop into the console debugger. The panicking CPU never
has a chance to complete the dump because the non-panicking CPU
enters the console debugger and interrupts the panicking CPU.
12. When the console debugger is entered, sometimes CPU 1 fails to halt.
CPU 0, upon entering the console debugger, sends an inter-processor
interrupt (IPI 3) to CPU 1 in order to force it into the console
debugger. This interrupt is not always recognized by CPU 1.
13. When CPU 1 is the first CPU to enter the console debugger, the
machine will hang up anywhere from 30 seconds to 3 minutes. Once
CPU 0 enters the console debugger, a flag is set in the console
debugger code indicating that CPU 0 halted. However, this flag is
never cleared upon exit from the console debugger. When CPU 1
subsequently enters the console debugger first, it sees that CPU 0
has been flagged as being halted when it in reality has not halted.
Because of this, CPU 1 does not send inter-processor interrupt
(IPI 3) to CPU 0 to force it into the console debugger and spins
waiting to be started by CPU 0.
14. Changes need to be made to /etc/conf/pack.d/sbc/stubs.c to allow a
kernel to be built on a machine that has the FBS package installed
but not the cluster package.
15. Temporary file handling using writes to xfs files that have
been opened then unlinked fails with EINVAL returned. For
example, this happens when using tmpfile(3S) on an xfs file system.
Problem Resolution:
1. Prior to this fix, xfs selected the size of the first file
extent based on the size of the first write to the file up
to a limit of 1MB. This limit is now set to the file
system extent size which is determined when the file system
was created (default 64KB). You can use "fstyp -v" to see
the file system extent size. See mkfs_xfs(1M) man page for
how to set a larger file system extent size if you prefer
to have xfs default to large extents.
Note this change has no effect on the behaviour of
fallocate(3X).
2. mkfs for xfs has been changed to prohibit the combination of
an extent size of 1024K with a fragment size of 512 bytes.
3. lwp_find() will now check for and return (lwp_t *)0 if
the llwpid portion of the supplied global_lwpid_t is 0.
4. The priority inheritance list was not correctly initialized when
creating new lwps within an existing process.
5. Removed the race condition.
6. Close the race in the kernel between interrupt vector
deallocations and disconnecting a LWP from an interrupt
vector, so that the interrupt vector is always properly
deallocated, thus allowing future allocations of that same
interrupt vector to succeed.
7. Build static and dynamic versions of tar and cpio. Dynamic
by default, in /usr/bin. Static versions in /sbin.
8. Added support for TIOCMGET/TIOCMSET which works on all 4
COM ports. The driver now supports setting/resetting
TIOCM_DTR and TIOCM_RTS using TIOCMSET, and will report
the current state of the following lines using TIOCMGET:
TIOCM_DTR, TIOCM_RTS, TIOCM_CTS, TIOCM_CAR, TIOCM_RNG,
and TIOCM_DSR.
9. A variable in the DTR setting logic was not properly
initialized to zero. The stale value was inherited from
bits used to select character widths. When 6 or 8 bit
character widths were specified, one of the bits inherited
forced the assertion of DTR.
10. An inappropriate interrupt level was being used for vme
message passing which was incomparable with generic
"Streams" code. Fixed the sbc/vmemsg drivers to interrupt
at IPL5 which is compatible with "Streams" modules.
11. Add code to kernel pause_self() function to allow the non-panicking
CPU to drop IPL and spin until forced into the console debugger by
the panicking CPU.
12. Add code to cpu_serv() console debugger function to temporarily
boost the priority of IPI 3 from a very low priority of 0x1 to the
highest priority of 0xf when an inter-processor interrupt is to be
sent. The priority is returned to 0x1 by CPU 0 before it enters the
console debugger command prompt loop centry().
13. a. In the console debugger kern_restart() function, if the CPU to
be restarted is CPU 0, then its halted flag is cleared before
returning to context before the console debugger was entered.
b. In the console debugger runcpu() and stepcpu() functions,
CPU 0's halted flag is cleared before restarting it.
14. Make appropriate changes to the stubs source code file.
15. Corrected a regression introduced in code for xfs writes to
non-persistent files.
Object To Be Replaced:
/etc/conf/cf.d/intr.s
/etc/conf/pack.d/bsp4600/Driver.o
/etc/conf/pack.d/cons/Driver.o
/etc/conf/pack.d/mem/Driver.o
/etc/conf/pack.d/vme/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/sbc/stubs.c
/etc/conf/pack.d/specfs/Driver.o
/etc/conf/pack.d/svc/Driver.o
/etc/conf/pack.d/ui/Driver.o
/etc/conf/pack.d/xfs/Driver.o
/etc/fs/xfs/mkfs
/sbin/cpio.st
/sbin/tar.st
/stand/cp1
/usr/bin/cpio
/usr/include/sys/vm_mdep.h
/usr/include/sys/z8536.h
/usr/lib/fs/xfs/mkfs
/usr/sbin/tar
Special Conditions for Installation:
During installation of base-002, an updated version of /stand/cp1
will be installed and the new console overlay will be written to
partition 6 on the system disk. Following successful installation,
the system must be taken down and reset to load the new console
before rebooting. Failure to do so may result in unexpected or
unreliable behavior.
Possible Side Effects:
If the base-002 package is removed (pkgrm(1M)), the original
console will be re-written to partition 6 on the system disk. To
ensure there are no adverse side effects, the kernel should be
rebuilt (idbuild(1M)) and the system taken down and reset to load
the original console before rebooting the system.
Suggested procedure for removing base-002:
# pkgrm base-002
# /etc/conf/bin/idbuild -B
# sync
# init 0
# Reset system
Follow the normal boot procedure detailed in the PowerMAX OS Product
Release Notes to load the new console and boot the new kernel.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-003
Date Issued: 03/24/98 10:19:38
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: nh
Platforms: Night Hawk 6200/6800, Night Hawk 6800 Turbo, PowerMAXION
Related Patches: none
Related SARS: HM12323
Brief Description:
PowerMAX OS 4.2 base package release updates.
Problem Description:
1. Write errors may occur using cp or cpio on xfs file systems
if the file system is fragmented, even though df shows
plenty of free space is available.
2. mkfs -F xfs (or newfs -F xfs) allows an extent size of 1MB
to be selected with the default fragment size (512 bytes)
using the -e 1024K option. This file system will become
corrupted due to xfs system pages being overwritten by user
files.
3. PANIC: kernel-mode address fault on user address 0x4E800048
The C91007a.X ADA test issued a server_wake1() system call
with argument 1 which is the global_lwpid_t server = 0.
server_wake1() called lwp_find() which is supposed to locate
the proc and lwp structures for the supplied global_lwpid_t.
However, a value of 0 caused lwp_find() to try to reference
p->p_lwpdir[-1]. This picked up a garbage address (0x4E800020)
for the lwp structure which resulted in a reference to an
unallocated memory location (0x4E800048).
4. Panics due to priority inheritance list corruption. This only
occurs with multi-lwp processes.
5. A race condition existed in the special file system driver
that resulted in various "Alignment Fault" kernel panics.
These faults could occur when closing a character special
device followed very closely by an open of the same device.
6. A user-level interrupts fix for SAR HM12323.
When a LWP is disconnected from an interrupt vector
(ICON_DISC), and a deallocation of that same vector (ICON_IVEC
II_DEALLOCATE) occurs at about the same point in time, then
applications are unable to re-allocate that same interrupt
vector until the system is rebooted.
7. NIS doesn't work with cpio and tar (because they are built
statically).
8. PowerMAX OS did not support the new 256Mbyte local memory map
on the TurboHAWK system.
9. PowerMAX OS did not support the posted write feature of the Tundra
VME interface on TurboHAWK systems.
10. There was an error in the setup of the Tundra VME interface on the
two global memory cards on TurboHAWK systems. This allowed DMA
data from VME devices destined for certain local memory ranges to
also be written to the global memory boards. This Tundra setup did
not correctly reflect the address map of TurboHAWK system memory.
11. Accessing of interval timers on processor cards 6 or 7 of TurboHAWK
systems caused a system panic. This was due to an incorrect
definition of the physical addresses of the timers on these boards.
12. Temporary file handling using writes to xfs files that have
been opened then unlinked fails with EINVAL returned. For
example, this happens when using tmpfile(3S) on an xfs file system.
13. 3 and 4 position frontplanes on TurboHAWK systems with the 256Mbyte
local memory map assign the last processor board to be board 6,
but the local memory address map treats it as if it were board 3.
Problem Resolution:
1. Prior to this fix, xfs selected the size of the first file
extent based on the size of the first write to the file up
to a limit of 1MB. This limit is now set to the file
system extent size which is determined when the file system
was created (default 64KB). You can use "fstyp -v" to see
the file system extent size. See mkfs_xfs(1M) man page for
how to set a larger file system extent size if you prefer
to have xfs default to large extents.
Note this change has no effect on the behaviour of
fallocate(3X).
2. mkfs for xfs has been changed to prohibit the combination of
an extent size of 1024K with a fragment size of 512 bytes.
3. lwp_find() will now check for and return (lwp_t *)0 if
the llwpid portion of the supplied global_lwpid_t is 0.
4. The priority inheritance list was not correctly initialized when
creating new lwps within an existing process.
5. Removed the race condition.
6. Close the race in the kernel between interrupt vector
deallocations and disconnecting a LWP from an interrupt
vector, so that the interrupt vector is always properly
deallocated, thus allowing future allocations of that same
interrupt vector to succeed.
7. Build static and dynamic versions of tar and cpio. Dynamic
by default, in /usr/bin. Static versions in /sbin.
8. Modified PowerMAX OS to take full advantage of the 256Mbyte local
memory map on TurboHAWK systems.
9. Modified PowerMAX OS to take advantage of the write posting feature
of the Tundra VME interface. This feature improves data throughput
on TurboHAWK systems.
10. The setup of the Tundra VME interface on TurboHAWK global memories
was changed to correctly reflect the address map of the TurboHAWK
system memory.
11. The address definitions of the interval timers on TurboHAWK boards
6 and 7 were corrected.
12. Corrected a regression introduced in code for xfs writes to
non-persistent files.
13. Code was added to convert processor board 6's local memory address
range to that of processor board 3's address range. This address
range is programmed into the Tundra VME interface.
Object To Be Replaced:
/etc/conf/pack.d/bspall/Driver.o
/etc/conf/pack.d/bsp6800t/Driver.o
/etc/conf/pack.d/mem/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/specfs/Driver.o
/etc/conf/pack.d/ui/Driver.o
/etc/conf/pack.d/vme/Driver.o
/etc/conf/pack.d/xfs/Driver.o
/etc/fs/xfs/mkfs
/sbin/cpio.st
/sbin/tar.st
/usr/bin/cpio
/usr/lib/fs/xfs/mkfs
/usr/include/sys/vm_mdep.h
/usr/include/vm/memory_p.h
/usr/sbin/tar
Special Conditions for Installation:
None.
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-004
Date Issued: 06/08/98 13:55:54
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 610/620, PowerStack, PowerStack II
Related Patches: vp-001
Related SARS: HM12390, HM12188, HM12359
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. If the xfs module is to be configured, the system needs to know that
xfsth must also be configured. This is important for cluster systems
for which the default is to not configure xfs.
2. Mentat UDP performance poor with STREAMS network buffers. Use of
other drivers which set a write offset on a stream may also be
affected.
A STREAMS driver can control how the stream head allocates space for
messages sent downstream. A write offset may be set which causes the
stream head to allocate additional memory for a driver to use. This
is generally done to avoid incurring memory allocation overheads.
The stream head was copying data from user space into kernel space
whenever it had a write offset set on a stream. This was being done
on the first element of a vectored write regardless of whether
network buffers were being used or not. In cases where the first
element of a vectored write was large this was incurring a large
processing overhead copying the data.
3. STREAMS network buffers fail if a transmission is greater than the
maximum PDU size allowed by a STREAMS driver. Normal STREAMS output
is unaffected.
If a user process attempts to send greater than the maximum PDU size
allowed by a STREAMS driver, the data is segmented at the stream
head. Each segment is transmitted separately. The segmentation
mechanism breaks down if network buffers are being used.
4. According to POSIX, a process whose priority is lowered goes to the
end of its new priority run queue. Thus, if there are other
processes already in that queue, the lowered lwp must give up the
CPU immediately to them and wait its turn. This was not happening.
Instead, the running lwp would continue to run until it either
voluntarily gave up the CPU, or some other event, such as I/O
completion, caused the CPU to re-evaluate which lwp was supposed to
be running.
5. SAR HM12390: A check to free an unneeded data structure was missing
in one execution path. The data structure was only unneeded if the
calling process had already opened a semaphore prior to this
invocation to open one.
6. Improve performance for disk striping (VP). Related to patch vp-001.
* on very large transfers, a substantial amount of time is spent
locking pages in memory.
7. The setrun(1) command would not accept an engine number > 3.
8. In PowerMAX OS 4.2, xfsrestore is unable to restore a tape created
by fsdump as it had in previous releases.
This causes the following error to be reported by xfsrestore:
. is not on tape
Root directory is not on tape
abort? [yn]
9. In some situations, the thread library may create many more
multiplexing (MUX) LWPs than the amount needed by the application.
The creation of all these extra MUX LWPs tends to waste system
resources and add unnecessary system overhead.
10. When a process attempts to fork(2), the fork(2) operation never
completes due to the fact that the rendezvous operation does not ever
complete. (The rendezvous operation brings all the other LWP's
into the kernel and holds them there in a known state while the
fork(2) operation then proceeds to duplicate the process image.)
The rendezvous operation fails to complete because one or more LWPs
in the process are currently blocked in the kernel via mq_send(3)
or mq_receive(3) with their rescheduling variable locked/held.
The RV lock prevents these LWPs from honoring the pending rendezvous
request until the RV is unlocked.
11. SARs HM12188, HM12359: The IDE device driver introduced in
PowerMAX OS 4.2 utilized the ISA interrupt levels from the floppy
(irq6) and line printer (irq7) drivers. This resulted in a
non-functional floppy driver and line printer driver on all Motorola
based platforms - even those that don't support IDE.
12. Systems get into a state where preemption on a CPU no longer occurs.
This "hangs" the CPU and may lead to a hung system. It occurs on
systems using FP-class (real-time) scheduling.
13. Panics on kernel data access exceptions when mmap'ing a process using
memory-based file systems. Problem seen using "usermap".
Problem Resolution:
1. Appropriate $depend entries are added to the xfs and xfsth files in
/etc/conf/mdevice.d/.
2. The stream head has been changed to allocate an additional message
block for drivers to write to during streams output. This is done if
there is a write offset set for a stream and the first element of a
vectored write (writev() ) or a write() is in a STREAMS network
buffer. The message block is chained to the beginning of the message
sent downstream to drivers.
3. The stream head has been changed to correctly update data structures
updated during the transmission of each segment of data.
4. The cause was the failure of the priocntl system call to nudge the
CPU after changing the lwp's priority (i.e., failed to force the CPU
to re-evaluate which lwp it was supposed to run). The lwp was
actually put at the end of its new run queue as it should have been,
but without the nudge the CPU did not notice the changed
circumstances of the lwp.
The solution was to expand the `if' statement that does nudging in
priocntl(2) to nudge if the new priority run queue was not empty
prior to the insertion.
5. Restored the missing check.
6. Improve performance for disk striping (VP).
* With segdev driver (bound shared memory), eliminate page locking
checks if entire segment is already locked in memory.
7. Rather than asking the system what engines were available, setrun(1)
had this hard-wired to 0-3. This command was appropriately changed
to ask for a mask of available engines.
8. The code in xfsrestore that handles tapes created by fsdump was fixed.
9. When the kernel sees the last LWP in a process about to block
itself, the kernel sends a SIGWAITING signal to the process's
SIGWAITING signal handler. This is done to give the thread library
a chance to create another MUX LWP if the process contains
additional MUX threads that are ready to run and that need a LWP to
execute on.
The thread library's SIGWAITING signal handler was modified so that
instead of always creating a new MUX LWP when there are MUX threads
that are ready to run, a check is now first made to see if there are
idle MUX LWPs. If so, then this signal handler just unblocks one of
these idle MUX LWPs instead of creating a new MUX LWP.
10. The fix is to unlock the rescheduling variable in the thread library
before calling block(2) in the kernel and to relock the rescheduling
variable upon return from the block(2) call.
11. The ISA interrupts have been reassigned to support all 4 ISA
devices: primary IDE, secondary IDE, floppy, and line printer.
New ISA irq assignments: 6=lpt, 7=fp, 10=p-ide, 14=s-ide.
12. Fix preemption disable counter which was being incorrectly
incremented/decremented in context switcher routine.
13. memfs mmap routine was incorrectly addressing beyond end of
pseudo-vnode.
Object To Be Replaced:
/etc/conf/cf.d/intr.s
/etc/conf/mdevice.d/xfs
/etc/conf/mdevice.d/xfsth
/etc/conf/pack.d/bsp2600/Driver.o
/etc/conf/pack.d/bspall/Driver.o
/etc/conf/pack.d/bspall/space.c
/etc/conf/pack.d/bspmtx/Driver.o
/etc/conf/pack.d/bspmtx/space.c
/etc/conf/pack.d/io/Driver.o
/etc/conf/pack.d/isa/Driver.o
/etc/conf/pack.d/memfs/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/segdev/Driver.o
/usr/bin/setrun
/usr/include/sys/ipl_masks.h
/usr/lib/fs/xfs/xfsrestore
/usr/lib/libthread.a
/usr/lib/libthread.so
Special Conditions for Installation:
The following objects are linked to some of the objects being
replaced by this patch. These objects will also be re-linked:
/usr/lib/libposix1c.a
/usr/lib/libposix1c.so
/usr/sbin/xfsrestore
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-005
Date Issued: 06/08/98 14:03:57
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 640, PowerStack II (multi-processor only)
Related Patches: vp-001
Related SARS: HM12390, HM12188, HM12359
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. If the xfs module is to be configured, the system needs to know that
xfsth must also be configured. This is important for cluster systems
for which the default is to not configure xfs.
2. Mentat UDP performance poor with STREAMS network buffers. Use of
other drivers which set a write offset on a stream may also be
affected.
A STREAMS driver can control how the stream head allocates space for
messages sent downstream. A write offset may be set which causes the
stream head to allocate additional memory for a driver to use. This
is generally done to avoid incurring memory allocation overheads.
The stream head was copying data from user space into kernel space
whenever it had a write offset set on a stream. This was being done
on the first element of a vectored write regardless of whether
network buffers were being used or not. In cases where the first
element of a vectored write was large this was incurring a large
processing overhead copying the data.
3. STREAMS network buffers fail if a transmission is greater than the
maximum PDU size allowed by a STREAMS driver. Normal STREAMS output
is unaffected.
If a user process attempts to send greater than the maximum PDU size
allowed by a STREAMS driver, the data is segmented at the stream
head. Each segment is transmitted separately. The segmentation
mechanism breaks down if network buffers are being used.
4. According to POSIX, a process whose priority is lowered goes to the
end of its new priority run queue. Thus, if there are other
processes already in that queue, the lowered lwp must give up the
CPU immediately to them and wait its turn. This was not happening.
Instead, the running lwp would continue to run until it either
voluntarily gave up the CPU, or some other event, such as I/O
completion, caused the CPU to re-evaluate which lwp was supposed to
be running.
5. SAR HM12390: A check to free an unneeded data structure was missing
in one execution path. The data structure was only unneeded if the
calling process had already opened a semaphore prior to this
invocation to open one.
6. Improve performance for disk striping (VP). Related to patch vp-001.
* on very large transfers, a substantial amount of time is spent
locking pages in memory.
7. The setrun(1) command would not accept an engine number > 3.
8. In PowerMAX OS 4.2, xfsrestore is unable to restore a tape created
by fsdump as it had in previous releases.
This causes the following error to be reported by xfsrestore:
. is not on tape
Root directory is not on tape
abort? [yn]
9. In some situations, the thread library may create many more
multiplexing (MUX) LWPs than the amount needed by the application.
The creation of all these extra MUX LWPs tends to waste system
resources and add unnecessary system overhead.
10. When a process attempts to fork(2), the fork(2) operation never
completes due to the fact that the rendezvous operation does not ever
complete. (The rendezvous operation brings all the other LWP's
into the kernel and holds them there in a known state while the
fork(2) operation then proceeds to duplicate the process image.)
The rendezvous operation fails to complete because one or more LWPs
in the process are currently blocked in the kernel via mq_send(3)
or mq_receive(3) with their rescheduling variable locked/held.
The RV lock prevents these LWPs from honoring the pending rendezvous
request until the RV is unlocked.
11. SARs HM12188, HM12359: The IDE device driver introduced in
PowerMAX OS 4.2 utilized the ISA interrupt levels from the floppy
(irq6) and line printer (irq7) drivers. This resulted in a
non-functional floppy driver and line printer driver on all Motorola
based platforms - even those that don't support IDE.
12. The "ALLINTSONCPU0" tunable does not work correctly on Power Hawk 640
systems. It was not possible to -override- this tunable and
indicate a cpu for a specific interrupt.
13. Systems get into a state where preemption on a CPU no longer occurs.
This "hangs" the CPU and may lead to a hung system. It occurs on
systems using FP-class (real-time) scheduling.
14. Panics on kernel data access exceptions when mmap'ing a process using
memory-based file systems. Problem seen using "usermap".
Problem Resolution:
1. Appropriate $depend entries are added to the xfs and xfsth files in
/etc/conf/mdevice.d/.
2. The stream head has been changed to allocate an additional message
block for drivers to write to during streams output. This is done if
there is a write offset set for a stream and the first element of a
vectored write (writev() ) or a write() is in a STREAMS network
buffer. The message block is chained to the beginning of the message
sent downstream to drivers.
3. The stream head has been changed to correctly update data structures
updated during the transmission of each segment of data.
4. The cause was the failure of the priocntl system call to nudge the
CPU after changing the lwp's priority (i.e., failed to force the CPU
to re-evaluate which lwp it was supposed to run). The lwp was
actually put at the end of its new run queue as it should have been,
but without the nudge the CPU did not notice the changed
circumstances of the lwp.
The solution was to expand the `if' statement that does nudging in
priocntl(2) to nudge if the new priority run queue was not empty
prior to the insertion.
5. Restored the missing check.
6. Improve performance for disk striping (VP).
* With segdev driver (bound shared memory), eliminate page locking
checks if entire segment is already locked in memory.
7. Rather than asking the system what engines were available, setrun(1)
had this hard-wired to 0-3. This command was appropriately changed
to ask for a mask of available engines.
8. The code in xfsrestore that handles tapes created by fsdump was fixed.
9. When the kernel sees the last LWP in a process about to block
itself, the kernel sends a SIGWAITING signal to the process's
SIGWAITING signal handler. This is done to give the thread library
a chance to create another MUX LWP if the process contains
additional MUX threads that are ready to run and that need a LWP to
execute on.
The thread library's SIGWAITING signal handler was modified so that
instead of always creating a new MUX LWP when there are MUX threads
that are ready to run, a check is now first made to see if there are
idle MUX LWPs. If so, then this signal handler just unblocks one of
these idle MUX LWPs instead of creating a new MUX LWP.
10. The fix is to unlock the rescheduling variable in the thread library
before calling block(2) in the kernel and to relock the rescheduling
variable upon return from the block(2) call.
11. The ISA interrupts have been reassigned to support all 4 ISA
devices: primary IDE, secondary IDE, floppy, and line printer.
New ISA irq assignments: 6=lpt, 7=fp, 10=p-ide, 14=s-ide.
12. Fix so that override of "ALLINTSONCPU0" can be done for a specific
interrupt.
13. Fix preemption disable counter which was being incorrectly
incremented/decremented in context switcher routine.
14. memfs mmap routine was incorrectly addressing beyond end of
pseudo-vnode.
Object To Be Replaced:
/etc/conf/cf.d/intr.s
/etc/conf/mdevice.d/xfs
/etc/conf/mdevice.d/xfsth
/etc/conf/pack.d/bsp4600/Driver.o
/etc/conf/pack.d/bsp4600/space.c
/etc/conf/pack.d/bspmpall/Driver.o
/etc/conf/pack.d/bspmpall/space.c
/etc/conf/pack.d/bspmtx/Driver.o
/etc/conf/pack.d/bspmtx/space.c
/etc/conf/pack.d/io/Driver.o
/etc/conf/pack.d/isa/Driver.o
/etc/conf/pack.d/memfs/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/segdev/Driver.o
/usr/bin/setrun
/usr/include/sys/ipl_masks.h
/usr/lib/fs/xfs/xfsrestore
/usr/lib/libthread.a
/usr/lib/libthread.so
Special Conditions for Installation:
I. The following objects are linked to some of the objects being
replaced by this patch. These objects will also be re-linked:
/usr/lib/libposix1c.a
/usr/lib/libposix1c.so
/usr/sbin/xfsrestore
II. Following successful installation of base-005, the system must be
shutdown and reset before booting the new kernel. Failure to do
so may result in unexpected or unreliable behavior.
Suggested procedure for installing base-005:
Install base-005 using pkgadd(1M)
# /etc/conf/bin/idbuild -B
# sync
# init 0
Reset system
Follow the normal boot procedure detailed in the PowerMAX OS
Product Release Notes to load the console and boot the new kernel.
Possible Side Effects:
none.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-006
Date Issued: 06/08/98 14:09:15
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: nh
Platforms: Night Hawk 6200/6800, TurboHawk, PowerMAXION
Related Patches: ncr-001, dec-006, vp-001
Related SARS: HM12390, HM12351
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. If the xfs module is to be configured, the system needs to know that
xfsth must also be configured.
2. Mentat UDP performance poor with STREAMS network buffers. Use of
other drivers which set a write offset on a stream may also be
affected.
A STREAMS driver can control how the stream head allocates space for
messages sent downstream. A write offset may be set which causes the
stream head to allocate additional memory for a driver to use. This
is generally done to avoid incurring memory allocation overheads.
The stream head was copying data from user space into kernel space
whenever it had a write offset set on a stream. This was being done
on the first element of a vectored write regardless of whether
network buffers were being used or not. In cases where the first
element of a vectored write was large this was incurring a large
processing overhead copying the data.
3. STREAMS network buffers fail if a transmission is greater than the
maximum PDU size allowed by a STREAMS driver. Normal STREAMS output
is unaffected.
If a user process attempts to send greater than the maximum PDU size
allowed by a STREAMS driver, the data is segmented at the stream
head. Each segment is transmitted separately. The segmentation
mechanism breaks down if network buffers are being used.
4. According to POSIX, a process whose priority is lowered goes to the
end of its new priority run queue. Thus, if there are other
processes already in that queue, the lowered lwp must give up the
CPU immediately to them and wait its turn. This was not happening.
Instead, the running lwp would continue to run until it either
voluntarily gave up the CPU, or some other event, such as I/O
completion, caused the CPU to re-evaluate which lwp was supposed to
be running.
5. SAR HM12390: A check to free an unneeded data structure was missing
in one execution path. The data structure was only unneeded if the
calling process had already opened a semaphore prior to this
invocation to open one.
6. Improve performance for disk striping (VP). Related to patch vp-001.
* on very large transfers, a substantial amount of time is spent
locking pages in memory.
7. The setrun(1) command would not accept an engine number > 3.
8. In PowerMAX OS 4.2, xfsrestore is unable to restore a tape created
by fsdump as it had in previous releases.
This causes the following error to be reported by xfsrestore:
. is not on tape
Root directory is not on tape
abort? [yn]
9. In some situations, the thread library may create many more
multiplexing (MUX) LWPs than the amount needed by the application.
The creation of all these extra MUX LWPs tends to waste system
resources and add unnecessary system overhead.
10. When a process attempts to fork(2), the fork(2) operation never
completes due to the fact that the rendezvous operation does not ever
complete. (The rendezvous operation brings all the other LWP's
into the kernel and holds them there in a known state while the
fork(2) operation then proceeds to duplicate the process image.)
The rendezvous operation fails to complete because one or more LWPs
in the process are currently blocked in the kernel via mq_send(3)
or mq_receive(3) with their rescheduling variable locked/held.
The RV lock prevents these LWPs from honoring the pending rendezvous
request until the RV is unlocked.
11. On PowerMAXION-8 systems, attempts to address VME devices in
secondary I/O caused a bus error.
12. On PowerMAXION-8 systems, interrupts for VME devices in secondary I/O
were not routed to the frontplane. These interrupts could not be
serviced by any processors and rendered VME devices on secondary
I/O inoperable.
13. TurboHawk system hardware was modified to increase the PCI bus
throughput. The software did not support these changes.
14. SAR HM12351: While running the PowerAT test, the console would
occasionally hang. Output would resume if the spacebar or other key
is touched.
15. Systems get into a state where preemption on a CPU no longer occurs.
This "hangs" the CPU and may lead to a hung system. It occurs on
systems using FP-class (real-time) scheduling.
16. Panics on kernel data access exceptions when mmap'ing a process using
memory-based file systems. Problem seen using "usermap".
Problem Resolution:
1. Appropriate $depend entries are added to the xfs and xfsth files in
/etc/conf/mdevice.d/.
2. The stream head has been changed to allocate an additional message
block for drivers to write to during streams output. This is done if
there is a write offset set for a stream and the first element of a
vectored write (writev() ) or a write() is in a STREAMS network
buffer. The message block is chained to the beginning of the message
sent downstream to drivers.
3. The stream head has been changed to correctly update data structures
updated during the transmission of each segment of data.
4. The cause was the failure of the priocntl system call to nudge the
CPU after changing the lwp's priority (i.e., failed to force the CPU
to re-evaluate which lwp it was supposed to run). The lwp was
actually put at the end of its new run queue as it should have been,
but without the nudge the CPU did not notice the changed
circumstances of the lwp.
The solution was to expand the `if' statement that does nudging in
priocntl(2) to nudge if the new priority run queue was not empty
prior to the insertion.
5. Restored the missing check.
6. Improve performance for disk striping (VP).
* With segdev driver (bound shared memory), eliminate page locking
checks if entire segment is already locked in memory.
7. Rather than asking the system what engines were available, setrun(1)
had this hard-wired to 0-3. This command was appropriately changed
to ask for a mask of available engines.
8. The code in xfsrestore that handles tapes created by fsdump was fixed.
9. When the kernel sees the last LWP in a process about to block
itself, the kernel sends a SIGWAITING signal to the process's
SIGWAITING signal handler. This is done to give the thread library
a chance to create another MUX LWP if the process contains
additional MUX threads that are ready to run and that need a LWP to
execute on.
The thread library's SIGWAITING signal handler was modified so that
instead of always creating a new MUX LWP when there are MUX threads
that are ready to run, a check is now first made to see if there are
idle MUX LWPs. If so, then this signal handler just unblocks one of
these idle MUX LWPs instead of creating a new MUX LWP.
10. The fix is to unlock the rescheduling variable in the thread library
before calling block(2) in the kernel and to relock the rescheduling
variable upon return from the block(2) call.
11. Corrected the initialization of the memory base and memory limit
registers on the DEC D21152 bridge on PowerMAXION-8 systems.
12. During system initialization of PowerMAXION-8 systems, all interrupts
on the Global Memory cards are routed to the frontplane.
13. Modified the initialization of the PLX Bridge, the Tundra VME
interface, embedded DEC Ethernet controller and embedded NCR SCSI
controller. This change allowed the Operating System to take
advantage of hardware changes on TurboHawk systems for increased PCI
bus throughput.
14. A change to the way the console driver handles interrupts introduced
this new problem into PowerMAX OS 4.2. Previously, the driver used
to scan both channels of a UART on interrupt from either channel.
Changes made in 4.2 accidently created a (rare) condition in which
an interrupt occasionally would not be responded to. This lack of
response was the cause of the hang.
15. Fix preemption disable counter which was being incorrectly
incremented/decremented in context switcher routine.
16. memfs mmap routine was incorrectly addressing beyond end of
pseudo-vnode.
Object To Be Replaced:
/etc/conf/mdevice.d/xfs
/etc/conf/mdevice.d/xfsth
/etc/conf/pack.d/bsp6408/Driver.o
/etc/conf/pack.d/cons/Driver.o
/etc/conf/pack.d/io/Driver.o
/etc/conf/pack.d/memfs/Driver.o
/etc/conf/pack.d/pci/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/segdev/Driver.o
/etc/conf/pack.d/vme/Driver.o
/usr/bin/setrun
/usr/lib/fs/xfs/xfsrestore
/usr/lib/libthread.a
/usr/lib/libthread.so
Special Conditions for Installation:
The following objects are linked to some of the objects being
replaced by this patch. These objects will also be re-linked:
/usr/lib/libposix1c.a
/usr/lib/libposix1c.so
/usr/sbin/xfsrestore
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-007
Date Issued: 08/12/98 09:40:38
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 610/620, PowerStack, PowerStack II
Related Patches: nfs-002, crypt-001, inet-005, crosslibs-002, mvc (4.2.1)
Related SARS: HM12246, HM12322, HM12396, HM12413, HM12429, HM12430
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. XFS file system loses file space that is reclaimed after remounting
The problem is associated with two kinds of temporary files:
(a) files that have been created then unlinked before being
written to;
(b) files that have been mmap'ed and subsequently removed.
Creating large temporary files of type (a) or (b) with indirect
blocks results in progressive loss of file space until the file
system becomes full. Rebooting or unmounting and remounting the
file system will reclaim all the file space lost in this way.
2. Multi-threaded applications that use user-level interrupts and
spl_request(3X) or spl_manage(3X) may hang the system.
The spl_request(3X) and spl_manage(3X) library routines lock an
internal lwp mutex lock while reading and writing the ipl value.
If this internal lock is currently locked from a thread calling
spl_request(3X)/spl_manage(3X) at program level when a user-level
interrupt routine becomes active, then a spl_request(3X) or
spl_manage(3X) call that is made from the user-level interrupt
routine will be unable to get the internal lwp mutex lock, and the
routine will spin forever at interrupt level, attempting to acquire
the lock.
3. There is currently no way for a user application to get the current
ipl level.
It is not possible to get the current ipl level without also
setting the ipl level with the spl_request(3X) or spl_manage(3X)
routines.
4. HM12322: PPC Time Base Register constants for Power Hawk 620/640 and
PowerStack II in the _hair routines of libud (also known as
TIE_FREQ_RATE) are incorrect. Because the values are incorrect for
the bus clock rating for Power Hawk 620/640 and PowerStack II
architectures, time stamps from programs that link libud could be
erroneous.
5. HM12246, HM12396: Modification of ldterm, serial, rtserial and
idmknod are required for new mvc driver.
6. HM12413: Several problems with lockd (nfs lock manager):
(a) Locks held by a client that crashes are not properly
recovered. This may result in incorrect file locks that
are never released.
(b) In some cases, when a process on a client system blocks
waiting for a lock, it would not get woken up after the
lock was released.
(c) There is a long time period between the reboot of a system
and its detection on the server.
7. HM12429: Some of the socket library routines may permanently set the
user's signal disposition of SIGPOLL to SIG_IGN (ignore the signal).
Some of the socket library routines may internally change the user's
signal disposition of SIGPOLL to SIG_IGN (ignore the signal) and
never change it back to its original disposition.
This problem will occur when these routines are called while the
SIGPOLL signal is currently being held/masked in the calling LWP's
signal mask.
8. HM12430: On XFS file systems, unlink(2) of a directory should not be
allowed if directory is not empty.
A problem in the check code of the directory unlink function did not
prevent a root user unlinking a non-empty directory. This results
in the directory content being removed from the file system but the
filespace allocated to the directory content not being released.
9. XFS file system: Stale File Handle errors on LCS targets with xfs
virtual root.
A timing window in the xfs_vget function used by NFS to attach to
file system nodes resulted in stale file handle errors when the NFS
was used over a very fast network link.
10. XFS file system: xfs_badop panic with xfs host file system and
Hummingbird NFS client and attempt to remove a file on the client
without required permissions.
A NFS protocol error in the Hummingbird client resulted in the
activation of a diagnostic panic when the client attempted an
invalid operation (VOP_LOOKUP on a file).
11. VMEbus DMA Controller (DMAC) device enhancement.
The DMA Controller (DMAC) device driver enhancement provides a user
interface to the on board Tundra Universe DMAC engine allowing high
speed block-mode transfers between user memory and a VMEbus slave
device.
12. The tunable IGNORE_STRAYS cannot be set on moto systems.
The system tunable IGNORE_STRAYS can be set so that stray interrupts
are ignored. However, on Motorola platforms this tunable has no
effect.
13. Under certain conditions, a program that modifies its scheduling
class may end up panicing the system with the message:
"XX scheduling class deferred a parameter change"
14. When either IGNORE_BUS_TIMEOUTS or IGNORE_SYSFAIL is enabled, then
the iobus_err(2) will return ENOSYS since the iobus_err(2) support
is not compatible with ignoring bus timeouts.
15. VME interrupts may be directed to the wrong CPU on a Power Hawk 640
system.
16. Motorola systems with low-level PPCBug firmware verions 3.5 and above
would appear to not boot the Power Hawk console.
Problem Resolution:
1. Fix xfs kernel code so that the indirect blocks are correctly
marked as free in the in-memory free space maps when a temporary
file is removed.
2. The lwp mutex lock is not required by the spl_request(3X) and
spl_manage(3X) routines. Therefore, this lock will no longer be
used by these two routines.
3. Add a new spl_value(3X) routine to libud that simply returns the
current ipl (architecture dependent) ipl level:
pl_t spl_value(caddr_t spl_map_address);
Where 'spl_map_address' is the address that was returned from a
previous spl_map(3X) call.
4. Modified the TIE_FREQ_RATE value returned by _hair_get_arch_info()
to be consistent with the bus clock rating for the Power Hawk
620/640 and PowerStack II architectures.
5. A new release (4.2.1) of the mvc package is replacing the 4.2
version, to provide new features (including rtserial device support)
and improved performance and reliability. Small problems in the
aforementioned I/O modules were found and corrected during
development and test of the new driver.
Additionally, idmknod(1M) did not permit a single line in a node
file to define both tty ports and printer ports, as the structure
of the new driver requires. All of the idtools have been updated
as a result of these changes.
6. lockd problems resolved as follows:
(a) Upon detecting that a client has crashed (and rebooted),
the server will clear ALL locks held by that client.
(b) Add a small delay in the kernel code that re-requests a
lock via the local lockd. This allows other messages to be
received.
(c) Shorten the initial start-up delay in statd from 15 to 5
seconds.
7. Change the appropriate libsocket routines so that they do not change
the process's signal disposition for the SIGPOLL signal.
See related patches inet-005 and crypt-001.
8. Add extra check to unlink directory code path.
9. Change xfs_vget node lookup to avoid the window.
10. Conditional compile the diagnostic panic, release code now just
returns error.
11. Added support for new DMAC driver.
12. Corrected the interrupt logic so that IGNORE_STRAYS works as
indicated.
13. Conditions for this to occur are for a parent process to change its
class and then change it back and THEN spawn a new process or lwp.
The new lwp/process would attempt to process the new scheduling class
change but there wouldn't be one present. Fixed to account for this
condition (i.e. NULL deferred scheduling class changes).
14. Change the way that the kernel handles bus timeouts so that the
iobus_err(2) processing still functions properly even when
IGNORE_BUS_TIMEOUTS and IGNORE_SYSFAIL are enabled.
15. Fix the interrupt logic to account for the CPU that a VME interrupt
is directed to when it scans the interrupt status word on the Tundra
Universe chip.
16. The console was actually booting, but very slowly. PPCBug 3.5 and
above enter user code with Instruction Cache disabled. Correction
re-enables the Instruction Cache.
Object To Be Replaced:
/etc/conf/bin/idcheck
/etc/conf/bin/idconfig
/etc/conf/bin/idinstall
/etc/conf/bin/idmknod
/etc/conf/bin/idmodload
/etc/conf/bin/idreadauto
/etc/conf/cf.d/intr.s
/etc/conf/mdevice.d/dmac
/etc/conf/mtune.d/dmac
/etc/conf/node.d/dmac
/etc/conf/pack.d/bsp1600/Driver.o
/etc/conf/pack.d/bsp2600/Driver.o
/etc/conf/pack.d/bspall/Driver.o
/etc/conf/pack.d/bspmtx/Driver.o
/etc/conf/pack.d/bsppstk/Driver.o
/etc/conf/pack.d/dmac/Driver.o
/etc/conf/pack.d/dmac/space.c
/etc/conf/pack.d/dmac/stubs.c
/etc/conf/pack.d/fs/Driver.o
/etc/conf/pack.d/iobus_err/Driver.o
/etc/conf/pack.d/ldterm/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/rtserial/Driver.o
/etc/conf/pack.d/sbc/stubs.c
/etc/conf/pack.d/serial/Driver.o
/etc/conf/pack.d/svc/Driver.o
/etc/conf/pack.d/xfs/Driver.o
/etc/conf/sdevice.d/dmac
/stand/cp1
/usr/include/sys/dmac.h
/usr/include/sys/fcntl.h
/usr/include/sys/ipl.h
/usr/lib/libnsl_i.a
/usr/lib/libsocket.so
/usr/lib/libud.a
/usr/lib/libud.so
Special Conditions for Installation:
NOTICE #1: The changes to libud and <sys/ipl.h> for Problem #3 should
be installed on systems where multi-threaded applications
call spl_request(3X) or spl_manage(3X) from program level
threads and also from a user-level interrupt routine.
NOTICE #2: Systems which have installed the beta test (preliminary)
"dmac" package, should remove the package prior to
installation of this update. To remove the "dmac" package,
execute the following command (as root):
# /usr/sbin/pkgrm dmac
NOTICE #3: The dmac driver is not compatible with the latest release
of the cluster package software, therefore, it is installed
in the disabled state. If your system is configured with
the cluster pkg software, you must install patch cluster-004,
also on this tape, in order to use the dmac driver. If your
system is not configured with the cluster pkg software, then
you may enable the driver by editing the file 'dmac' under
the kernel configuration directory /etc/conf/sdevice.d and
substitute the 'N' for 'Y' before building a new unix kernel
using the idbuild(1M) command.
NOTICE #4: The following objects are linked to some of the objects being
replaced by this patch. These objects will also be re-linked:
/usr/lib/libnsl.a
/usr/lib/libxti.a
/usr/lib/libsocket.a
NOTICE #5: This patch modifies /etc/conf/cf.d/intr.s. If this file has
been modified locally, then those local changes will need to
be re-applied after the patch is installed.
NOTICE #6: During installation of base-007, an updated version of
/stand/cp1 will be installed and the new console overlay will
be written to partition 6 on the system disk. Following
successful installation, the system must be taken down and
reset to load the new console before rebooting. Failure to
do so may result in unexpected or unreliable behavior.
Possible Side Effects:
If the base-007 package is removed (pkgrm(1M)), the original console
will be re-written to partition 6 on the system disk. To ensure there
are no adverse side effects, the kernel should be rebuilt (idbuild(1M))
and the system taken down and reset to load the original console before
rebooting the system.
Suggested procedure for removing base-007:
# pkgrm base-007
# /etc/conf/bin/idbuild -B
# sync
# init 0
# Reset system
Follow the normal boot procedure detailed in the PowerMAX OS Product
Release Notes to load the new console and boot the new kernel.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-008
Date Issued: 08/12/98 10:02:08
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 640, PowerStack II (multi-processor only)
Related Patches: nfs-002, crypt-001, inet-005, crosslibs-002, mvc (4.2.1)
Related SARS: HM12246, HM12322, HM12396, HM12413, HM12429, HM12430
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. XFS file system loses file space that is reclaimed after remounting
The problem is associated with two kinds of temporary files:
(a) files that have been created then unlinked before being
written to;
(b) files that have been mmap'ed and subsequently removed.
Creating large temporary files of type (a) or (b) with indirect
blocks results in progressive loss of file space until the file
system becomes full. Rebooting or unmounting and remounting the
file system will reclaim all the file space lost in this way.
2. Multi-threaded applications that use user-level interrupts and
spl_request(3X) or spl_manage(3X) may hang the system.
The spl_request(3X) and spl_manage(3X) library routines lock an
internal lwp mutex lock while reading and writing the ipl value.
If this internal lock is currently locked from a thread calling
spl_request(3X)/spl_manage(3X) at program level when a user-level
interrupt routine becomes active, then a spl_request(3X) or
spl_manage(3X) call that is made from the user-level interrupt
routine will be unable to get the internal lwp mutex lock, and the
routine will spin forever at interrupt level, attempting to acquire
the lock.
3. There is currently no way for a user application to get the current
ipl level.
It is not possible to get the current ipl level without also
setting the ipl level with the spl_request(3X) or spl_manage(3X)
routines.
4. HM12322: PPC Time Base Register constants for Power Hawk 620/640 and
PowerStack II in the _hair routines of libud (also known as
TIE_FREQ_RATE) are incorrect. Because the values are incorrect for
the bus clock rating for Power Hawk 620/640 and PowerStack II
architectures, time stamps from programs that link libud could be
erroneous.
5. HM12246, HM12396: Modification of ldterm, serial, rtserial and
idmknod are required for new mvc driver.
6. HM12413: Several problems with lockd (nfs lock manager):
(a) Locks held by a client that crashes are not properly
recovered. This may result in incorrect file locks that
are never released.
(b) In some cases, when a process on a client system blocks
waiting for a lock, it would not get woken up after the
lock was released.
(c) There is a long time period between the reboot of a system
and its detection on the server.
7. HM12429: Some of the socket library routines may permanently set the
user's signal disposition of SIGPOLL to SIG_IGN (ignore the signal).
Some of the socket library routines may internally change the user's
signal disposition of SIGPOLL to SIG_IGN (ignore the signal) and
never change it back to its original disposition.
This problem will occur when these routines are called while the
SIGPOLL signal is currently being held/masked in the calling LWP's
signal mask.
8. HM12430: On XFS file systems, unlink(2) of a directory should not be
allowed if directory is not empty.
A problem in the check code of the directory unlink function did not
prevent a root user unlinking a non-empty directory. This results
in the directory content being removed from the file system but the
filespace allocated to the directory content not being released.
9. XFS file system: Stale File Handle errors on LCS targets with xfs
virtual root.
A timing window in the xfs_vget function used by NFS to attach to
file system nodes resulted in stale file handle errors when the NFS
was used over a very fast network link.
10. XFS file system: xfs_badop panic with xfs host file system and
Hummingbird NFS client and attempt to remove a file on the client
without required permissions.
A NFS protocol error in the Hummingbird client resulted in the
activation of a diagnostic panic when the client attempted an
invalid operation (VOP_LOOKUP on a file).
11. VMEbus DMA Controller (DMAC) device enhancement.
The DMA Controller (DMAC) device driver enhancement provides a user
interface to the on board Tundra Universe DMAC engine allowing high
speed block-mode transfers between user memory and a VMEbus slave
device.
12. The tunable IGNORE_STRAYS cannot be set on moto systems.
The system tunable IGNORE_STRAYS can be set so that stray interrupts
are ignored. However, on Motorola platforms this tunable has no
effect.
13. Under certain conditions, a program that modifies its scheduling
class may end up panicing the system with the message:
"XX scheduling class deferred a parameter change"
14. When either IGNORE_BUS_TIMEOUTS or IGNORE_SYSFAIL is enabled, then
the iobus_err(2) will return ENOSYS since the iobus_err(2) support
is not compatible with ignoring bus timeouts.
15. VME interrupts may be directed to the wrong CPU on a Power Hawk 640
system.
16. Motorola systems with low-level PPCBug firmware verions 3.5 and above
would appear to not boot the Power Hawk console.
Problem Resolution:
1. Fix xfs kernel code so that the indirect blocks are correctly
marked as free in the in-memory free space maps when a temporary
file is removed.
2. The lwp mutex lock is not required by the spl_request(3X) and
spl_manage(3X) routines. Therefore, this lock will no longer be
used by these two routines.
3. Add a new spl_value(3X) routine to libud that simply returns the
current ipl (architecture dependent) ipl level:
pl_t spl_value(caddr_t spl_map_address);
Where 'spl_map_address' is the address that was returned from a
previous spl_map(3X) call.
4. Modified the TIE_FREQ_RATE value returned by _hair_get_arch_info()
to be consistent with the bus clock rating for the Power Hawk
620/640 and PowerStack II architectures.
5. A new release (4.2.1) of the mvc package is replacing the 4.2
version, to provide new features (including rtserial device support)
and improved performance and reliability. Small problems in the
aforementioned I/O modules were found and corrected during
development and test of the new driver.
Additionally, idmknod(1M) did not permit a single line in a node
file to define both tty ports and printer ports, as the structure
of the new driver requires. All of the idtools have been updated
as a result of these changes.
6. lockd problems resolved as follows:
(a) Upon detecting that a client has crashed (and rebooted),
the server will clear ALL locks held by that client.
(b) Add a small delay in the kernel code that re-requests a
lock via the local lockd. This allows other messages to be
received.
(c) Shorten the initial start-up delay in statd from 15 to 5
seconds.
7. Change the appropriate libsocket routines so that they do not change
the process's signal disposition for the SIGPOLL signal.
See related patches inet-005 and crypt-001.
8. Add extra check to unlink directory code path.
9. Change xfs_vget node lookup to avoid the window.
10. Conditional compile the diagnostic panic, release code now just
returns error.
11. Added support for new DMAC driver.
12. Corrected the interrupt logic so that IGNORE_STRAYS works as
indicated.
13. Conditions for this to occur are for a parent process to change its
class and then change it back and THEN spawn a new process or lwp.
The new lwp/process would attempt to process the new scheduling class
change but there wouldn't be one present. Fixed to account for this
condition (i.e. NULL deferred scheduling class changes).
14. Change the way that the kernel handles bus timeouts so that the
iobus_err(2) processing still functions properly even when
IGNORE_BUS_TIMEOUTS and IGNORE_SYSFAIL are enabled.
15. Fix the interrupt logic to account for the CPU that a VME interrupt
is directed to when it scans the interrupt status word on the Tundra
Universe chip.
16. The console was actually booting, but very slowly. PPCBug 3.5 and
above enter user code with Instruction Cache disabled. Correction
re-enables the Instruction Cache.
Object To Be Replaced:
/etc/conf/bin/idcheck
/etc/conf/bin/idconfig
/etc/conf/bin/idinstall
/etc/conf/bin/idmknod
/etc/conf/bin/idmodload
/etc/conf/bin/idreadauto
/etc/conf/cf.d/intr.s
/etc/conf/mdevice.d/dmac
/etc/conf/mtune.d/dmac
/etc/conf/node.d/dmac
/etc/conf/pack.d/bsp4600/Driver.o
/etc/conf/pack.d/bspmpall/Driver.o
/etc/conf/pack.d/bspmtx/Driver.o
/etc/conf/pack.d/dmac/Driver.o
/etc/conf/pack.d/dmac/space.c
/etc/conf/pack.d/dmac/stubs.c
/etc/conf/pack.d/fs/Driver.o
/etc/conf/pack.d/iobus_err/Driver.o
/etc/conf/pack.d/ldterm/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/rtserial/Driver.o
/etc/conf/pack.d/sbc/stubs.c
/etc/conf/pack.d/serial/Driver.o
/etc/conf/pack.d/svc/Driver.o
/etc/conf/pack.d/xfs/Driver.o
/etc/conf/sdevice.d/dmac
/stand/cp1
/usr/include/sys/dmac.h
/usr/include/sys/fcntl.h
/usr/include/sys/ipl.h
/usr/lib/libnsl_i.a
/usr/lib/libsocket.so
/usr/lib/libud.a
/usr/lib/libud.so
Special Conditions for Installation:
NOTICE #1: The changes to libud and <sys/ipl.h> for Problem #3 should
be installed on systems where multi-threaded applications
call spl_request(3X) or spl_manage(3X) from program level
threads and also from a user-level interrupt routine.
NOTICE #2: Systems which have installed the beta test (preliminary)
"dmac" package, should remove the package prior to
installation of this update. To remove the "dmac" package,
execute the following command (as root):
# /usr/sbin/pkgrm dmac
NOTICE #3: The dmac driver is not compatible with the latest release
of the cluster package software, therefore, it is installed
in the disabled state. If your system is configured with
the cluster pkg software, you must install patch cluster-004,
also on this tape, in order to use the dmac driver. If your
system is not configured with the cluster pkg software, then
you may enable the driver by editing the file 'dmac' under
the kernel configuration directory /etc/conf/sdevice.d and
substitute the 'N' for 'Y' before building a new unix kernel
using the idbuild(1M) command.
NOTICE #4: The following objects are linked to some of the objects being
replaced by this patch. These objects will also be re-linked:
/usr/lib/libnsl.a
/usr/lib/libxti.a
/usr/lib/libsocket.a
NOTICE #5: This patch modifies /etc/conf/cf.d/intr.s. If this file has
been modified locally, then those local changes will need to
be re-applied after the patch is installed.
NOTICE #6: During installation of base-008, an updated version of
/stand/cp1 will be installed and the new console overlay will
be written to partition 6 on the system disk. Following
successful installation, the system must be taken down and
reset to load the new console before rebooting. Failure to
do so may result in unexpected or unreliable behavior.
Possible Side Effects:
If the base-008 package is removed (pkgrm(1M)), the original console
will be re-written to partition 6 on the system disk. To ensure there
are no adverse side effects, the kernel should be rebuilt (idbuild(1M))
and the system taken down and reset to load the original console before
rebooting the system.
Suggested procedure for removing base-008:
# pkgrm base-008
# /etc/conf/bin/idbuild -B
# sync
# init 0
# Reset system
Follow the normal boot procedure detailed in the PowerMAX OS Product
Release Notes to load the new console and boot the new kernel.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-009
Date Issued: 08/12/98 10:09:43
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: nh
Platforms: Night Hawk 6200/6800, TurboHawk, PowerMAXION
Related Patches: nfs-002, crypt-001, inet-005, crosslibs-002, mvc (4.2.1)
Related SARS: HM12246, HM12322, HM12331, HM12396,
HM12413, HM12429, HM12430
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. XFS file system loses file space that is reclaimed after remounting
The problem is associated with two kinds of temporary files:
(a) files that have been created then unlinked before being
written to;
(b) files that have been mmap'ed and subsequently removed.
Creating large temporary files of type (a) or (b) with indirect
blocks results in progressive loss of file space until the file
system becomes full. Rebooting or unmounting and remounting the
file system will reclaim all the file space lost in this way.
2. Multi-threaded applications that use user-level interrupts and
spl_request(3X) or spl_manage(3X) may hang the system.
The spl_request(3X) and spl_manage(3X) library routines lock an
internal lwp mutex lock while reading and writing the ipl value.
If this internal lock is currently locked from a thread calling
spl_request(3X)/spl_manage(3X) at program level when a user-level
interrupt routine becomes active, then a spl_request(3X) or
spl_manage(3X) call that is made from the user-level interrupt
routine will be unable to get the internal lwp mutex lock, and the
routine will spin forever at interrupt level, attempting to acquire
the lock.
3. There is currently no way for a user application to get the current
ipl level.
It is not possible to get the current ipl level without also
setting the ipl level with the spl_request(3X) or spl_manage(3X)
routines.
4. HM12322: PPC Time Base Register constants for Power Hawk 620/640 and
PowerStack II in the _hair routines of libud (also known as
TIE_FREQ_RATE) are incorrect. Because the values are incorrect for
the bus clock rating for Power Hawk 620/640 and PowerStack II
architectures, time stamps from programs that link libud could be
erroneous.
5. HM12246, HM12396: Modification of ldterm, serial, rtserial and
idmknod are required for new mvc driver.
6. HM12413: Several problems with lockd (nfs lock manager):
(a) Locks held by a client that crashes are not properly
recovered. This may result in incorrect file locks that
are never released.
(b) In some cases, when a process on a client system blocks
waiting for a lock, it would not get woken up after the
lock was released.
(c) There is a long time period between the reboot of a system
and its detection on the server.
7. HM12429: Some of the socket library routines may permanently set the
user's signal disposition of SIGPOLL to SIG_IGN (ignore the signal).
Some of the socket library routines may internally change the user's
signal disposition of SIGPOLL to SIG_IGN (ignore the signal) and
never change it back to its original disposition.
This problem will occur when these routines are called while the
SIGPOLL signal is currently being held/masked in the calling LWP's
signal mask.
8. HM12430: On XFS file systems, unlink(2) of a directory should not be
allowed if directory is not empty.
A problem in the check code of the directory unlink function did not
prevent a root user unlinking a non-empty directory. This results
in the directory content being removed from the file system but the
filespace allocated to the directory content not being released.
9. XFS file system: Stale File Handle errors on LCS targets with xfs
virtual root.
A timing window in the xfs_vget function used by NFS to attach to
file system nodes resulted in stale file handle errors when the NFS
was used over a very fast network link.
10. XFS file system: xfs_badop panic with xfs host file system and
Hummingbird NFS client and attempt to remove a file on the client
without required permissions.
A NFS protocol error in the Hummingbird client resulted in the
activation of a diagnostic panic when the client attempted an
invalid operation (VOP_LOOKUP on a file).
11. HM12331: User level interrupts connected to devices in TurboHawk
secondary I/O did not work.
12. On TurboHawks, mpadvise(3C) issued with the 'command' argument of
MPA_CPU_VMELEV, the 'which' argument of MPA_VMELEV_SECONDARY and the
'who' argument specifying a secondary VME level 1-7 did not correctly
define the CPU that services the interrupt.
13. On TurboHawks, in the low level interrupt handler, the VME level
acquired from the IACK of the interrupt controller WAS being written
to the stack frame at location EF_VECT*4. This prevented ktrace
from discerning between VME multiple devices interrupting on the same
VME level.
14. The generic kernel (/stand/unix.generic) originally released with
PowerMAX OS 4.2 does not boot on TurboHawk systems with three and
five position frontplanes.
15. Under certain conditions, a program that modifies its scheduling
class may end up panicing the system with the message:
"XX scheduling class deferred a parameter change"
16. When either IGNORE_BUS_TIMEOUTS or IGNORE_SYSFAIL is enabled, then
the iobus_err(2) will return ENOSYS since the iobus_err(2) support
is not compatible with ignoring bus timeouts.
17. The utility intstat reports erroneous values for the CPU IDs that
VME interrupts are assigned to. The values are bad on PowerMAXION
and TurboHawk systems.
18. On TurboHawks, Secondary VME interrupts could not be routed off of
the first processor board to the frontplane for handling by
processors on other processor boards.
Problem Resolution:
1. Fix xfs kernel code so that the indirect blocks are correctly
marked as free in the in-memory free space maps when a temporary
file is removed.
2. The lwp mutex lock is not required by the spl_request(3X) and
spl_manage(3X) routines. Therefore, this lock will no longer be
used by these two routines.
3. Add a new spl_value(3X) routine to libud that simply returns the
current ipl (architecture dependent) ipl level:
pl_t spl_value(caddr_t spl_map_address);
Where 'spl_map_address' is the address that was returned from a
previous spl_map(3X) call.
4. Modified the TIE_FREQ_RATE value returned by _hair_get_arch_info()
to be consistent with the bus clock rating for the Power Hawk
620/640 and PowerStack II architectures.
5. A new release (4.2.1) of the mvc package is replacing the 4.2
version, to provide new features (including rtserial device support)
and improved performance and reliability. Small problems in the
aforementioned I/O modules were found and corrected during
development and test of the new driver.
Additionally, idmknod(1M) did not permit a single line in a node
file to define both tty ports and printer ports, as the structure
of the new driver requires. All of the idtools have been updated
as a result of these changes.
6. lockd problems resolved as follows:
(a) Upon detecting that a client has crashed (and rebooted),
the server will clear ALL locks held by that client.
(b) Add a small delay in the kernel code that re-requests a
lock via the local lockd. This allows other messages to be
received.
(c) Shorten the initial start-up delay in statd from 15 to 5
seconds.
7. Change the appropriate libsocket routines so that they do not change
the process's signal disposition for the SIGPOLL signal.
See related patches inet-005 and crypt-001.
8. Add extra check to unlink directory code path.
9. Change xfs_vget node lookup to avoid the window.
10. Conditional compile the diagnostic panic, release code now just
returns error.
11. Modified svme_intr(), the secondary vme interrupt handler for
PowerMAXIONs and TurboHawks, so that the vector and the exception
frame pointer are passed to the handler. These items are required by
the user level interrupt handler, Xuserint.
12. A kernel routine, getbuslvl_nh6800t(), that is called by mpadvise()
was fixed to return the correct mask of CPUs that service a specified
local secondary VME level on TurboHawks.
13. On TurboHawks, the low level interrupt handler, Xintr, was modified
so that the vector presented by the VME device is written to the
exception stack frame.
14. Rebuilt unix.generic to include changes from previous PowerMAX OS 4.2
patches to add specified TurboHawk support.
15. Conditions for this to occur are for a parent process to change its
class and then change it back and THEN spawn a new process or lwp.
The new lwp/process would attempt to process the new scheduling class
change but there wouldn't be one present. Fixed to account for this
condition (i.e. NULL deferred scheduling class changes).
16. Change the way that the kernel handles bus timeouts so that the
iobus_err(2) processing still functions properly even when
IGNORE_BUS_TIMEOUTS and IGNORE_SYSFAIL are enabled.
17. The program invokes syscx(2) to return the CPU assignment for VME
interrupts. However, it incorrectly treats this as a CPU mask when
it is actually a CPU number.
18. On TurboHawks, Secondary VME interrupts can now be routed off the
first processor board using system tunables. These interrupts can
now be serviced by processors on boards other than the first
processor boards.
Object To Be Replaced:
/etc/conf/bin/idcheck
/etc/conf/bin/idconfig
/etc/conf/bin/idinstall
/etc/conf/bin/idmknod
/etc/conf/bin/idmodload
/etc/conf/bin/idreadauto
/etc/conf/cf.d/intr.s
/etc/conf/pack.d/bsp6400/Driver.o
/etc/conf/pack.d/bsp6408/Driver.o
/etc/conf/pack.d/bsp6800/Driver.o
/etc/conf/pack.d/bsp6800t/Driver.o
/etc/conf/pack.d/bspall/Driver.o
/etc/conf/pack.d/fs/Driver.o
/etc/conf/pack.d/iobus_err/Driver.o
/etc/conf/pack.d/ldterm/Driver.o
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/rtserial/Driver.o
/etc/conf/pack.d/serial/Driver.o
/etc/conf/pack.d/svc/Driver.o
/etc/conf/pack.d/vme/Driver.o
/etc/conf/pack.d/xfs/Driver.o
/stand/unix.generic
/usr/bin/intstat
/usr/include/sys/fcntl.h
/usr/include/sys/ipl.h
/usr/lib/libnsl_i.a
/usr/lib/libsocket.so
/usr/lib/libud.a
/usr/lib/libud.so
Special Conditions for Installation:
NOTICE #1: The changes to libud and <sys/ipl.h> for Problem #3 should
be installed on systems where multi-threaded applications
call spl_request(3X) or spl_manage(3X) from program level
threads and also from a user-level interrupt routine.
NOTICE #2: The following objects are linked to some of the objects being
replaced by this patch. These objects will also be re-linked:
/usr/lib/libnsl.a
/usr/lib/libxti.a
/usr/lib/libsocket.a
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-010
Date Issued: 09/23/98 08:43:28
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 610/620, PowerStack, PowerStack II (uni-proc)
Related Patches: none
Related SARS: none
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. Systems may 'hang' during boot-up. Possible symptoms include:
* The system stops after the following is printed on the
console:
PowerMAX OS Boot Loader
Boot
: /stand/unix
2675544+296695+505253 start 0x4000
symbol table loaded
other information is printed.
* The system cannot be aborted (using the 'abort' switch).
* The hang does not always occur. The system may boot once
out of ten times -or- may only fail once out of ten times.
Some systems may not see the hang at all.
* The hang is more prevalent on systems with base-007 patch
installed. The hang is more prevalent when kernel symbol
table is loaded.
Problem Resolution:
1. Correct a cache flush operation so that no memory operations are done
while the flush is in progress.
Object To Be Replaced:
/etc/conf/pack.d/bsp2600/Driver.o
/etc/conf/pack.d/bspmtx/Driver.o
/etc/conf/pack.d/bspall/Driver.o
/etc/conf/pack.d/io/Driver.o
Special Conditions for Installation:
None.
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-011
Date Issued: 09/23/98 08:45:21
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 640, PowerStack II (multi-proc)
Related Patches: none
Related SARS: none
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. Systems may 'hang' during boot-up. Possible symptoms include:
* The system stops after the following is printed on the
console:
PowerMAX OS Boot Loader
Boot
: /stand/unix
2675544+296695+505253 start 0x4000
symbol table loaded
other information is printed.
* The system cannot be aborted (using the 'abort' switch).
* The hang does not always occur. The system may boot once
out of ten times -or- may only fail once out of ten times.
Some systems may not see the hang at all.
* The hang is more prevalent on systems with base-008 patch
installed. The hang is more prevalent when kernel symbol
table is loaded.
Problem Resolution:
1. Correct a cache flush operation so that no memory operations are done
while the flush is in progress.
Object To Be Replaced:
/etc/conf/pack.d/bsp4600/Driver.o
/etc/conf/pack.d/bspmtx/Driver.o
/etc/conf/pack.d/bspmpall/Driver.o
/etc/conf/pack.d/io/Driver.o
Special Conditions for Installation:
None.
Possible Side Effects:
None.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-013
Date Issued: 09/30/98 08:04:17
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 610/620, PowerStack, PowerStack II (uni-proc)
Related Patches: audit-001, cluster-005, cmds-002, crosslibs-003,
crypt-002, crypt-int-001, dec-007, inet-006, man-004,
ncr-002, via-001, zld-002, cld (4.2), fibre (4.2),
netboot (4.2)
Related SARS: HM12415, HM12357, HM12462
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. iconnect(3C) ICON_IVEC II_ALLOCATE calls may always return EBUSY.
If an interrupt vector is allocated with an iconnect(3C) ICON_IVEC
II_ALLOCATE call, and a LWP makes an ienable(3C) call to connect to
that vector, and another LWP later disconnects that ienabled LWP with
a iconnect(3C) ICON_DISC call, then that allocated interrupt vector
will be improperly marked free in the kernel's interrupt vector
table, even though the kernel's user-level interrupt data structures
will properly indicate that this vector is still ICON_IVEC allocated.
All subsequent iconnect(3C) ICON_IVEC II_ALLOCATE calls without the
vector specified (where the II_VECSPEC flag is not set) will result
in EBUSY being returned, instead of having a vector successfully
allocated.
2. Rommable PowerMAX OS support added:
Added random access decompression library support (radl) to the
kernel, plus tunable and stub file to enable or disable. This
library must be enabled for all diskless configurations of
PowerMAX OS. For all other configurations, it may be enable or
disabled. By default radl is disabled for all platforms, since by
default most platforms have a true disk for root. The various
diskless build packages (netboot, cluster) automatically turn this on
for the affected targets or clients as appropriate. Hence it is
expected there will be little need to explicitly turn this
configuration tunable on or off.
Added a random access compressor which produces compressed images
suitable for use by the above random access decompression library.
This compressor is both upwards and downwards compatible with gzip.
3. Enhancements to to the memfs kernel module to support booting from
a Flash Memory Device, a new feature added to the cluster and netboot
software packages.
4. The fast boot logic does not properly detect that the file systems
are dirty during a system boot if the following condition occurs:
A) a boot and then a "clean" shutdown of a kernel that has the
FASTFS tunable SET
B) boot and then a "non-clean" shutdown of a kernel that has
the FASTFS tunable RESET
C) boot of a kernel that has the FASTFS tunable SET
The kernel in step A) would leave the dirty/clean flag set to clean.
If the kernel in step B) shutdown without going through a clean
shutdown, the dirty/clean flag would not get reset to dirty. Finally,
the kernel in step C) would see the flag as clean and would attempt
to boot without running fsck on the dirty file systems.
5. Added NVRAM Global Environment Variable (GEV) support for the
Motorola platforms. PPCBug Revisions 1.8 and later provide support
for GEVs which reside in the PowerPC Reference Platform (PRP) region
of the NVRAM on the CPU board. PPCBug allows the OS access to share
this area. GEVs can still be used by the OS with an older revision of
PPCBug, but there will be no PPCBug commands to access them, and the
GEV area may need to be initialized by the OS.
The new nvram(2) system call and the gev(1) set of commands (gevdel,
gevdump, gevget, gevgetval, gevinfo, gevinit, gevput, gevputval,
and gevshow) provide services that allow you to add, delete, replace,
initialize and get information about one or more GEV entries.
The GEV area within the NVRAM is an array of null terminated strings.
These strings have the form:
name=[value]
At the present time there is no support for GEVs on nh platforms.
The nvram system call always returns ENOSYS on nh platforms and the
gev set of commands are not present.
6. HM12415: Add Symbios 53c875/895 high performance modes enhancements
and support for removable media Magneto-Optical Drives.
* Support ncr (Symbios) 53c875/895 high performance modes.
* Need enhancements to support removable media disks and 1K
sector size.
* SCSI ULTRA requires fewer devices on shorter cabling than
FAST/WIDE.
* Optical media change not protected against change in
geometry block.
* Raw disk transfers greater than 128K not supported.
* Some SCSI devices will reconnect, then immediately
disconnect without doing anything.
7. XFS files do not have microsecond resolution update times set. XFS
fails to correctly set the tv_usec subfield of the file access,
modification or changed timeval structures. The tv_sec subfield
returned by the standard stat system call is correctly set, only the
extended stat (xstat) system call shows this problem.
8. When xdm is used to manage a host based X server process, shutdown
processing that kills all processing can lead to a race condition
wherein an X server process will be killed by shutdown, but before
xdm itself is killed, a new X server process is launched. Depending
on how far this this process gets before it is killed itself, the
video hardware may not be restored to VGA compatible mode. When this
happens, the display is corrupted, and the system appears to be hung.
9. Certain logitech serial mouse devices are not always detected and
initialized properly by the smse STREAMs module. Mouse detection
state machine in smse was easily confused because timeouts were too
short and certain early exits could be taken.
10. PCI drivers multi-function device and BIT-3 bridge support required
to correct certain deficiencies in kernel PCI drivers including:
* No support for multi-function PCI devices
* PCI bridge depth limited to 2 bridges. BIT-3 PCI expansion
chassis requires depth 3.
* Default tunable values for PCI bridges are not appropriate
for all architectures.
11. Serial keyboard STREAM module did not support Concurrent's own
serial kbd.
12. HM12357, HM12462: When the top(1) command is run on a system that
has more than six (6) processors configured, it will fail with a
segmentation violation and dump core. The problem is that the memory
allocated for memory usage display is only 80 characters in length.
This allocation is used up when more than 6 CPUs are configured.
13. According to POSIX, a process whose priority is lowered goes to the
end of its new priority run queue. Thus, if there are other
processes already in that queue, the lowered LWP must give up the
CPU immediately to them and wait its turn. This was not happening.
Instead, the running LWP would continue to run until it either
voluntarily gave up the CPU, or some other event, such as I/O
completion, caused the CPU to re-evaluate which LWP was supposed to
be running.
14. Date written to or read from Time Of Century Clock is mishandled.
If the system time is changed to certain dates in the 21st century,
the date written to the hardware Time Of Century Clock is mishandled.
On a subsequent system reboot, the system time is set wrong because
the date read from the hardware Time Of Century Clock is incorrect.
15. Support required for the Interphase 5526 PCI Fibre Channel Adapter.
16. The fast boot dirty/clean flag is in a Motorola reserved location
within the header of the NVRAM PRP area. Changes by Motorola in the
future could overwrite this flag causing the kernel to misinterpret
the dirty/clean status flag during system initialization.
17. The PCI bridge chipset (aka Raven) used on the PowerHawk 620/640 and
PowerStack II has a write posting control bit for each slave window
that allows the processor to continue before PCI writes have been
acknowledged. Prior to this change, this control bit is always off,
thereby disabling the posting of PCI writes.
Detailed problem resolution:
1. The fix is to re-implement the way that interrupt vectors are restored
in the kernel's interrupt vector table when a iconnect(3C) ICON_DISC
disconnection occurs, so that the proper vector value is placed into
the interrupt vector table entry.
2. Implemented as detailed above.
3. Modifications to the memfs kernel moduled made to support booting
from a Flash Memory Device.
4. The fast boot logic was changed to always set the dirty/clean flag to
dirty during system initialization, whether or not the FASTFS tunable
is set for the kernel. Previously, the dirty/clean flag was set to
dirty during system initialization only when the FASTFS tunable was
set. The dirty/clean flag will now be left set to dirty if the system
does not shutdown cleanly, irregardless of how FASTFS is set. This
insures that the next kernel that boots will never see the file
systems as clean when the previous kernel went down dirty.
6. Problems resolved as follows:
* Add ULTRA-2 (LVD) controller support (Symbios 53c895) to ncr
driver.
* Added special SCSI Script instructions to reset 53c875 cache
line alignment mechanism on each PCI dma block move. Added
high performance mode configuration. Added FIFO flush logic
to completion and disconnect. Added NCR_BURST_SZ tunable
to allow multiple dma cache line bursts per PCI bus tenure.
* Changed generic disk driver (gd) to support 1K sector
format, media missing at boot, media change, and disk
geometry change with media change (including new partition
layout). Added check for true block size in via driver.
* Added NCR_875_MAX_SYNC system tunable allow running more
drives on a longer cable by tuning the 53c875 to FAST/WIDE
speeds.
* Added PHYSIO_MAXTRNSFR system tunable to allow up to 512K
raw transfers for ncr (via and hsa not supported).
7. Change the xfs file time update code to set both subfields of the
access, modification or changed timeval structures.
8. xdm needs some help to know when a shutdown is occuring so that
attempts to re-launch the X server can be avoided. Once committed to
shutting down the system, the shutdown script now creates a file
/var/NOLOGIN as a signal that a shutdown is in progress. This file
is removed by rc1 and rc2 startup scripts when booting or restarting.
9. Smse timeouts have been lengthened and the state machine code made
more robust.
10. Numerous enhancements to PCI support including:
* Support added for doing configuration accesses of
multi-function PCI devices.
* PCI bridge depths up to four now supported, including last
four expansion slots of the BIT3 PCI expansion chassis.
* PCI bridge I/O and memory range tunables expanded and
architecture specific tunables (defaults) were added.
11. Replace AT2Serial converter box support in skbd STREAMS module with
support for Concurrent's own serial keyboard.
12. The top(1) command has been modified to allow a larger memory
allocation for the memory usage display. This fix also resulted in a
small change to the top(1) manpage, corrected in patch man-004.
13. The cause was the failure of the priocntl system call to nudge the
CPU after changing the LWP's priority (i.e., failed to force the CPU
to re-evaluate which LWP it was supposed to run). The LWP was
actually put at the end of its new run queue as it should have been,
but without the nudge the CPU did not notice the changed
circumstances of the LWP.
The solution was to expand the `if' statement that does nudging in
priocntl(2) to nudge if the new priority run queue was not empty
prior to the insertion.
14. The kernel now writes the correct date to the hardware Time Of
Century Clock when the system time is changed, thereby ensuring the
system time is correctly set upon system reboot.
15. This patch adds the required base system support for the Interphase
5526 PCI Fibre Channel Adapter card. The actual Fibre Channel kernel
driver and required utilities are included in the "fibre" software
package.
16. Moved the location of the fast boot dirty/clean flag from 0x0010 to
0x1200 within the NVRAM. This moves it out of the PRP header area.
The size of the flag was changed from 1 byte to 4 bytes. If the file
systems shutdown cleanly, the flag will now be set to 0x4f4b4159
(instead of 0x1). These changes will insure that the dirty/clean flag
cannot be misinterpreted by the kernel.
17. Set the write post enable bit for the slave window used for PCI
memory accesses.
Object To Be Replaced:
/etc/conf/mdevice.d/radl
/etc/conf/mtune.d/gd
/etc/conf/mtune.d/io
/etc/conf/mtune.d/memfs
/etc/conf/mtune.d/pci
/etc/conf/pack.d/bsp2600/Driver.o
/etc/conf/pack.d/bspall/Driver.o
/etc/conf/pack.d/bspmtx/Driver.o
/etc/conf/pack.d/cons/Driver.o
/etc/conf/pack.d/gd/Driver.o
/etc/conf/pack.d/gd/space.c
/etc/conf/pack.d/io/Driver.o
/etc/conf/pack.d/io/space.c
/etc/conf/pack.d/memfs/Driver.o
/etc/conf/pack.d/memfs/space.c
/etc/conf/pack.d/pci/Driver.o
/etc/conf/pack.d/pci/space.c
/etc/conf/pack.d/proc/Driver.o
/etc/conf/pack.d/radl/Driver.o
/etc/conf/pack.d/radl/stubs.c
/etc/conf/pack.d/scsi/Driver.o
/etc/conf/pack.d/skbd/Driver.o
/etc/conf/pack.d/skbd/space.c
/etc/conf/pack.d/smse/Driver.o
/etc/conf/pack.d/svc/Driver.o
/etc/conf/pack.d/ui/Driver.o
/etc/conf/pack.d/xfs/Driver.o
/etc/conf/sdevice.d/radl
/etc/conf/sdevice.d/skbd
/usr/bin/gev
/usr/bin/rac
/usr/bin/top
/usr/ccs/lib/libc.a
/usr/ccs/lib/libc.so
/usr/include/libc_synonyms.h
/usr/include/sys/adapter.h
/usr/include/sys/iconnect.h
/usr/include/sys/im.h
/usr/include/sys/in82378.h
/usr/include/sys/gd.h
/usr/include/sys/nvram.h
/usr/include/sys/pci.h
/usr/include/sys/pci_p.h
/usr/include/sys/pci_info.h
/usr/include/sys/racfile.h
/usr/include/sys/radl.h
/usr/include/sys/ravenmpic.h
/usr/include/sys/scsi.h
/usr/include/sys/skbd.h
/usr/include/sys/syscall.h
/usr/include/sys/fs/memfs_mnode.h
/usr/include/sys/fs/memfs.h
/usr/lib/libnsl_i.a
/usr/lib/libnsl_i.so
/usr/lib/libc.so.1
/usr/lib/libcmd.a
/usr/lib/libud.so
/usr/lib/libud.a
/usr/lib/locale/C/MSGFILES/core.abi.str
/usr/lib/locale/C/MSGFILES/harris.str
/sbin/rc0
/sbin/rc1
/sbin/rc2
/sbin/shutdown
/sbin/wsinit
/sbin/format
/sbin/bcheckrc
Special Conditions for Installation:
NOTICE #1: The PCI Fibre channel adapter is supported only on PowerStack
and PowerStack II (single and multi-processor) platforms.
NOTICE #2: You must insure that the configuration parameters for the
PPCBug NIOT command are not stored in NVRAM locations 0x1200
to 0x12ff on your system. The default location of the NIOT
configuration parameters is 0x1000 and they are 256 (0x100)
bytes in length. To check the location of the NIOT
configuration parameters on your system, use the PPCBug ENV
command to examine the "Network Auto Boot Configuration
Parameters Offset (NVRAM) = 00001000". If any part of the
NIOT configuration parameters area overlaps locations 0x1200
to 0x12ff, you MUST change the location of the NIOT
configuration parameters using the PPCBug ENV command.
NOTICE #3: The following links will also be created during installation
of base-013:
* Link to /usr/bin/gev
/usr/bin/gevdel
/usr/bin/gevdump
/usr/bin/gevget
/usr/bin/gevgetval
/usr/bin/gevinfo
/usr/bin/gevinit
/usr/bin/gevput
/usr/bin/gevputval
/usr/bin/gevshow
* Link to /usr/lib/libnsl_i.a
/usr/lib/libnsl.a
/usr/lib/libxti.a
/usr/lib/libsocket.a
* Link to /usr/lib/libnsl_i.a
/usr/lib/libnsl.so
/usr/lib/libxti.so
* Link to /usr/ccs/lib/libc.so
/usr/ccs/lib/libp/libc.so
Possible Side Effects:
NOTICE #1: The file systems will appear to have gone down dirty the
first time a kernel with this change is booted (even if the
previous kernel shutdown cleanly). This occurs because it
takes one boot sequence to initialize the new dirty/clean
flag location.
The fast boot logic may not accurately detect the state of
the file systems if you switch back and forth between a
kernel that does not have this change, and a kernel that has
this change.
NOTICE #2: Tunable parameters that control position and size of I/O and
memory windows on secondary PCI buses have been changed.
Sites that have locally defined any of the the old PCIx_MEM_*
or PCIx_IO_* tunable values will need to convert these to the
equivalent PCIx_MEM* or PCIx_IO* values.
DO NOT SIMPLY SUBSITITUTE THESE OLD TUNABLE VALUES FOR THE
CORRESPONDING NEW PARAMETER BECAUSE THE MEANINGS OF THESE
PARAMETERS ARE DIFFERENT. FAILURE TO DO SO MAY RESULT IN
UNEXPECTED OR UNRELIABLE BEHAVIOR.
Instead, read the descriptions of the new tunable parameters
closely, and supply a new value only if necessary for your
configuration. The default values provided should work for
most common configurations.
return to index
================================================================================
Concurrent Computer Corporation Software Development
Software Patch Report
Patch Name: base-014
Date Issued: 09/30/98 08:31:03
Software Package: base pkg (Version 4.2)
OS Release: PowerMAX OS 4.2
Architectures: moto
Platforms: Power Hawk 640, PowerStack II (multi-proc)
Related Patches: audit-001, cluster-005, cmds-002, crosslibs-003,
crypt-002, crypt-int-001, dec-007, inet-006, man-004,
ncr-002, via-001, zld-002, cld (4.2), fibre (4.2),
netboot (4.2)
Related SARS: HM12415, HM12357, HM12462, HM12322
Brief Description:
PowerMAX OS 4.2 base package release updates
Problem Description:
1. iconnect(3C) ICON_IVEC II_ALLOCATE calls may always return EBUSY.
If an interrupt vector is allocated with an iconnect(3C) ICON_IVEC
II_ALLOCATE call, and a LWP makes an ienable(3C) call to connect to
that vector, and another LWP later disconnects that ienabled LWP with
a iconnect(3C) ICON_DISC call, then that allocated interrupt vector
will be improperly marked free in the kernel's interrupt vector
table, even though the kernel's user-level interrupt data structures
will properly indicate that this vector is still ICON_IVEC allocated.
All subsequent iconnect(3C) ICON_IVEC II_ALLOCATE calls without the
vector specified (where the II_VECSPEC flag is not set) will result
in EBUSY being returned, instead of having a vector successfully
allocated.
2. Rommable PowerMAX OS support added:
Added random access decompression library support (radl) to the
kernel, plus tunable and stub file to enable or disable. This
library must be enabled for all diskless configurations of
PowerMAX OS. For all other configurations, it may be enable or
disabled. By default radl is disabled for all platforms, since by
default most platforms have a true disk for root. The various
diskless build packages (netboot, cluster) automatically turn this on
for the affected targets or clients as appropriate. Hence it is
expected there will be