 |
≫ |
|
|
 |
パッチ名: PHKL_37044
パッチ摘要: s700_800 11.23 高分解能タイマー; SANOPROCSIG
作成日: 07/08/28
公開日: 07/09/04
ハードウェアプラットフォームおよびOSリリース:
s700: 11.23
s800: 11.23
現象:
PHKL_37044:
(SR:8606436376 CR:JAGaf94658)
MxNマルチスレッドプロセスの場合、プロセス内の全スレッドによってマスク
されているシグナルが処理されます。
問題点の説明:
PHKL_37044:
(SR:8606436376 CR:JAGaf94658)
すべてのシグナルがマスクされているMxNモードのマルチスレッドアプリケー
ションの場合、あるスレッドが休眠するか、あるリソースをブロックすると、
アプリケーションが、プロセスに送られたシグナルを受け取っていました。
解決方法:
シグナルが処理される可能性を完全になくすために、適切なチェックを行うよ
うにカーネルを修正しました。
注記: a. この問題を完全に解決するには、pthreadライブラリパッチ
PHCO_35997もインストールする必要があります。
b. マルチスレッドアプリケーションの場合、シグナルマスクを設定す
るには、sigprocmask()ではなくpthread_sigmask()を使用する必要
があります。
-----------------------------------------------------------------------------
Patch Name: PHKL_37044
Patch Description: s700_800 11.23 hires timers SANOPROCSIG
Creation Date: 07/08/28
Post Date: 07/09/04
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 Release
Critical:
Yes
PHKL_37044: ABORT
A process having masked all signals is dumping core
on receipt of external SIGSEGV signal.
Category Tags:
defect_repair enhancement general_release critical
halts_system
Path Name: /hp-ux_patches/s700_800/11.X/PHKL_37044
Symptoms:
PHKL_37044:
( SR:8606436376 CR:JAGaf94658 )
A signal masked by all the threads in a process is getting
handled for a MxN multi-threaded process.
PHKL_34358:
( SR:8606423338 CR:JAGaf82861 )
This product update is a member of a set needed to provide
enablement support for high resolution timers with select
APIs.
The full list of product updates required for this feature
are: PHCO_34191, PHKL_34356, PHKL_34357, PHKL_34358,
PHKL_34359, PHKL_34360, and PHKL_34361.
If any member of this set of product updates is not
installed, this product update will have no impact on your
system.
Defect Description:
PHKL_37044:
( SR:8606436376 CR:JAGaf94658 )
A multi-threaded application in MxN mode, with all signals
masked, still receives signals sent to the process when one
of the thread sleeps or blocks for some resource.
Resolution:
All the windows where the signal was getting handled are
closed by adding suitable checks in kernel.
Note: a. PHCO_35997 pthread library patch should also be
installed for a complete solution.
b. pthread_sigmask() should be used instead of
sigprocmask() for setting the signal mask in a
multi-threaded application.
PHKL_34358:
( SR:8606423338 CR:JAGaf82861 )
The following system calls and library APIs are limited in
resolution to the supported clock resolution --
timer_settime(2), setitimer(2), nanosleep(2),
sigtimedwait(2), ualarm(2), usleep(2), and
pthread_cond_timedwait(3T).
Many applications desire a finer resolution than the current
clock tick resolution of 10 milliseconds for these APIs.
Resolution:
The sigtimedwait(2) system call implementation is enhanced
to use high resolution timer enhancement when enabled.
Enhancement:
No (superseded patches contained enhancements)
PHKL_34358:
High resolution timer support
SR:
8606436376 8606423338
Patch Files:
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libpm.a(pm_signal.o)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libpm.a(pm_signal.o)
what(1) Output:
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libpm.a(pm_signal.o):
pm_signal.c $Date: 2007/08/27 18:52:06 $Revision: r1
1.23/3 PATCH_11.23 (PHKL_37044)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libpm.a(pm_signal.o):
pm_signal.c $Date: 2007/08/27 18:52:06 $Revision: r1
1.23/3 PATCH_11.23 (PHKL_37044)
cksum(1) Output:
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
3964209648 120808 /usr/conf/lib/libpm.a(pm_signal.o)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
2975672291 66752 /usr/conf/lib/libpm.a(pm_signal.o)
Patch Conflicts: None
Patch Dependencies:
s700: 11.23: PHKL_31500 PHKL_37043 PHKL_37045
s800: 11.23: PHKL_31500 PHKL_37043 PHKL_37045
Hardware Dependencies: None
Other Dependencies: None
Supersedes:
PHKL_34358
Equivalent Patches: None
Patch Package Size: 90 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_37044
5. Run swinstall to install the patch:
swinstall -x autoreboot=true -x patch_match_target=true \
-s /tmp/PHKL_37044.depot
By default swinstall will archive the original software in
/var/adm/sw/save/PHKL_37044. 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_37044.text file is
available in the product readme:
swlist -l product -a readme -d @ /tmp/PHKL_37044.depot
To put this patch on a magnetic tape and install from the
tape drive, use the command:
dd if=/tmp/PHKL_37044.depot of=/dev/rmt/0m bs=2k
Special Installation Instructions: None
|