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

PHKL_36468 s700_800 11.23 gethrtime(3C); Itanium-2およびPA-64のサポート

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

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

ITRC

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

パッチ摘要: s700_800 11.23 gethrtime(3C); Itanium-2およびPA-64のサポート

作成日:  07/05/11

公開日:  07/08/03

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

	s700: 11.23
	s800: 11.23

現象:

	PHKL_36468:

	(SR:8606477109 CR:JAGag31587)
	稀に、gethrtime(3C)インタフェースが非単調増加時間値を返すことがありま
	す。

問題点の説明:

	PHKL_36468:

	(SR:8606477109 CR:JAGag31587)
	割り込みが長時間起きないと、各プロセッサ上のクロックのずれを補正するア
	ルゴリズムが不正な結果を生成することがありました。そのため、
	gethrtime(3C)が、前回返した値より若干小さい値を返すことがありました。

	解決方法:
	gethrtime(3C)配下のシステムコールから返された最後の値をスレッドごとに
	保存し、それより小さい値を返さないようにコードを修正しました。

-----------------------------------------------------------------------------
Patch Name: PHKL_36468

Patch Description: s700_800 11.23 gethrtime(3C); Itanium-2 and PA-64 Support

Creation Date: 07/05/11

Post Date: 07/08/03

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
	ProgSupport.C2-INC,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
	ProgSupport.C2-INC,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP

Automatic Reboot?: Yes

Status: General Release

Critical: 
	Yes
	PHKL_36468: OTHER
		gethrtime(3C) returns a non-monotonically increasing
		interval time
	PHKL_36300: PANIC HANG
	PHKL_33494: OTHER
		Incorrect argument handling
	PHKL_34082: PANIC

Category Tags: 
	defect_repair hardware_enablement enhancement
	general_release critical panic halts_system

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

Symptoms: 
	PHKL_36468:
	( SR:8606477109 CR:JAGag31587 )
	Under rare circumstances, the gethrtime(3C) interface
	returns non-monotonically increasing time values.

	PHKL_36300:
	( SR:8606458893 CR:JAGag15087 )
	On Itanium2 based Integrity systems the kernel may hang or
	panic in certain circumstances.

	PHKL_35391:
	( SR:8606457533 CR:JAGag13841 )
	Perfmon update for Dual-Core Intel(r) Itanium(r) 2
	processors.

	New 32-bit versions of the Java Hotspot product may have
	limited functionality or not work properly without this
	product update. See the respective documentation for the
	versions you are using to obtain specific kernel software
	upgrade requirements.

	If the version of Caliper or Java Hotspot Compiler you are
	using is a 64-bit application or does not require this
	product update, its installation will have no effect.

	PHKL_33820:
	( SR:8606408821 CR:JAGaf68723 )
	Shared mutex unlock operations have a significant
	degradation in performance in 11i v2 compared to 11i v1 for
	64 bit PA applications.

	PHKL_33494:
	( SR:8606402933 CR:JAGaf62868 )
	The mmap64(2) will fail if any 32-bit application passes a
	value greater than or equal to 2147483648 (2 GIG) in the
	'len' argument.

	PHKL_32542:
	( SR:8606387015 CR:JAGaf47168 )
	The gethrtime() call can be interrupted during its
	computation. This can result in incorrect time computations.
	This has been seen very infrequently, and only on systems
	with large numbers of processors.

	PHKL_32360:
	( SR:8606379329 CR:JAGaf39578 )
	swapcontext(2) returns EFAULT on a valid address passed
	to it.

	PHKL_34082:
	( SR:8606419398 CR:JAGaf79228 )
	On IPF systems, the system panics with the following
	message:
	More Bad News: loc_ksp (<addr>) != ksp (<addr))

	Stack Trace:
	  IP                     Function Name
	  0xe000000000b51b30     more_bad_news+0x4b0
	  0xe000000000b4f260     uw_eaddr_bub
	End of Stack Trace

Defect Description: 
	PHKL_36468:
	( SR:8606477109 CR:JAGag31587 )
	If interrupts are held off for an extended period of time,
	the algorithm used to compensate for drift between clocks on
	different processors can produce incorrect results. This can
	make gethrtime(3C) return values slightly older than
	previously returned.

	Resolution:
	Save the last value returned by the underlying system call
	for gethrtime(3C) for each thread, and don't return a value
	lower than this.

	PHKL_36300:
	( SR:8606458893 CR:JAGag15087 )
	The kernel may not handle the internal register state
	properly.

	Resolution:
	Corrected kernel code to handle internal register state
	properly.

	PHKL_35391:
	( SR:8606457533 CR:JAGag13841 )
	Update to the 32-bit Perfmon system call interface
	implemented for the Java Hotspot product.

	Resolution:
	Corrected the 32-bit system call interface to parse 64-bit
	parameters without masking the upper 32-bits.

	PHKL_33820:
	( SR:8606408821 CR:JAGaf68723 )
	In 11i v2, the shared mutex unlock for PA for 64 bit
	applications takes the heavy weight path instead of the
	light wight path even in the non contented case, as compared
	to 11i v1.

	Resolution:
	The shared mutex unlock code for PA 64 bit applications
	will now take the light weight path in the non contented
	case in 11i v2.

	PHKL_33494:
	( SR:8606402933 CR:JAGaf62868 )
	The max size that can mmap'ed using mmap64(2) is limited to
	TWO_GIG as the 'len' parameter is wrongly interpreted as
	signed long by the kernel instead of unsigned long.

	Resolution:
	Changed the Kernel data type interpretation of len parameter
	of mmap64(2) system call from signed long to size_t
	(unsigned long).

	PHKL_32542:
	( SR:8606387015 CR:JAGaf47168 )
	The problem results from the current implementation of
	gethrtime(); this implementation re-enables interrupts too
	quickly, resulting in incorrect time calculations.

	Resolution:
	Disable interrupts completely during the computations in
	gethrtime().

	PHKL_32360:
	( SR:8606379329 CR:JAGaf39578 )
	If the memory address passed to swapcontext(2) has been
	paged out, swapcontext(2) returns EFAULT.

	Resolution:
	Remove probe instructions that check for access errors.

	PHKL_34082:
	( SR:8606419398 CR:JAGaf79228 )
	During the processing of an interrupt, the internal state
	was not updated correctly.

	Resolution:
	Update the internal state correctly.

Enhancement: 
	No (superseded patches contained enhancements)
	PHKL_33820:
		This patch enhances the performance for PA 64 bit
		applications which use shared mutex unlocking in 11i
		v2.

SR: 
	8606477109 8606458893 8606457533 8606408821 8606379329
	8606387015 8606402933 8606419398

Patch Files: 
	
	OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/conf/lib/libscall-pdk.a(asm_scall.o)
	/usr/conf/lib/libsvc-pdk.a(bubbleup.o)
	/usr/conf/lib/libscall-pdk.a(gateway_init.o)
	/usr/conf/lib/libscall.a(init_sent.o)
	/usr/conf/lib/libscall-pdk.a(scall_stubs.o)

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

	OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/conf/lib/libscall-pdk.a(asm_scall.o)
	/usr/conf/lib/libscall-pdk.a(gateway.o)
	/usr/conf/lib/libscall.a(init_sent.o)
	/usr/conf/lib/libscall-pdk.a(lw_scall.o)
	/usr/conf/lib/libscall-pdk.a(scall_stubs.o)

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

what(1) Output: 
	
	OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	/usr/conf/lib/libscall-pdk.a(asm_scall.o):
		asm_scall.s $Date: 2007/04/20 09:49:30 $Revision: r1
			1.23/5 PATCH_11.23 (PHKL_36468)
	/usr/conf/lib/libsvc-pdk.a(bubbleup.o):
		bubbleup.s $Date: 2007/03/29 14:14:42 $Revision: r11
			.23/3 PATCH_11.23 (PHKL_36300)
	/usr/conf/lib/libscall-pdk.a(gateway_init.o):
		gateway_init.c $Date: 2007/03/29 14:14:59 $Revision:
			 r11.23/1 PATCH_11.23 (PHKL_36300)
	/usr/conf/lib/libscall.a(init_sent.o):
		init_sent.c $Date: 2004/08/05 12:06:29 $Revision: i3
			80/2 PATCH_11.23 (PHKL_31500)
	/usr/conf/lib/libscall-pdk.a(scall_stubs.o):
		None

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

	OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	/usr/conf/lib/libscall-pdk.a(asm_scall.o):
		None
	/usr/conf/lib/libscall-pdk.a(gateway.o):
		gateway.s $Date: 2004/08/05 12:48:46 $Revision: i380
			/2 PATCH_11.23 (PHKL_31500)
	/usr/conf/lib/libscall.a(init_sent.o):
		init_sent.c $Date: 2004/08/05 12:06:29 $Revision: i3
			80/2 PATCH_11.23 (PHKL_31500)
	/usr/conf/lib/libscall-pdk.a(lw_scall.o):
		lw_scall.s $Date: 2007/04/20 09:49:38 $Revision: r11
			.23/4 PATCH_11.23 (PHKL_36468)
	/usr/conf/lib/libscall-pdk.a(scall_stubs.o):
		None

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

cksum(1) Output: 
	
	OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
	3472979036 81856 /usr/conf/lib/libscall-pdk.a(asm_scall.o)
	1171831099 11568 /usr/conf/lib/libsvc-pdk.a(bubbleup.o)
	112677433 11336 /usr/conf/lib/libscall-pdk.a(gateway_init.o)
	2026430220 157104 /usr/conf/lib/libscall.a(init_sent.o)
	1280833037 127504 /usr/conf/lib/
		libscall-pdk.a(scall_stubs.o)

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

	OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
	1169965469 11472 /usr/conf/lib/libscall-pdk.a(asm_scall.o)
	4128913599 68784 /usr/conf/lib/libscall-pdk.a(gateway.o)
	825153308 156464 /usr/conf/lib/libscall.a(init_sent.o)
	1863000462 18920 /usr/conf/lib/libscall-pdk.a(lw_scall.o)
	2113726757 157856 /usr/conf/lib/
		libscall-pdk.a(scall_stubs.o)

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

Patch Conflicts: None

Patch Dependencies: 
	s700: 11.23: PHKL_31500 PHKL_36301
	s800: 11.23: PHKL_31500 PHKL_36301

Hardware Dependencies: None

Other Dependencies: None

Supersedes: 
	PHKL_36300 PHKL_35391 PHKL_34082 PHKL_33820 PHKL_33494 PHKL_32542
	PHKL_32360

Equivalent Patches: 
	PHKL_36469:
	11.31

Patch Package Size: 200 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_36468

	5. Run swinstall to install the patch:

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

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

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

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

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

Special Installation Instructions: None

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