HP Tru64 UNIX - v 5.1B-3 Multiple Virtual Memory Fixes



Tru64 UNIX

» Tru64 UNIX V5.1B-6
» Tru64 UNIX V5.1B-5
» Documentation
» Information library
» Software web index
» Software products library
» Patch database
» Services
» Developer & Solution Partner Program
» Send us your comments
» Support Statements

Evolving business value

» Tru64 UNIX to HP-UX 11i transition benefits calculator
» Alpha RetainTrust Program
» Transition

Related links

» Alpha systems
» HP-UX 11i
» Integrity servers
» Linux
» HP storage
» HP solutions
HP-UX 11i: measurably better TCO!
 Advisory Information

RELEASE DATE: 2006-10-09


This Early Release Patch (ERP) kit provides several virtual memory-related fixes. Specifically, the ERP provides the following:

  • Enhancements to the vm_overflow tunable.
    This tunable may be enabled to allow NUMA systems (GS80, GS160, GS320, GS1280, ES47, ES80) to more easily allocate memory from other RADS (Resource Affinity Domains). This is mostly a benefit for single applications that use large amounts of memory. For other applications, the added NUMA latency may actually degrade system performance.

    To enable, set vm_overflow to 1. To disable, set to 0
  • Changes to the way page migrations occur on NUMA systems to address poor system performance due to excessive paging.
  • Corrections that address an incompatibility between cpus_in_rad and gh_chunks/rad_gh_regions tunables that can result in the following boot failures:

    vm_mad_init[0]: unable to allocate vm_page array for region 0
    vm_mad_init[0]: unable to allocate vm_page array for region 1
    pmap_update_send: missing ack from cpu <n>
    trap: invalid memory read access from kernel mode
  • Correction to a problem where a thread could be left waiting on the original RAD when a page table page allocation requires an overflow to another RAD. This problem presents itself as an increased elapsed time for fork operations to complete.
  • Changes that increase the maximum value of cpus_in_rad to 64 and unhide this tunable.
  • Correction for "ubc_wire: hash failed" panics on non-NUMA systems. The following is a typical stack trace of this panic:
    1 panic
    2 ubc_wire
    3 u_vp_oop_pagecontrol
    4 u_anon_update_pmap
    5 u_anon_fault_backed
    6 u_anon_fault
    7 u_anon_lockop
    8 u_map_lockvas
    9 plock
    10 syscall
    11 _Xsyscall
  • Corrections for the "not wired" panic with system V shared memory and bigpages. This panic can occur if callers of the shmat syscall provide addresses with different page alignments when attaching the same shared memory region. A typical stack trace follows:
    1 panic
    2 pmap_lw_unwire_new
    3 lw_unwire_new
    4 vm_map_pageable
    5 cfs_condio_issue_io
    6 cfs_blkmap_directio
    7 cfs_condio_rw
    8 cfs_read
    9 vn_read
    10 rwuio
    11 read
    12 syscall
    13 _Xsyscall
  • Corrections for a boot failure on systems with sparsely populated cpus.
  • Fixes for a Kernel Memory Fault panic in _OtsMove() called from vaious I/O or filesystem routines. The following are typical stack traces:
    Kernel Memory Fault

    4 panic
    5 trap
    6 _XentMM
    7 _OtsMove
    8 bs_refpg_direct
    9 fs_read_direct
    10 fs_read
    11 msfs_read
    12 vn_pread
    13 msfs_strategy
    14 aio_rw
    15 syscall
    16 _Xsyscall

    Kernel Memory Fault

    0 stop_secondary_cpu
    1 panic
    2 event_timeout
    3 printf
    4 panic
    5 trap
    6 _XentMM
    7 _OtsZero
    8 cfs_condio_issue_io
    9 cfs_blkmap_directio
    10 cfs_condio_rw
    11 cfs_read
    12 vn_read
    13 rwuio
    14 read
    15 syscall
    16 _Xsyscall
  • Fixes for vl_unwire panic when gh_chunks are in use.
  • Fixes the panic: 'vm_pg_free: page wired' when bigpages are enabled.
  • Fixes bug in wiring code and light weight wirings.
  • Fixes lock management issues within the UBC that can lead to "mcs_unlock: current lock not found" and "mcs_lock: time limit exceeded" panics.
  • Fixes a "kernel memory fault" panic when the vm tunable 'anon_rss_enforce' is set to the hard limit (2).
  • Fixes the panic in pmap_pagemove(), when getblk() is invoked under certain situation.
  • Fixes a race condition in the ubc bigpage allocation routine. A typical panic string is:
    panic : Hashing that is not marked VPP_REPL

The following version is affected:

HP Tru64 UNIX v 5.1B-3


HP is releasing the following ERP kits publicly for use by any customer. The kits use dupatch to install and will not install over any Customer Specific Patches (CSPs) that have file intersections with the ERP. .

The fixes contained in the ERP kit are  available in the following mainstream patch kit:

HP Tru64 UNIX Version 5.1B-4

The kits distribute the following files:

  • /sys/BINARY/vm.mod
  • /sys/BINARY/arch_alphapmap.mod
  • /sys/BINARY/generic.mod
  • /usr/sys/BINARY/alpha_init.o
  • /usr/sys/BINARY/pmap_init.o
  • /sys/BINARY/marvel_cpu.mod
  • /sys/BINARY/marvel_soc.mod

Early Release Patches

HP Tru64 UNIX version: 5.1B-3
ERP Kit Name: T64KIT1000910-V51BB26-E-20060928
Kit Location: