Jump to content 日本-日本語
日本HPホーム 製品とサービス サポートとドライバ ソリューション ご購入方法
≫ お問い合わせ
日本HPホーム
企業ユーザ向けサポート情報   >  HP-UX サポート  >  セキュリティ報告&パッチダイジェスト翻訳版

PHCO_36323 s700_800 11.23 pthreadライブラリ
累積パッチ

企業ユーザ向けサポート情報

HP-UX サポート
Tru64 サポート
OpenVMS サポート
セキュリティ報告&パッチダイジェスト翻訳版
技術情報ツリー
ソフトウェアアップデート情報
ITRC日本フォーラム

ITRC

パッチデータベース
技術情報ベースの検索
サポートケースマネージャ
ソフトウェア アップデート マネージャ (SUM)
ご利用の手順
日本HPサイトマップ
コンテンツに進む
パッチ名:   PHCO_36323

パッチ摘要: s700_800 11.23 pthreadライブラリ累積パッチ

作成日:  07/06/27

公開日:  07/08/13

ハードウェアプラットフォームおよびOSリリース:

	s700: 11.23
	s800: 11.23

現象:

	PHCO_36323:

	1.(SR:8606488689 CR:JAGag41337)
	待機するスレッドがスピンできれば、非常に短い待機時間の条件変数を使用す
	るマルチスレッドアプリケーションのパフォーマンスを向上させることができ
	ます。

	2.(SR:8606478754 CR:JAGag33007)
	PHCO_33675やその置換パッチをインストールすると、mutexを使用する一部の
	マルチスレッドアプリケーションでスケーラビリティの問題が起きます。

問題点の説明:

	PHCO_36323:

	1.(SR:8606488689 CR:JAGag41337)
	条件変数の待機時間が非常に短い場合、条件変数を使用する一部のマルチスレ
	ッドアプリケーションの処理時間が待機時間に比例して増減しないことがあり
	ました。この原因は、条件待ちで休眠したスレッドの起動にかかる時間が総待
	機時間を上回る可能性があるためです。

	解決方法:
	新たな環境変数PTHREAD_COND_PERFを導入しました。この環境変数を1に設定す
	ると、pthread_cond_wait()/pthread_cond_timedwait()を呼び出すアプリケー
	ションスレッドをある時間スピンさせることができます。これによって、非常
	に短い待機時間の条件変数を使用するアプリケーションのパフォーマンスが向
	上します。また、必要なら、新たな別の環境変数PTHREAD_COND_SPIN_YIELDを
	以下のように設定することによって、spin属性を適切に調整することもできま
	す。

	PTHREAD_COND_SPIN_YIELD=<A>:<B>

	ここで、

	    <A>: スピナーが条件に対してスピンを繰り返す回数。
	    <B>: スピン中のyield frequency(プロセッサを解放する頻度)。つまり、
	         スピナーはここで指定したスピン回数ごとに1回、sched_yield()を
	         実行します。

	    両属性とも正の整数で、かつ、同時に指定する必要があります。

	2.(SR:8606478754 CR:JAGag33007 )
	PHCO_33675やその置換パッチをインストールすると、mutexを使用する一部の
	マルチスレッドアプリケーションのパフォーマンスが低下することがありまし
	た。PHCO_33675では、mutexのデフォルトのスピン値とyield frequencyが変更
	されました。その結果、旧スピン値では問題のなかった一部のアプリケーショ
	ンのパフォーマンスが低下することがありました。

	解決方法:
	新たな環境変数PTHREAD_MUTEX_SPINVALを導入しました。パフォーマンスが低
	下するアプリケーションは、この環境変数の設定値を"old"にすることによっ
	て、mutexの旧スピン値を設定できます。また、PTHREAD_MUTEX_SPINVALを以下
	のように設定することによって、mutexでのスピンを適切に調整することもで
	きます。

	PTHREAD_MUTEX_SPINVAL=<A>:<B>:<C>

	ここで、

	    <A>: mutexロックの解放をブロックするスレッドが存在しない場合に、
	         スピナーがロックに対してスピンを繰り返す回数。
	    <B>: mutexロックの解放をブロックするスレッドが存在する場合に、スピ
	         ナーがロックに対してスピンを繰り返す回数。
	    <C>: スピン中のyield frequency(プロセッサを解放する頻度)。つまり、
	         スピナーはここで指定したスピン回数ごとに1回、sched_yield()を
	         実行します。

	    これらの属性はいずれも正の整数で、かつ、同時に指定する必要がありま
	    す。

-----------------------------------------------------------------------------
Patch Name: PHCO_36323

Patch Description: s700_800 11.23 pthread library cumulative patch

Creation Date: 07/06/27

Post Date: 07/08/13

Hardware Platforms - OS Releases: 
	s700: 11.23
	s800: 11.23

Products: N/A

Filesets: 
	ProgSupport.PAUX-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP
	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
	OS-Core.C-MIN-32ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
	OS-Core.C-MIN-64ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP

Automatic Reboot?: No

Status: General Release

Critical: 
	No (superseded patches were critical)
	PHCO_34944: HANG ABORT
		HANG
		JAGaf91535: MxN application creating threads with
		the scheduling policy RTSCHED, sometimes hangs.
		JAGag21565: pthread application (/usr/sbin/named)
		hangs intermittently.
		ABORT
		JAGag07930: pthreads application dumps core when the
		number of active threads reaches max_thread_proc.
	PHCO_34718: ABORT
		Application may abort when multiple threads
		terminate simultaneously.
	PHCO_33676: ABORT CORRUPTION
		This patch repairs certain situations in which
		applications dump core or data is corrupted.
	PHCO_33675: OTHER
		Fixes some performance issues with libpthread mutex
		under high contention scenarios.
	PHCO_32489: HANG MEMORY_LEAK
		JAGaf47782 (SR 8606387629) : Race condition between
		pthread_exit() and pthread_detach() leads to memory
		leak.

		JAGaf66244 (SR 8606406336) : Multi threaded
		application built on PA-RISC platform hangs when
		run on IPF platform through Aries.

	PHCO_31553: HANG OTHER
	Because of the incorrect binding, applications may run
	slower than they should.
	PHCO_30543: HANG

Category Tags: 
	defect_repair enhancement general_release critical
	halts_system corruption memory_leak manual_dependencies

Path Name: /hp-ux_patches/s700_800/11.X/PHCO_36323

Symptoms: 
	PHCO_36323:
	( SR:8606488689 CR:JAGag41337 )
	Multithreaded applications that use condition variables
	with very short wait time can perform better if the
	waiting threads are allowed to spin.

	( SR:8606478754 CR:JAGag33007 )
	Some multithreaded applications that use mutexes face
	scalability issues with PHCO_33675 and its superseding
	patches.

	PHCO_35997:
	( SR:8606465273 CR:JAGag20888 )
	Itanium applications creating unbound threads that modify
	the psr.ac bit to perform unaligned access may misbehave.

	( SR:8606477325 CR:JAGag31743 )
	Reduce the overhead caused to single threaded applications,
	when linked with libpthread.

	( SR:8606468210 CR:JAGag23544 )
	libpthread consumes CPU when there is no lock contention.

	( SR:8606429720 CR:JAGaf89186 )
	In the MxN mode, unbound threads receive certain external
	signals despite being explicitly blocked by the threads.

	PHCO_34944:
	( SR:8606412674 CR:JAGaf72536 )
	MxN applications sometimes dump core when the pthread
	concurrency level is reduced.

	( SR:8606416991 CR:JAGaf76824 )
	pthread_detach() returns ESRCH intermittently.

	( SR:8606429702 CR:JAGaf89168 )
	Signal masks are not inherited by child threads as expected
	in MxN mode.

	( SR:8606430469 CR:JAGaf89928 )
	The manpages of pthread_mutex_init(3T),
	pthread_cond_init(3T) and pthread_rwlock_init(3T)
	talk incorrectly about the APIs returning EBUSY.

	( SR:8606432093 CR:JAGaf91535 )
	MxN application creating threads with the scheduling policy
	RTSCHED, sometimes hangs.

	( SR:8606450932 CR:JAGag07930 )
	pthreads application dumps core when the number of active
	threads reaches max_thread_proc.

	( SR:8606458492 CR:JAGag14709 )
	pthread(3T)) manpage needs updation on link order with libc.

	( SR:8606466029 CR:JAGag21565 )
	pthread application (/usr/sbin/named) hangs intermittently.

	PHCO_34718:
	( SR:8606437582 CR:JAGaf95754 )
	Application may abort when multiple threads
	terminate simultaneously.

	( SR:8606444475 CR:JAGag02031 )
	Applications holding shared mutex for a longer duration may
	see a performance degradation.

	PHCO_33676:
	( SR:8606403068 CR:JAGaf63003 )
	Some multithreaded applications that require more stack
	size than the currently supported stack size (i.e. 64KB on
	PA-RISC and 256KB on IPF platforms) dump core.

	( SR:8606405620 CR:JAGaf65541 )
	Some multithreaded applications that require more than 256
	keys for thread specific data dump core.

	( SR:8606418222 CR:JAGaf78055 )
	Some multithreaded applications using dlopen(3c) and
	dlclose(3c) dump core under certain circumstances.

	PHCO_33675:
	( SR:8606403520 CR:JAGaf63453 )
	Libpthread performance degrades significantly under high
	contention scenarios of mutexes.

	PHCO_32489:
	( SR:8606387629 CR:JAGaf47782 )
	Race condition between pthread_exit() and pthread_detach()
	of a thread leads to memory leak.

	( SR:8606392186 CR:JAGaf52318 )
	Standards conformance of pthread_suspend() and
	pthread_continue() are mentioned incorrectly in the man
	page.

	( SR:8606390985 CR:JAGaf51130 ) Duplicate
	( SR:8606403528 CR:JAGaf63461 )
	System call traces show that the number of wake ups issued
	for threads in the sleep queue, waiting for a spin lock is
	too large compared to the actual number of sleeps.

	( SR:8606406336 CR:JAGaf66244 )
	Multi threaded application built on PA-RISC platform hangs
	when run on IPF platform through Aries.

	( SR:8606411050 CR:JAGaf70932 )
	Application using sys/pthread.h gives the following
	warning during compilation:

	"zero used for undefined preprocessing identifier"

	PHCO_31553:
	( SR:8606351175 CR:JAGaf11987 )
	pthread_cancel hangs in case the thread it is trying to
	cancel is sleeping inside the library.

	( SR:8606352206 CR:JAGaf13011 )
	JAVA profiling does not work with unbound threads.

	( SR:8606351178 CR:JAGaf11990 )
	pthread_mutex_lock() may return incorrect ETIMEDOUT
	if it is called just after pthread_cond_timedwait()
	and pthread_cond_signal() happens simultaneously with
	timer expiration of pthread_cond_timedwait().
	If pthread_cond_timedwait() is called in one thread and
	pthread_cond_signal() in the other repeatedly, the
	application may hang.

	( SR:8606357909 CR:JAGaf18608 )
	In a multithreaded application kernel threads are bound
	to the CPU even when no binding is specified.

	( SR:8606358478 CR:JAGaf19177 )
	In a multi threaded application, some threads may not come
	out of time based sleep.

	( SR:8606365130 CR:JAGaf25765 )
	In a multi threaded application, a thread (doing the
	time based sleep) might not be woken up.

	( SR:8606366778 CR:JAGaf27342 )
	A thread could get suspended while holding some internal
	locks and may lead to deadlock.

	( SR:8606363198 CR:JAGaf23861 )
	An application that fit in the 32-bit address space
	on PA may not fit in the 32-bit address space on IA.

	( SR:8606368385 CR:JAGaf28947 )
	When a 11i v1 multi-threaded application is compiled
	on 11i v2, the default scheduling contention scope of
	threads will be different from that on 11i v1.

	PHCO_30543:
	( SR:8606342667 CR:JAGaf03561 ) Duplicate
	( SR:8606343625 CR:JAGaf04477 )
	If pthread_cond_timedwait() is called in one thread and
	pthread_cond_signal() in the other repeatedly, the
	application may hang.
	pthread_mutex_lock() may return incorrect ETIMEDOUT
	if it is called just after pthread_cond_timedwait()
	and pthread_cond_signal() happens simultaneously with
	timer expiration of pthread_cond_timedwait().

	PHCO_30476:
	( SR:8606313694 CR:JAGae76486 )
	JAVA profiling does not work with unbound threads.

Defect Description: 
	PHCO_36323:
	( SR:8606488689 CR:JAGag41337 )
	Some multithreaded applications that use condition variables
	may not scale where the wait time on the condition variable
	is very low. This happens because threads go to sleep
	waiting on a condition and the time taken to wakeup these
	threads can be higher than the total wait time.

	Resolution:
	Application threads calling pthread_cond_wait() or
	pthread_cond_timedwait() can be made to spin for some time
	by setting the environmental variable PTHREAD_COND_PERF=1.
	This will boost performance of applications that have very
	short wait time on a condition variable. If required, the
	spin attributes can be fine tuned by setting another
	environment variable PTHREAD_COND_SPIN_YIELD as follows -
	PTHREAD_COND_SPIN_YIELD=<A>:<B>, where -
	    <A> is the number of iterations a spinner should spin
	        for the condition.
	    <B> is the yield frequency while spinning i.e, the
	        spinner will do a sched_yield() after every <B>
	        iterations.
	        Both attributes should be positive integers and
	        need to be specified together.

	( SR:8606478754 CR:JAGag33007 )
	Some multithreaded applications that use mutexes may see a
	performance degrade with PHCO_33675 and its superseding
	patches. The default spin values and yield frequency for
	mutexes was changed in PHCO_33675. This may cause a
	performance degrade for some applications which performed
	well with the old spin values.
	Resolution:
	Applications that see a performance degrade can set the
	environment tune PTHREAD_MUTEX_SPINVAL=old to set the old
	spin values for the mutex. PTHREAD_MUTEX_SPINVAL can also
	be set (as follows) to fine tune the spinning in mutexes.
	PTHREAD_MUTEX_SPINVAL=<A>:<B>:<C> where,
	    <A> is the number of iterations a spinner should spin
	        for the lock if there is no other thread blocking
	        for the mutex lock to be released.
	    <B> is the number of iterations a spinner should spin
	        for the  lock if there are other threads blocking
	        for the mutex lock to be released.
	    <C> is the yield frequency while spinning i.e, the
	        spinner will do a sched_yield() after every <C>
	        iterations.
	        All three attributes should be positive integers
	        and need to be specified together.

	PHCO_35997:
	( SR:8606465273 CR:JAGag20888 )
	Userspace context switch does not save and restore the
	psr.ac bit. Hence, applications using unbound threads that
	set this bit for unaligned memory access may misbehave.

	Resolution:
	During a context switch, the user-modifiable bits of PSR
	(psr.um) are saved and restored.

	( SR:8606477325 CR:JAGag31743 )
	Single threaded applications linked with libpthread show
	performance degradation because of thread-safe libraries
	having to acquire and release mutex locks. The requirement
	is to reduce the overhead of calling pthread_mutex_lock(3T)
	and pthread_mutex_unlock(3T) in a single threaded
	application.

	Resolution:
	Now pthread_mutex_lock(3T) and pthread_mutex_unlock(3T) will
	follow a light-weight path if the application is single
	threaded, thus improving performance.

	( SR:8606468210 CR:JAGag23544 )
	pthread_mutex_unlock(3T) consumes more CPU even if there is
	no contention on the lock.

	Resolution:
	Now pthread_mutex_unlock(3T) works faster when there is no
	lock contention.

	( SR:8606429720 CR:JAGaf89186 )
	There are certain windows in time where an unbound thread
	can receive an external signal, despite it being explicitly
	blocked by the user thread.

	Resolution:
	Suitable changes have been made in libpthread, to facilitate
	the kernel to address this issue.

	PHCO_34944:
	( SR:8606412674 CR:JAGaf72536 )
	MxN applications like /usr/sbin/utmpd sometimes dump core
	when the pthread concurrency level is reduced. The
	concurrency level can be reduced either by the program
	through pthread_setconcurrency() or when the number of CPUs
	on which the program can run is changed through pset or
	vpars related operations. The problem is due to a race
	condition under which the thread library fails to do proper
	load balancing.

	Resolution:

	The problem with the load balancer is corrected.

	( SR:8606416991 CR:JAGaf76824 )
	pthread_detach() sometimes returns ESRCH on a thread that
	was created as a joinable thread and is not reaped using
	pthread_join(). The problem occurs when multiple threads
	including the target thread to be detached exit, while
	pthread_detach() is in progress.

	Resolution:
	This problem is fixed. pthread_detach() on a joinable
	thread now returns EBUSY only if the thread is already
	reaped using pthread_join().

	( SR:8606429702 CR:JAGaf89168 )
	Signal masks of certain signals like SIGSEGV are not
	inherited by the child threads from the parent thread as
	expected in MxN applications. The problem is due to
	libpthread not copying the signal mask to the child thread
	correctly.

	Resolution:
	libpthread is now made to copy the signal mask of the parent
	thread to the child thread correctly, ensuring that the
	child thread always inherits the parent thread's signal
	mask.

	( SR:8606430469 CR:JAGaf89928 )
	The return value section of the manpage of
	pthread_mutex_init(3T), pthread_cond_init(3T) and
	pthread_rwlock_init(3T) state that they return EBUSY if the
	associated synchronization object is already initialized.
	However, getting EBUSY cannot be expected all the time
	since the behavior of reinitializing the object is
	undefined.

	Resolution:
	The man pages of pthread_mutex_init(3T),
	pthread_cond_init(3T) and pthread_rwlock_init(3T) have been
	modified appropriately.

	( SR:8606432093 CR:JAGaf91535 )
	The application hangs due to libpthread attempting to
	preempt the incorrect thread when a thread with scheduling
	policy RTSCHED, returns from the kernel after completing a
	blocking call.

	Resolution:
	The code is corrected to ensure that libpthread preempts the
	correct thread when a thread with scheduling policy RTSCHED,
	returns from the kernel after completing a blocking call.

	( SR:8606450932 CR:JAGag07930 )
	The problem occurs due to libpthread not handling the cache
	for threads properly when the application attempts to create
	threads beyond the process limit. This problem occurs in the
	case of creating threads with non default stack size alone.

	Resolution:

	The cache for threads are now handled properly, when the
	number of threads created equals the process limit.

	( SR:8606458492 CR:JAGag14709 )
	While compiling a multi-threaded application, libpthread
	should be linked before libc or else the behavior of the
	application at run time is undefined. The libpthread manpage
	does not talk about this link order dependency.

	Resolution:
	pthread(3T) manpage is updated to provide information on the
	link order dependency with libc. The manpage provides a link
	to another manpage pthread_stubs(5), which talks about the
	dependency.

	( SR:8606466029 CR:JAGag21565 )
	PHCO_33675 introduced a behavior where
	pthread_mutex_destroy() is allowed to complete execution
	before another thread doing pthread_mutex_unlock() returns.
	This results in the thread doing pthread_mutex_unlock() to
	hang at times.

	Resolution:
	It is now ensured that pthread_mutex_destroy() does not
	complete destroying the mutex till all other threads
	attempting a pthread_mutex_unlock() on the same mutex
	return.

	PHCO_34718:
	( SR:8606437582 CR:JAGaf95754 )
	PHCO_33675 introduced behavior on Itanium-based systems
	that may cause applications to abort. When multiple threads
	with a large stack size (256K or larger) are terminated at
	the same time, data protected by a spinlock may be accessed
	before the spinlock is acquired. As a result, the global
	data may then be accessed by multiple threads
	simultaneously causing unexpected behavior, such as the
	application aborting.

	Resolution:
	The code is fixed to ensure that spinlock
	protects the data properly.

	( SR:8606444475 CR:JAGag02031 )
	With PHCO_33675, applications on a loaded system holding
	shared mutexes for a longer duration can see a performance
	degradation. Problem is due to high spinning by threads
	contending for shared mutex.

	Resolution:
	Now the applications that are impacted can get the behavior
	prior to PHCO_33675 by setting the environment variable
	PTHREAD_SHARED_MUTEX_OLDSPIN to 1.

	PHCO_33676:
	( SR:8606403068 CR:JAGaf63003 )
	The default stack size provided by HP-UX libpthread is
	fixed and it is not enough for certain multithreaded
	applications. This causes such applications to dump core.

	Resolution:
	A new environment variable PTHREAD_DEFAULT_STACK_SIZE is
	provided to set the default stack size to a desired value.
	This saves applications from dumping core due to
	insufficient default stack size.

	( SR:8606405620 CR:JAGaf65541 )
	HP-UX libpthread supports 256 keys for thread specific
	data. This is not sufficient for some multithreaded
	applications. This causes the application to function
	incorrectly.

	Resolution:
	A new environment variable PTHREAD_USER_KEYS_MAX is
	provided to set the maximum number of keys needed.

	( SR:8606418222 CR:JAGaf78055 )
	Some multithreaded applications dump core when they call
	dlopen(3C) and dlclose(3C) in succession followed by a call
	to dlopen(3C) on the same library again. The problem occurs
	when a dlopen(3C) call is made on a shared library which
	uses thread local storage (TLS). A missing pointer
	validation in the TLS code causes the application to dump
	core.

	Resolution:
	Code has been modified to take care of this.

	PHCO_33675:
	( SR:8606403520 CR:JAGaf63453 )
	Many areas in the libpthread mutex code such as lock/unlock
	mechanisms, memory ordering, number of spinners, lock hold
	time, etc. are not optimized for performance. This causes
	performance degradation under high contention scenarios
	and leaves libpthread mutexes highly unscalable.

	Resolution:
	Code has been modified to take care of the mutex performance
	issues under high contention scenarios. The fix also takes
	care of some performance issues specific to IPF platforms.

	PHCO_32489:
	( SR:8606387629 CR:JAGaf47782 )
	When a joinable thread is exiting and a pthread_detach() is
	being called on that thread simultaneously, a race
	condition occurs in the code path which lead to not
	freeing of resources held by the exiting thread.

	Resolution:
	Code has been modified to avoid the race condition and
	hence the resources held by the exiting thread are freed.

	( SR:8606392186 CR:JAGaf52318 )
	Standards conformance of pthread_suspend() and
	pthread_continue() are mentioned as "X/Open" even though
	they are not standard APIs.

	Resolution:
	Standards conformance of pthread_suspend() and
	pthread_continue() are set to "None" in the man page.

	( SR:8606390985 CR:JAGaf51130 ) Duplicate
	( SR:8606403528 CR:JAGaf63461 )
	Increment and decrement of the counter of waiting threads
	for a spin lock in a parallel computing environment is done
	without any protection to its order of access. This may
	lead to computing wrong number of waiting threads and thus
	issuing incorrect number of wake ups.

	Resolution:
	Instead of maintaining counter for waiting threads, a flag
	is used to indicate if there are any waiting threads.
	The wake ups are now issued based on this flag, which is
	protected for its order of access. This reduces the chance
	of issuing incorrect wake ups.

	( SR:8606406336 CR:JAGaf66244 )
	Multi threaded application built on PA-RISC platform hangs
	when run on IPF platform through Aries, because
	pthread_mutex_lock() intermittently gets blocked on a mutex
	that is not locked. This is due to the difference in
	ordering of instruction execution in PA-RISC and IPF
	platforms whereby the mutex lock is manipulated wrongly.

	Resolution:
	The order of access to mutex lock is made stronger so that
	it is not manipulated wrongly and hence
	pthread_mutex_lock() does not get blocked on unlocked mutex.

	( SR:8606411050 CR:JAGaf70932 )
	There is an incorrect usage of #elif preprocessor in
	sys/pthread.h which causes warning during compilation.

	Resolution:
	The usage of #elif preprocessor in sys/pthread.h is now
	corrected and there are no more warnings during compilation.

	PHCO_31553:
	( SR:8606351175 CR:JAGaf11987 )
	Main thread M, tries to cancel a thread T1, which is doing
	the pthread_join() on another thread T2. The thread T2 is
	doing the condition wait which will never be woken up.
	As a result, T1 will never return from 'pthread_join()'.
	But, as in_api count is greater than 0 the pthread_suspend()
	from 'pthread_cancel()' ends up in an indefinite sleep
	waiting for T1 to get self-suspended.

	Resolution:
	Made join sleep interruptible.

	( SR:8606352206 CR:JAGaf13011 )
	Thread profiling data provided for unbound threads by
	Pthread library is insufficient when compared to the data
	provided for bound threads.

	Resolution:
	All the necessary information for JAVA application
	profiling are being provided by Pthread library.

	( SR:8606351178 CR:JAGaf11990 )
	If the timer is expired for pthread_cond_timedwait() and
	another thread calls pthread_cond_signal() at the same
	time, pthread library is not handling the scenario
	correctly. The internal mechanism (that handles user
	space sleep timeouts) is waking up the sleeping thread at
	the wrong time. Because of this:
	If a thread calls pthread_cond_timedwait() followed by
	pthread_mutex_lock()(on the mutex that is already
	locked), the thread is wokenup when it is sleeping in
	pthread_mutex_lock(). Hence, pthread_mutex_lock()
	returns ETIMEDOUT.
	If pthread_cond_timedwait() and pthread_cond_signal()
	are called repeatedly in separate threads, the internal
	mechanism will wakeup the thread which is in a different
	pthread_cond_timedwait() call than the intended. Also,
	it does not cleanup the associated data structures.
	Subsequently, the internal data structures are
	corrupted causing the application hang.

	Resolution:
	pthread library code is modified so that only one of the
	the callout server thread and pthread_cond_signal() will
	process the internal data structures associated with the
	time based sleep in user space and wakeup the sleeping
	thread appropriately.

	( SR:8606357909 CR:JAGaf18608 )
	There should not be any default binding for the scheduler
	activation (SA). Any SA created or converted to SA (by
	concurrency manager) should have the binding type
	PTHREAD_BIND_NONE_NP instead of PTHREAD_BIND_ADVISORY_NP.
	In case of PTHREAD_BIND_NONE_NP, binding spu should be
	MPC_SPUFLOAT not 0.

	Resolution:
	There should not be any default binding for the SA, if none
	specified by the application.

	( SR:8606358478 CR:JAGaf19177 )
	In a multi threaded application using mxn model, if a
	process scope thread is doing time based sleep, internal
	data structures would be maintained to wakeup the thread
	when the timer expires. The internal mechanism that does
	this processing is missing some data structures and
	subsequently, corresponding thread may not be woken up.

	Resolution:
	While inserting a new data structure for the time based
	sleep, wakeup the internal mechanism to know about the
	new event and the corresponding thread is woken up
	appropriately when the timer expires.

	( SR:8606365130 CR:JAGaf25765 )
	When a thread goes to time based sleep (for example using
	pthread_cond_timedwait()), it needs to wakeup
	the internal mechanism and inform about the event. This
	is not happening in some corner cases.

	Resolution:
	The pthread code is modified so that a thread (doing
	the time based sleep) is woken up when the timer
	expires.

	( SR:8606366778 CR:JAGaf27342 )
	When a thread gets suspended, it could be holding internal
	pthread resources. In one scenario, the suspender thread
	could be trying to get the same resource that the suspended
	thread could be holding, causing a deadlock.

	Resolution:
	Fixed pthread_suspend() in pthread library to not suspend a
	thread while the thread is holding any spinlocks.

	( SR:8606363198 CR:JAGaf23861 )
	The pthread implementation arbitrarily divides
	the virtual memory allocated for the stack into statically
	sized regions for the RSE backing store and memory stack.
	This in turn causes applications which consume more of
	one portion than the other to experience premature
	stack overflow.
	Applications porting to IPF are currently forced to
	allocate more stack space in order to compensate
	for the artificial division of the space.

	Resolution:
	Provided new pthread interfaces for tuning the stack
	requirements on IA platforms.
	pthread_attr_setrsestacksize_np(),
	pthread_attr_getrsestacksize_np(),
	pthread_default_rsestacksize_np().

	( SR:8606368385 CR:JAGaf28947 )
	When a 11i v1 multi-threaded application is compiled
	on 11i v2, the default scope of threads will be process
	scope, whereas system scope is expected. It was a
	defect introduced in 11i v2. The source compatibility
	for 11i v1 multi-threaded applications is broken
	because of this defect.

	Resolution:
	libpthread code is modified so that when 11i v1
	application is compiled on 11i v2 Update 2 and forward,
	the application will get system scope threads by
	default. However, process scope threads can be created
	by passing scope attribute parameter set with
	PTHREAD_SCOPE_PROCESS to pthread_create().

	PHCO_30543:
	( SR:8606342667 CR:JAGaf03561 ) Duplicate
	( SR:8606343625 CR:JAGaf04477 )
	Pthread library is not appropriately handling the scenario
	 where the timer is expired for pthread_cond_timedwait()
	and another thread calls pthread_cond_signal() at the same
	time. The internal mechanism (that handles user space
	sleep timeouts) is waking up the sleeping thread at the
	wrong time. Because of this:
	If pthread_cond_timedwait() and pthread_cond_signal()
	are called repeatedly in separate threads, the internal
	mechanism will wakeup the thread which is in a different
	pthread_cond_timedwait() call than the intended. Also,
	it does not cleanup the associated data structures.
	Subsequently, the internal data structures are
	corrupted causing the application hang.
	If a thread calls pthread_cond_timedwait() followed by
	pthread_mutex_lock()(on the mutex that is already
	locked), the thread is wokenup when it is sleeping in
	pthread_mutex_lock(). Hence, pthread_mutex_lock()
	returns ETIMEDOUT.

	Resolution:
	pthread library code is modified so that only one of the
	internal mechanism (that handles user space sleep
	timeouts) or pthread_cond_signal() will process the
	internal data structures associated with the time based
	sleep in user space and wakeup the sleeping thread
	appropriately.

	PHCO_30476:
	( SR:8606313694 CR:JAGae76486 )
	Thread profiling data provided for unbound threads by
	Pthread library is insufficient when compared to the data
	provided for bound threads.

	Resolution:
	All the necessary information for JAVA application profiling
	are being provided by Pthread library.

Enhancement: 
	Yes
	PHCO_36323:
		JAGag41337 :
		A new environment variable, PTHREAD_COND_PERF is
		provided to introduce spinning in condition
		variables. Additionally, PTHREAD_COND_SPIN_YIELD
		is provided to fine tune condition variable spin
		attributes.
		JAGag33007 :
		A new environment variable, PTHREAD_MUTEX_SPINVAL
		is provided to fine tune mutex spin attributes.
	PHCO_33676:
		JAGaf63003 : A new environment variable
		PTHREAD_DEFAULT_STACK_SIZE is provided to set the
		default stack size to a desired value.
		JAGaf65541 : A new environment variable
		PTHREAD_USER_KEYS_MAX is provided to allow
		applications to set the maximum number of keys
		needed.

SR: 
	8606488689 8606478754 8606465273 8606477325 8606468210
	8606429720 8606412674 8606416991 8606429702 8606430469
	8606432093 8606450932 8606458492 8606466029 8606437582
	8606444475 8606403068 8606405620 8606418222 8606403520
	8606387629 8606392186 8606403528 8606406336 8606411050
	8606390985 8606313694 8606342667 8606343625 8606351175
	8606351178 8606352206 8606357909 8606358478 8606363198
	8606365130 8606366778 8606368385

Patch Files: 
	
	ProgSupport.PAUX-ENG-A-MAN,fr=B.11.23,
		fa=HP-UX_B.11.23_IA/PA,v=HP:
	/usr/share/man/man3.Z/pthread.3t
	/usr/share/man/man3.Z/pthread_attr_getdetachstate.3t
	/usr/share/man/man3.Z/pthread_attr_init.3t
	/usr/share/man/man3.Z/pthread_cond_init.3t
	/usr/share/man/man3.Z/pthread_create.3t
	/usr/share/man/man3.Z/pthread_default_rsestacksize_np.3t
	/usr/share/man/man3.Z/pthread_default_stacksize_np.3t
	/usr/share/man/man3.Z/pthread_key_create.3t
	/usr/share/man/man3.Z/pthread_mutex_init.3t
	/usr/share/man/man3.Z/pthread_mutexattr_getspin_np.3t
	/usr/share/man/man3.Z/pthread_resume_np.3t
	/usr/share/man/man3.Z/pthread_rwlock_init.3t
	/usr/share/man/man3.Z/pthread_attr_destroy.3t
	/usr/share/man/man3.Z/pthread_attr_getguardsize.3t
	/usr/share/man/man3.Z/pthread_attr_getinheritsched.3t
	/usr/share/man/man3.Z/pthread_attr_getprocessor_np.3t
	/usr/share/man/man3.Z/pthread_attr_getrsestacksize_np.3t
	/usr/share/man/man3.Z/pthread_attr_getschedparam.3t
	/usr/share/man/man3.Z/pthread_attr_getschedpolicy.3t
	/usr/share/man/man3.Z/pthread_attr_getscope.3t
	/usr/share/man/man3.Z/pthread_attr_getstackaddr.3t
	/usr/share/man/man3.Z/pthread_attr_getstacksize.3t
	/usr/share/man/man3.Z/pthread_attr_setdetachstate.3t
	/usr/share/man/man3.Z/pthread_attr_setguardsize.3t
	/usr/share/man/man3.Z/pthread_attr_setinheritsched.3t
	/usr/share/man/man3.Z/pthread_attr_setprocessor_np.3t
	/usr/share/man/man3.Z/pthread_attr_setrsestacksize_np.3t
	/usr/share/man/man3.Z/pthread_attr_setschedparam.3t
	/usr/share/man/man3.Z/pthread_attr_setschedpolicy.3t
	/usr/share/man/man3.Z/pthread_attr_setscope.3t
	/usr/share/man/man3.Z/pthread_attr_setstackaddr.3t
	/usr/share/man/man3.Z/pthread_attr_setstacksize.3t
	/usr/share/man/man3.Z/pthread_continue.3t
	/usr/share/man/man3.Z/pthread_suspend.3t
	/usr/share/man/man5.Z/pthread_scope_options.5

	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/lib/pa20_64/liblwp.1
	/usr/newconfig/usr/lib/hpux64/libpthread.so.1
	/usr/lib/hpux64/libpthread_tr.so.1
	/usr/newconfig/usr/lib/pa20_64/libpthread.1
	/usr/lib/pa20_64/libpthread_tr.1

	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/lib/liblwp.1
	/usr/lib/hpux32/libmxndbg.so.1
	/usr/lib/hpux64/libmxndbg.so.1
	/usr/lib/libmxndbg.1
	/usr/lib/libmxndbg64.1
	/usr/newconfig/usr/lib/hpux32/libpthread.so.1
	/usr/lib/hpux32/libpthread_tr.so.1
	/usr/newconfig/usr/lib/libpthread.1
	/usr/lib/libpthread_tr.1

	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/include/sys/pthread.h

	OS-Core.C-MIN-32ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/liblwp.a
	/usr/lib/libpthread.a
	/usr/lib/libpthread_tr.a

	OS-Core.C-MIN-64ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/pa20_64/liblwp.a
	/usr/lib/pa20_64/libpthread.a
	/usr/lib/pa20_64/libpthread_tr.a

	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/pa20_64/liblwp.1
	/usr/newconfig/usr/lib/pa20_64/libpthread.1
	/usr/lib/pa20_64/libpthread_tr.1

	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/liblwp.1
	/usr/lib/libmxndbg.1
	/usr/lib/libmxndbg64.1
	/usr/newconfig/usr/lib/libpthread.1
	/usr/lib/libpthread_tr.1

	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/include/sys/pthread.h

what(1) Output: 
	
	ProgSupport.PAUX-ENG-A-MAN,fr=B.11.23,
		fa=HP-UX_B.11.23_IA/PA,v=HP:
	/usr/share/man/man3.Z/pthread.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getdetachstate.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_init.3t:
		None
	/usr/share/man/man3.Z/pthread_cond_init.3t:
		None
	/usr/share/man/man3.Z/pthread_create.3t:
		None
	/usr/share/man/man3.Z/pthread_default_rsestacksize_np.3t:
		None
	/usr/share/man/man3.Z/pthread_default_stacksize_np.3t:
		None
	/usr/share/man/man3.Z/pthread_key_create.3t:
		None
	/usr/share/man/man3.Z/pthread_mutex_init.3t:
		None
	/usr/share/man/man3.Z/pthread_mutexattr_getspin_np.3t:
		None
	/usr/share/man/man3.Z/pthread_resume_np.3t:
		None
	/usr/share/man/man3.Z/pthread_rwlock_init.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_destroy.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getguardsize.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getinheritsched.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getprocessor_np.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getrsestacksize_np.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getschedparam.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getschedpolicy.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getscope.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getstackaddr.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_getstacksize.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setdetachstate.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setguardsize.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setinheritsched.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setprocessor_np.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setrsestacksize_np.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setschedparam.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setschedpolicy.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setscope.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setstackaddr.3t:
		None
	/usr/share/man/man3.Z/pthread_attr_setstacksize.3t:
		None
	/usr/share/man/man3.Z/pthread_continue.3t:
		None
	/usr/share/man/man3.Z/pthread_suspend.3t:
		None
	/usr/share/man/man5.Z/pthread_scope_options.5:
		None

	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/lib/pa20_64/liblwp.1:
		LWP (LightWeightProcess) Interfaces
	/usr/newconfig/usr/lib/hpux64/libpthread.so.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/lib/hpux64/libpthread_tr.so.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/newconfig/usr/lib/pa20_64/libpthread.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/lib/pa20_64/libpthread_tr.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)

	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/lib/liblwp.1:
		LWP (LightWeightProcess) Interfaces
	/usr/lib/hpux32/libmxndbg.so.1:
		libmxndbg Interfaces for gdb
	/usr/lib/hpux64/libmxndbg.so.1:
		libmxndbg Interfaces for gdb
	/usr/lib/libmxndbg.1:
		libmxndbg Interfaces for gdb
	/usr/lib/libmxndbg64.1:
		libmxndbg Interfaces for gdb
	/usr/newconfig/usr/lib/hpux32/libpthread.so.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/lib/hpux32/libpthread_tr.so.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/newconfig/usr/lib/libpthread.1:
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
		Pthread Interfaces
	/usr/lib/libpthread_tr.1:
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
		Pthread Interfaces

	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/include/sys/pthread.h:
		pthread.h $Date: 2005/08/19 03:02:18 $Revision: r11.
			23/6 PATCH_11.23 (PHCO_32489) */
		common/pthreads/pthread.h               $Revision: $

	OS-Core.C-MIN-32ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/liblwp.a:
		LWP (LightWeightProcess) Interfaces
	/usr/lib/libpthread.a:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/lib/libpthread_tr.a:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)

	OS-Core.C-MIN-64ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/pa20_64/liblwp.a:
		LWP (LightWeightProcess) Interfaces
	/usr/lib/pa20_64/libpthread.a:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/lib/pa20_64/libpthread_tr.a:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)

	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/pa20_64/liblwp.1:
		LWP (LightWeightProcess) Interfaces
	/usr/newconfig/usr/lib/pa20_64/libpthread.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
	/usr/lib/pa20_64/libpthread_tr.1:
		Pthread Interfaces
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)

	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/lib/liblwp.1:
		LWP (LightWeightProcess) Interfaces
	/usr/lib/libmxndbg.1:
		libmxndbg Interfaces for gdb
	/usr/lib/libmxndbg64.1:
		libmxndbg Interfaces for gdb
	/usr/newconfig/usr/lib/libpthread.1:
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
		Pthread Interfaces
	/usr/lib/libpthread_tr.1:
		pthread_version.c $Date: 2007/06/21 23:21:30 $Revisi
			on: r11.23/3 PATCH_11.23 (PHCO_36323)
		Pthread Interfaces

	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/include/sys/pthread.h:
		pthread.h $Date: 2005/08/19 03:02:18 $Revision: r11.
			23/6 PATCH_11.23 (PHCO_32489) */
		common/pthreads/pthread.h               $Revision: $

cksum(1) Output: 
	
	ProgSupport.PAUX-ENG-A-MAN,fr=B.11.23,
		fa=HP-UX_B.11.23_IA/PA,v=HP:
	3450485573 17767 /usr/share/man/man3.Z/pthread.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getdetachstate.3t
	2596741808 2522 /usr/share/man/man3.Z/pthread_attr_init.3t
	1118551879 2674 /usr/share/man/man3.Z/pthread_cond_init.3t
	2270535524 2528 /usr/share/man/man3.Z/pthread_create.3t
	2450457684 1959 /usr/share/man/man3.Z/
		pthread_default_rsestacksize_np.3t
	1383520659 1987 /usr/share/man/man3.Z/
		pthread_default_stacksize_np.3t
	4065544132 3215 /usr/share/man/man3.Z/pthread_key_create.3t
	3952801666 2614 /usr/share/man/man3.Z/pthread_mutex_init.3t
	841824979 4724 /usr/share/man/man3.Z/
		pthread_mutexattr_getspin_np.3t
	380885007 3241 /usr/share/man/man3.Z/pthread_resume_np.3t
	1874753880 2647 /usr/share/man/man3.Z/pthread_rwlock_init.3t
	2596741808 2522 /usr/share/man/man3.Z/
		pthread_attr_destroy.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getguardsize.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getinheritsched.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getprocessor_np.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getrsestacksize_np.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getschedparam.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getschedpolicy.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getscope.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getstackaddr.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_getstacksize.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setdetachstate.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setguardsize.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setinheritsched.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setprocessor_np.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setrsestacksize_np.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setschedparam.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setschedpolicy.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setscope.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setstackaddr.3t
	39647956 11721 /usr/share/man/man3.Z/
		pthread_attr_setstacksize.3t
	380885007 3241 /usr/share/man/man3.Z/pthread_continue.3t
	380885007 3241 /usr/share/man/man3.Z/pthread_suspend.3t
	4073368376 4543 /usr/share/man/man5.Z/
		pthread_scope_options.5

	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	4077254087 53360 /usr/lib/pa20_64/liblwp.1
	3473771481 1045216 /usr/newconfig/usr/lib/hpux64/
		libpthread.so.1
	382191148 1260048 /usr/lib/hpux64/libpthread_tr.so.1
	560831609 414552 /usr/newconfig/usr/lib/pa20_64/libpthread.1
	568914475 494848 /usr/lib/pa20_64/libpthread_tr.1

	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	756094265 40960 /usr/lib/liblwp.1
	1562877814 47456 /usr/lib/hpux32/libmxndbg.so.1
	2020623561 53936 /usr/lib/hpux64/libmxndbg.so.1
	2209216702 20480 /usr/lib/libmxndbg.1
	846161166 20480 /usr/lib/libmxndbg64.1
	4233901793 1011624 /usr/newconfig/usr/lib/hpux32/
		libpthread.so.1
	2349425968 1226264 /usr/lib/hpux32/libpthread_tr.so.1
	1112568962 389120 /usr/newconfig/usr/lib/libpthread.1
	1678424018 471040 /usr/lib/libpthread_tr.1

	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	1091274065 44650 /usr/include/sys/pthread.h

	OS-Core.C-MIN-32ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	3240621485 88472 /usr/lib/liblwp.a
	2379651520 524018 /usr/lib/libpthread.a
	2428556913 603070 /usr/lib/libpthread_tr.a

	OS-Core.C-MIN-64ALIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	1404534303 155350 /usr/lib/pa20_64/liblwp.a
	3265836267 911522 /usr/lib/pa20_64/libpthread.a
	4041646686 1042540 /usr/lib/pa20_64/libpthread_tr.a

	OS-Core.CORE2-64SLIB,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	4077254087 53360 /usr/lib/pa20_64/liblwp.1
	560831609 414552 /usr/newconfig/usr/lib/pa20_64/libpthread.1
	568914475 494848 /usr/lib/pa20_64/libpthread_tr.1

	OS-Core.CORE2-SHLIBS,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	756094265 40960 /usr/lib/liblwp.1
	2209216702 20480 /usr/lib/libmxndbg.1
	846161166 20480 /usr/lib/libmxndbg64.1
	1112568962 389120 /usr/newconfig/usr/lib/libpthread.1
	1678424018 471040 /usr/lib/libpthread_tr.1

	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	1091274065 44650 /usr/include/sys/pthread.h

Patch Conflicts: None

Patch Dependencies: 
	s700: 11.23: PHKL_31500 PHKL_34032
	s800: 11.23: PHKL_31500 PHKL_34032

Hardware Dependencies: None

Other Dependencies: 
	This patch exposes a defect in Serviceguard on uniprocessor
	systems which can lead to cmcld consuming 100% of cpu
	resulting in a hang or system TOC.  The patch should not be
	loaded on uniprocessor systems running Serviceguard without
	the corresponding Serviceguard patches.

	The resolution of this Serviceguard defect, SR 8606472905
	(JAGag27672), requires that one of the following patches, or
	any superseding patch, be installed:

	    Serviceguard A.11.16.00: PHSS_35863
	    Serviceguard A.11.17.00: PHSS_35427

Supersedes: 
	PHCO_30543 PHCO_30476 PHCO_35997 PHCO_34944 PHCO_34718 PHCO_33676
	PHCO_33675 PHCO_32489 PHCO_31553

Equivalent Patches: None

Patch Package Size: 4320 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 PHCO_36323

	5. Run swinstall to install the patch:

		swinstall -x autoreboot=true -x patch_match_target=true \
			  -s /tmp/PHCO_36323.depot

	By default swinstall will archive the original software in 
	/var/adm/sw/save/PHCO_36323.  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 PHCO_36323.text file is 
	available in the product readme:

		swlist -l product -a readme -d @ /tmp/PHCO_36323.depot

	To put this patch on a magnetic tape and install from the
	tape drive, use the command:

		dd if=/tmp/PHCO_36323.depot of=/dev/rmt/0m bs=2k

Special Installation Instructions: 
	HP-UX defaults to a 1x1 thread model that allows MxN threads
	to be created at any time. However, this flexibility adds
	overhead. This overhead can be reduced by setting the
	following environment variables:

	$ PTHREAD_FORCE_SCOPE_SYSTEM=1
	$ PERF_ENABLE=1

	This informs the pthread library to only use 1x1 threads.
	Most applications perform better using 1x1 threads, so the
	above environment variables can eliminate unneeded overhead
	for most applications. The above environment variables,
	however, should not be set if the application is using the
	pthread_suspend() API.

ページトップへ
セキュリティ報告&パッチダイジェスト翻訳版に戻る
プライバシー 本サイト利用時の合意事項 ウェブマスターに連絡
© 2008 Hewlett-Packard Development Company, L.P.