 |
≫ |
|
|
 |
パッチ名: PHKL_33552
パッチ摘要: s700_800 11.23 VM copy-on-write時のデータ破壊の解消
作成日: 05/07/14
公開日: 05/08/29
警告: 07/01/12 - これは、当社からの警告(Non-Criticalレベル)です。
- PHKL_33364をインストールしたシステムで、5GBを超えるサイズのShared
Global Area(SGA)セグメントを使用するOracleデータベースに複数のユーザ
ーが同時に接続し、かつ、"非同期入出力(asyncio)"を使用するように
Oracleが構成されていると、パフォーマンスが低下する可能性があります。
- この問題の詳細は、サービス要求4000128670(JAGag23329)を参照してくださ
い。
- 後継パッチPHKL_33552、PHKL_33563、PHKL_34596およびPHKL_35229でも同じ
問題が起きます。
- パッチPHKL_33364は、システムハングを引き起こす可能性のあるカーネル内
での重大な競合問題(サービス要求8606390848(JAGaf50993)を参照)に対処し
ているので、このパッチを削除せずに、/dev/asyncのマイナー番号を256に
設定することによって"非同期入出力"のメモリーロックをオフにするようお
勧めします。このようにすると、Shared Global Area(SGA)ページのメモリ
ーロックにより、それらのページはページアウトの対象から除外されます。
メモリー使用量が通常の動作範囲内であれば、これで、この問題は起きませ
ん。ただし、システムがメモリー不足状態になると、Shared Global Area
(SGA)ページがページアウトされる可能性があるため、メモリー不足状態が
持続している間はパフォーマンスが低下します。しかし、メモリー不足が緩
和すれば、パフォーマンスは回復します。
- この問題は、まもなくリリースされる後継パッチで解決されます。
ハードウェアプラットフォームおよびOSリリース:
s700: 11.23
s800: 11.23
現象:
PHKL_33552:
(SR:8606405310 CR:JAGaf65230)
InfiniBandドライバ付きカーネルがインストールされている場合にfork()を実
行すると、アプリケーション内でデータ破壊が起きることがあります。
問題点の説明:
PHKL_33552:
(SR:8606405310 CR:JAGaf65230)
fork()の処理中に発生したcopy-on-writeフォルトの解決時にデータ破壊が起
きていました。フォルトの処理時に、ハンドラスレッドが休眠し、別のプロ
セッサで再開することがあります。ところが、この場合に、前回のプロセッサ
のプロセッサコンテキストをクリーンアップしていなかったため、前回のプロ
セッサ上に無効な変換情報が残っていました。そのため、不正なデータアクセ
スが行われ、データ破壊が起きていました。
解決方法:
変換情報を使用する前にプロセッサコンテキストをクリーンアップするように
コードを修正しました。これで、無効な変換情報はクリアされるので、それが
間違って使用されることはありません。
-----------------------------------------------------------------------------
Patch Name: PHKL_33552
Patch Description: s700_800 11.23 VM Copy on write data corruption fix
Creation Date: 05/07/14
Post Date: 05/08/29
Warning: 07/01/12 - This Non-Critical Warning has been issued by HP.
- PHKL_33364 introduced behavior that can cause performance
degradation when multiple users connect simultaneously to
Oracle databases with Shared Global Area (SGA) segments
of sizes more than 5GB and Oracle is configured to use
"asyncio".
- Additional information on this behavior may be found in
Service Request 4000128670 (JAGag23329).
- The same behavior is experienced with superseding patches
PHKL_33552, PHKL_33563, PHKL_34596 and PHKL_35229.
- As patch PHKL_33364 addresses a critical kernel race
condition that can cause a system hang (see Service
Request 8606390848 (JAGaf50993)), HP recommends to not
remove the patch(es) but to turn off "asyncio" memory
locking by setting the minor number of /dev/async to 256.
This will prevent memory locking of the Shared Global
Area (SGA) pages making them potential targets for page
outs.
This condition is benign when memory utilization is
within normal operating limits. However, if the system
is under memory pressure, the Shared Global Area (SGA)
pages could get paged out leading to performance
degradation as long as memory pressure persists. Once
the memory pressure is relieved performance will return
to normal.
- This behavior will be addressed in a superseding patch to
be released as soon as possible.
Hardware Platforms - OS Releases:
s700: 11.23
s800: 11.23
Products: N/A
Filesets:
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
Automatic Reboot?: Yes
Status: General Superseded With Warnings
Critical:
Yes
PHKL_33552: CORRUPTION
PHKL_33364: HANG
Category Tags:
defect_repair general_release critical halts_system
corruption
Path Name: /hp-ux_patches/s700_800/11.X/PHKL_33552
Symptoms:
PHKL_33552:
( SR:8606405310 CR:JAGaf65230 )
On a kernel with InfiniBand driver, applications may see
data corruption after fork() is executed.
PHKL_33364:
( SR:8606390848 CR:JAGaf50993 )
If two or more kernel threads are trying to mlock(2)the same
segment of memory simultaneously, a race condition may
result in system/process hang due to resource
contention/deadlock.
PHKL_32264:
( SR:8606373282 CR:JAGaf33674 )
On IPF platforms at the first instance of modification
of pages in mmap(2) segments which are constructed using
the lazy swap feature results in SIGSEGV signal if swap
swap space reservation fails. However, the mmap(2) man page
specifies that condition will result in SIGBUS delivered to
the faulting process.
Defect Description:
PHKL_33552:
( SR:8606405310 CR:JAGaf65230 )
Data corruption takes place during the resolution of
copy-on-write fault while handling fork(). During the fault
handling the handler thread may sleep and resume on another
processor. When that happens it doesn't cleanup the
processor context of the previous processor, thus leaving
stale translation information on the previous processor.
This can cause incorrect data access and corruption.
Resolution:
Cleanup the processor context before using any translations.
This ensures that any stale translations are cleared and
not used erroneously.
PHKL_33364:
( SR:8606390848 CR:JAGaf50993 )
Two or more threads trying to kernel lock a large memory
segment can cause system hang if they are locking the
memory segment simultaneously.
Resolution:
If the request is to mlock(2) for the kernel then we fault
in all pages in the part of the region in question
regardless of whether some (or all) of the pages were
already faulted in. User locking remains unaffected
PHKL_32264:
( SR:8606373282 CR:JAGaf33674 )
Kernel implementation on IPF platforms was inconsistent
with documentation for the signal type returned on
an access failure to mmap(2) segments which requested
lazy swap reservation. The access failure occured due
due to swap exhaustion when the page was accessed.
Resolution:
Kernel implementation on IPF platforms is made consistent
with the documentation.
Enhancement:
No
SR:
8606373282 8606390848 8606405310
Patch Files:
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libvm-pdk.a(pregion_hdl.o)
/usr/conf/lib/libvm.a(pregion.o)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libvm.a(pregion.o)
what(1) Output:
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libvm-pdk.a(pregion_hdl.o):
pregion_hdl.c $Date: 2005/07/13 05:02:22 $Revision:
r11.23/6 PATCH_11.23 (PHKL_33552)
/usr/conf/lib/libvm.a(pregion.o):
pregion.c $Date: 2005/05/25 03:47:10 $Revision: r11.
23/6 PATCH_11.23 (PHKL_33364)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libvm.a(pregion.o):
pregion.c $Date: 2005/05/25 03:47:10 $Revision: r11.
23/6 PATCH_11.23 (PHKL_33364)
cksum(1) Output:
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
3013570504 163072 /usr/conf/lib/libvm-pdk.a(pregion_hdl.o)
1950161692 182096 /usr/conf/lib/libvm.a(pregion.o)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
3488273292 97312 /usr/conf/lib/libvm.a(pregion.o)
Patch Conflicts: None
Patch Dependencies:
s700: 11.23: PHKL_31500
s800: 11.23: PHKL_31500
Hardware Dependencies: None
Other Dependencies: None
Supersedes:
PHKL_33364 PHKL_32264
Equivalent Patches: None
Patch Package Size: 180 KBytes
Installation Instructions:
Please review all instructions and the Hewlett-Packard
SupportLine User Guide or your Hewlett-Packard support terms
and conditions for precautions, scope of license,
restrictions, and, limitation of liability and warranties,
before installing this patch.
------------------------------------------------------------
1. Back up your system before installing a patch.
2. Login as root.
3. Copy the patch to the /tmp directory.
4. Move to the /tmp directory and unshar the patch:
cd /tmp
sh PHKL_33552
5. Run swinstall to install the patch:
swinstall -x autoreboot=true -x patch_match_target=true \
-s /tmp/PHKL_33552.depot
By default swinstall will archive the original software in
/var/adm/sw/save/PHKL_33552. If you do not wish to retain a
copy of the original software, include the patch_save_files
option in the swinstall command above:
-x patch_save_files=false
WARNING: If patch_save_files is false when a patch is installed,
the patch cannot be deinstalled. Please be careful
when using this feature.
For future reference, the contents of the PHKL_33552.text file is
available in the product readme:
swlist -l product -a readme -d @ /tmp/PHKL_33552.depot
To put this patch on a magnetic tape and install from the
tape drive, use the command:
dd if=/tmp/PHKL_33552.depot of=/dev/rmt/0m bs=2k
Special Installation Instructions: None
|