 |
≫ |
|
|
 |
パッチ名: PHKL_35901
パッチ摘要: s700_800 11.23 Fire GL-UX累積修正; HWサポート
作成日: 07/02/01
公開日: 07/02/07
ハードウェアプラットフォームおよびOSリリース:
s700: 11.23
s800: 11.23
現象:
PHKL_35901:
1.(SR:8606471717 CR:JAGag26697)
グラフィックスアダプタと別の非グラフィックスアダプタが同じPCI I/Oスロ
ットを共有する構成のシステムで、ある問題が起きることがあります。いずれ
かのアダプタで障害が発生すると、別のアダプタが不正な動作をすることがあ
ります。この場合、別の非グラフィックスアダプタは、書き込みを行わなくな
り、不正なデータを読み取ります。
そのため、いずれかのデバイスで障害が発生すると、PCI I/Oスロットをグラ
フィックスデバイスと共有するすべてのタイプのI/Oアダプタでデータ破壊が
起きる可能性があります。
2.(SR:8606458372 CR:JAGag14594)
gvidグラフィックスドライバ生成用graphics_hooks.cファイル内に不正なwhat
文字列が含まれています。ユーザーがHP-UXカーネルに対して"what"コマンド
を実行すると、次のようなgraphics_hooks.c情報が表示されます。
graphics_hooks.c $Date: 2002/02/26 19:44:15 $Revision:
r11.11/1 PATCH_11.11 (UNOF_graph_11i)
そのため、ユーザーは、使用中のカーネルにはこのファイルの不正なバージョ
ンが含まれているとみなす可能性があります。
問題点の説明:
PHKL_35901:
1.(SR:8606471717 CR:JAGag26697)
共有スロット構成では、2つのPCIスロットが同じLocal Bus Adapter(LBA)を共
有します。LBAは、ハードフェイルモードまたはソフトフェイルモードのいず
れかに設定できます。ハードフェイルモードの場合、PCIデバイスがハングす
ると、タイムアウトが発生し、システムはHPMC/MCAでパニックになります。
一方、ソフトフェイルモードの場合、LBAはそのデバイスに対する書き込みを
すべて破棄し(メッセージは表示されません)、そのデバイスに対するすべての
読み取り操作に対して-1を返します。
ところが、ワークステーション上で高速3Dグラフィックスアプリケーションを
実行する場合、gvidグラフィックスドライバは、ハング時のリカバリ処理を行
うために、グラフィックスカードをホストするLocal Bus Adapter(LBA)をソフ
トフェイルモードにしていました。ソフトフェイルモードでは、グラフィック
スカードがハングしても、システムMCA/HPMCは起きません。その代わり、その
デバイスに対する書き込みはすべて破棄され(メッセージは表示されません)、
そのデバイスに対するすべての読み取り操作は-1を返します。グラフィックス
サブシステムは、グラフィックスカードがハングしていないか定期的にチェッ
クし、ハングしていればカードをリセットしてから処理を続行していました。
LBAをソフトフェイルモードに設定すると、そのLBAを共有するすべてのデバイ
ス(グラフィックスデバイスおよびその他のデバイス)にそのモードが適用され
ので、共有スロットサポート対象ワークステーション構成でも、実際にはグラ
フィックスカードとシステム上の別のI/Oデバイスに同じLBAを共有させること
ができませんでした。
そのため、11.23ではワークステーションや高速3Dグラフィックスがサポート
されなくなり、グラフィックスデバイスと別のI/Oデバイスが同じLBAを共有で
きるはずのサーバー構成でも問題が生じる可能性があります。つまり、その共
有デバイスのドライバがソフトフェイルモードを想定して作成されていない場
合にそのデバイスまたはグラフィックスカードがハングすると、結果として問
題が生じる可能性があります。
共有LBAがソフトフェイルモードになっているため、システムはMCA/HPMCでパ
ニックにはならず、動作し続けます。そのため、同じLBAをグラフィックスカ
ードと共有するI/Oデバイスのドライバが、"書き込みが破棄され、すべての読
み取り操作が-1を返す"というエラー状態を想定していないと、結果として不
正な動作やデータ破壊が生じる可能性があります。
解決方法:
グラフィックスカードをホストするLBAをソフトフェイルモードにしないよう
にgvidグラフィックスドライバを修正しました。これで、共有スロット構成の
場合、グラフィックスデバイスまたはその他のデバイスで障害やハングが発生
すると、システムはHPMC/MCAでパニックになります。
2.(SR:8606458372 CR:JAGag14594)
HP-UX 11.23の正式リリースの前にHP-UX 11.23のコードをマージした際に、
誤って、不正なwhat文字列をgraphics_hooks.cファイルに追加していました。
11.23リリースにはこのファイルの正しいバージョンが含まれています。不正
なのは、what文字列だけです。
解決方法:
不正なwhat文字列をgraphics_hooks.cファイルから削除しました。
-----------------------------------------------------------------------------
Patch Name: PHKL_35901
Patch Description: s700_800 11.23 Fire GL-UX cumulative fixes; HW Enablement
Creation Date: 07/02/01
Post Date: 07/02/07
Hardware Platforms - OS Releases:
s700: 11.23
s800: 11.23
Products: N/A
Filesets:
OS-Core.KERN-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP
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_35901: CORRUPTION
Could cause incorrect behavior of device drivers for
I/O devices sharing an LBA with a graphics card if
either the graphics card or the shared I/O device
hardware were to hang. In that situation, writes to
the I/O device would be silently discarded and
incorrect data would be read from the device.
PHKL_34917: PANIC
PHKL_34291: PANIC
PHKL_33593: HANG
PHKL_32853: PANIC
Category Tags:
defect_repair hardware_enablement general_release critical
panic halts_system corruption
Path Name: /hp-ux_patches/s700_800/11.X/PHKL_35901
Symptoms:
PHKL_35901:
( SR:8606471717 CR:JAGag26697 )
In some circumstances, a system could experience a problem
in configurations where a graphics adapter and another
non-graphics adapter share the same PCI I/O slot. A failure
with either adapter could cause incorrect behavior for the
other adapter. The other non-graphics adapter would no
longer write, and would read incorrect data after the
failure occurs.
This problem could cause data corruption with any kind of
I/O adapter that shares a PCI I/O slot with a graphics
device, after either device fails.
( SR:8606458372 CR:JAGag14594 )
The file graphics_hooks.c used to build the gvid graphics
driver contained an incorrect what string. Users executing
the 'what' command on the HP-UX kernel would see the
following information for graphics_hooks.c:
graphics_hooks.c $Date: 2002/02/26 19:44:15 $Revision:
r11.11/1 PATCH_11.11 (UNOF_graph_11i)
This could lead users to believe they have an incorrect
version of this file in their kernel.
PHKL_34917:
( SR:8606430068 CR:JAGaf89527 )
When an A6869B graphics/USB card is installed in a HP-PA
server, the system will experience a HPMC panic during
boot. Note that the A6869B is currently not supported
for graphics on HP-PA servers running HP-UX.
( SR:8606445241 CR:JAGag02713 )
The gvid graphics driver was designed to be a general
purpose driver for all PCI graphics cards. As a result, the
gvid driver will attempt to claim any PCI graphics display
device found on the system. This can be a problem for
graphics device developers who need their own graphics
driver to claim their own graphics device. A mechanism is
needed to prevent the gvid driver from claiming specific
graphics devices.
PHKL_34349:
( SR:8606419610 CR:JAGaf79440 )
Hardware enablement: This product update enables support for
HP graphics devices on future hardware platforms.
PHKL_34291:
( SR:8606420842 CR:JAGaf80671 )
When a A6869B graphics card is installed in an IPF cellular
architecture system, the system will experience a MCA panic
during boot. Note that the A6869B is currently not supported
for graphics on IPF servers running HP-UX.
In the MCA output, the least eight significant hex digits
listed for the 64 bit Interrupt Faulting Address (IFA) will
be one of the following:
fa000001
f8000001
f6000001
f4000001
f2000001
PHKL_33593:
( SR:8606409341 CR:JAGaf69237 )
Fire GL-UX cards in a multiple card configuration were not
being claimed by the gvid graphics driver. This would result
in the card not being available to the system.
( SR:8606414051 CR:JAGaf73910 )
Recycling of the X server occurs when a user logs out of
CDE. Previously, when the X server would recycle, it would
first unregister as the master process. On systems
configured with a graphics console, the Internal Terminal
Emulator (ITE) would then resume. Finally, the X server
would register as the master process again and the ITE
would suspend. Thus, when the X server recycled, the ITE
would momentarily gain control of the device. This could
result in some temporary screen artifacts, and could cause
some stale data structures in the graphics DRM. This stale
data could cause further graphics rendering problems as
time progressed.
( SR:8606416084 CR:JAGaf75936 )
When an IPF system is configured with a graphics console,
and X windows is active on that graphics device, the system
can hang if a panic or TOC occurs.
PHKL_32853:
( SR:8606386400 CR:JAGaf46554 )
The system can panic with a MCA due to a gvid graphics
driver defect. This problem only occurs with Fire GL-UX
graphics devices.
Defect Description:
PHKL_35901:
( SR:8606471717 CR:JAGag26697 )
In a shared slot configuration, two PCI slots both share the
same Local Bus Adapter (LBA). The LBA can either be set to
hard fail mode or soft fail mode. In hard fail mode, if a
PCI device becomes hung, a timeout will occur and the system
will panic with a HPMC or MCA. In soft fail mode, the system
will not panic if a device becomes hung. Instead, the LBA
will silently discard writes to the device, and will return
-1 for all reads from the device.
In order to recover from hangs while running accelerated 3D
graphics applications on workstations, the gvid graphics
driver would place the Local Bus Adapter (LBA) hosting the
graphics card into soft fail mode. When in soft fail mode,
a hung graphics card would not cause a system MCA or HPMC.
Instead, all writes to the card would be silently discarded
and all reads from the card would return -1. The graphics
subsystem would regularly check for a hung graphics card,
then attempt to reset the card and continue.
The supported workstation configurations would not allow a
graphics card to share an LBA with another I/O device on the
system, because setting the LBA to soft fail mode for the
graphics device would also set soft fail mode for any device
sharing that LBA as well.
Workstations and accelerated 3D graphics are no longer
supported in 11.23, and some server configurations can
result in a situation where a graphics device can share an
LBA with another I/O device. If the driver for that shared
device has not been written with soft fail mode in mind,
problems could result if either that device or the graphics
card were to become hung.
Instead of a system MCA or HPMC, the system will continue to
operate with the shared LBA in soft fail mode. If the driver
for an I/O device sharing an LBA with a graphics card is not
expecting an error condition where writes are discarded and
all reads return -1, incorrect behavior and possible data
corruption could result.
Resolution:
The gvid graphics driver will no longer place the LBA
hosting the graphics card into soft fail mode. If the
graphics device or any other device in a shared slot
configuration were to fail or hang, the system will panic
with a HPMC or MCA.
( SR:8606458372 CR:JAGag14594 )
A code merge made to HP-UX 11.23 previous to its official
release placed an incorrect what string into the file
graphics_hooks.c.
The correct version of this file was included in the 11.23
release, only the what string is incorrect.
Resolution:
The incorrect what string was removed from the file
graphics_hooks.c.
PHKL_34917:
( SR:8606430068 CR:JAGaf89527 )
The HP-UX gvid graphics driver should not claim the
unsupported graphics controller on the A6869B graphics/
USB card on HP-PA server systems. If the gvid driver
attempts to claim this graphics device, the system will
experience a HPMC during system boot.
Resolution:
The gvid graphics driver was modified to no longer claim the
graphics controller on the A6869B graphics/USB card in HP-PA
server systems running HP-UX. This will allow such a system
to boot successfully, however the A6869B graphics controller
will not be claimed by the HP-UX gvid graphics driver, and
will not be usable as a graphics output device. The output
of the ioscan command will show an unclaimed PCI Display
with an ID of 1002515e.
( SR:8606445241 CR:JAGag02713 )
The gvid driver attempts to claim all PCI graphics display
devices. A mechanism is needed to prevent the gvid driver
from claiming specific graphics devices.
Resolution:
A mechanism was added that allows other device drivers to
specify PCI graphics devices that gvid should not claim.
Also, a configurable parameter, gvid_no_claim_dev, was added
to specify the Vendor ID / Device ID of a PCI graphics
device that the gvid driver will not then claim.
PHKL_34349:
( SR:8606419610 CR:JAGaf79440 )
This product update contains minor enhancements required to
enable graphics devices on future hardware platforms.
Resolution:
Enhancements were made to the gvid graphics driver to
enable graphics devices on future hardware platforms.
PHKL_34291:
( SR:8606420842 CR:JAGaf80671 )
The HP-UX gvid graphics driver should not claim the
unsupported graphics controller on the A6869B card
for the IPF cellular architecture server systems. If the
gvid driver attempts to claim this graphics card, the
system will experience an MCA during system boot.
Resolution:
The gvid graphics driver was modified to no longer claim the
A6869B graphics card on IPF cellular systems running HP-UX.
This will allow such a system to boot successfully, however
the A6869B graphics card will not be claimed by the HP-UX
gvid graphics driver, and will not be usable as a graphics
output device. The output of the ioscan command will show
an unclaimed PCI Display with an ID of 1002515e.
PHKL_33593:
( SR:8606409341 CR:JAGaf69237 )
There was a problem that prevented all Fire GL-UX cards
from being claimed by the gvid graphics driver in a system
having a multiple graphics card configuration.
Resolution:
A small fix was made to the gvid graphics driver that will
allow Fire GL-UX cards to be claimed in all supported
multiple card configurations.
( SR:8606414051 CR:JAGaf73910 )
Previously, there was no means for the X server to recycle
without momentarily surrendering control of the graphics
device to the Internal Terminal Emulator (ITE).
Resolution:
A new ioctl call, GVID_RECYCLE, was added to allow the
X server to request 3D process cleanup from the gvid driver.
Using this new ioctl call, the X server no longer has to
give up control of the graphics device when it recycles.
( SR:8606416084 CR:JAGaf75936 )
On IPF systems, when X windows is active on a graphics
device that also serves as the system console, a call is
made to the graphics driver from the system shutdown code to
restore the system VGA routing if necessary. During a panic
or TOC, the graphics driver was checking for a semaphore
that should not be held at that time.
Resolution:
The graphics driver was modified to not require that a
semaphore be held when it is called to restore the system
VGA routing during a panic or TOC.
PHKL_32853:
( SR:8606386400 CR:JAGaf46554 )
Certain accesses to the graphics device could result
in a system MCA panic.
Resolution:
The gvid graphics driver was corrected to avoid the
potential for a panic.
Enhancement:
No
SR:
8606471717 8606458372 8606430068 8606445241 8606419610
8606420842 8606409341 8606414051 8606416084 8606386400
Patch Files:
OS-Core.KERN-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,
v=HP:
/usr/share/man/man5.Z/gvid_no_claim.5
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libgraf.a(graphics_hooks.o)
/usr/conf/lib/libgraf.a(gvid.o)
/usr/conf/lib/libgraf.a(gvid_core.modmeta.o)
/usr/conf/lib/libdebug.a(gvid_debug.o)
/usr/conf/lib/libgraf.a(gvid_machdep.o)
/usr/conf/lib/libgraf.a(gvid_machdep_access.o)
/usr/conf/lib/libgraf.a(sti_vga.o)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libgraf.a(graphics_hooks.o)
/usr/conf/lib/libgraf.a(gvid.o)
/usr/conf/lib/libgraf.a(gvid_core.modmeta.o)
/usr/conf/lib/libdebug.a(gvid_debug.o)
/usr/conf/lib/libgraf.a(gvid_machdep.o)
/usr/conf/lib/libgraf.a(gvid_machdep_access.o)
/usr/conf/lib/libgraf.a(sti_vga.o)
/usr/conf/lib/libgraf.a(stirom.o)
what(1) Output:
OS-Core.KERN-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,
v=HP:
/usr/share/man/man5.Z/gvid_no_claim.5:
None
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libgraf.a(graphics_hooks.o):
graphics_hooks.c $Date: 2007/01/22 09:03:27 $Revisio
n: r11.23/1 PATCH_11.23 (PHKL_35901)
/usr/conf/lib/libgraf.a(gvid.o):
gvid.c $Date: 2007/01/22 09:03:24 $Revision: r11.23/
10 PATCH_11.23 (PHKL_35901)
/usr/conf/lib/libgraf.a(gvid_core.modmeta.o):
gvid_core.modmeta $Date: 2006/06/08 14:21:02 $Revisi
on: r11.23/1 PATCH_11.23 (PHKL_34917)
/usr/conf/lib/libdebug.a(gvid_debug.o):
gvid_debug.c $Date: 2006/06/08 14:21:18 $Revision: r
11.23/7 PATCH_11.23 (PHKL_34917)
/usr/conf/lib/libgraf.a(gvid_machdep.o):
gvid_machdep.c $Date: 2006/03/02 15:21:19 $Revision:
r11.23/1 PATCH_11.23 (PHKL_34349)
/usr/conf/lib/libgraf.a(gvid_machdep_access.o):
gvid_machdep_access.c $Date: 2006/03/02 15:21:21 $Re
vision: r11.23/1 PATCH_11.23 (PHKL_34349)
/usr/conf/lib/libgraf.a(sti_vga.o):
sti_vga.c $Date: 2005/03/09 14:52:08 $Revision: r11.
23/2 PATCH_11.23 (PHKL_32853)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libgraf.a(graphics_hooks.o):
graphics_hooks.c $Date: 2007/01/22 09:03:27 $Revisio
n: r11.23/1 PATCH_11.23 (PHKL_35901)
/usr/conf/lib/libgraf.a(gvid.o):
gvid.c $Date: 2007/01/22 09:03:24 $Revision: r11.23/
10 PATCH_11.23 (PHKL_35901)
/usr/conf/lib/libgraf.a(gvid_core.modmeta.o):
gvid_core.modmeta $Date: 2006/06/08 14:21:02 $Revisi
on: r11.23/1 PATCH_11.23 (PHKL_34917)
/usr/conf/lib/libdebug.a(gvid_debug.o):
gvid_debug.c $Date: 2006/06/08 14:21:18 $Revision: r
11.23/7 PATCH_11.23 (PHKL_34917)
/usr/conf/lib/libgraf.a(gvid_machdep.o):
gvid_machdep.c $Date: 2006/03/02 15:21:19 $Revision:
r11.23/1 PATCH_11.23 (PHKL_34349)
/usr/conf/lib/libgraf.a(gvid_machdep_access.o):
gvid_machdep_access.c $Date: 2006/03/02 15:21:21 $Re
vision: r11.23/1 PATCH_11.23 (PHKL_34349)
/usr/conf/lib/libgraf.a(sti_vga.o):
sti_vga.c $Date: 2005/03/09 14:52:08 $Revision: r11.
23/2 PATCH_11.23 (PHKL_32853)
/usr/conf/lib/libgraf.a(stirom.o):
stirom.c $Date: 2005/03/09 14:52:08 $Revision: r11.2
3/1 PATCH_11.23 (PHKL_32853)
cksum(1) Output:
OS-Core.KERN-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,
v=HP:
1775730337 2026 /usr/share/man/man5.Z/gvid_no_claim.5
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
2335460111 33408 /usr/conf/lib/libgraf.a(graphics_hooks.o)
1976111887 400264 /usr/conf/lib/libgraf.a(gvid.o)
2966956184 2784 /usr/conf/lib/libgraf.a(gvid_core.modmeta.o)
1024578824 129176 /usr/conf/lib/libdebug.a(gvid_debug.o)
2713801150 94552 /usr/conf/lib/libgraf.a(gvid_machdep.o)
3749666356 52552 /usr/conf/lib/
libgraf.a(gvid_machdep_access.o)
3997946138 65904 /usr/conf/lib/libgraf.a(sti_vga.o)
OS-Core.CORE2-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
2966168403 19376 /usr/conf/lib/libgraf.a(graphics_hooks.o)
3004308060 257184 /usr/conf/lib/libgraf.a(gvid.o)
4136181023 2928 /usr/conf/lib/libgraf.a(gvid_core.modmeta.o)
1255349013 216952 /usr/conf/lib/libdebug.a(gvid_debug.o)
1192012460 62312 /usr/conf/lib/libgraf.a(gvid_machdep.o)
2315078034 32176 /usr/conf/lib/
libgraf.a(gvid_machdep_access.o)
1865606604 37968 /usr/conf/lib/libgraf.a(sti_vga.o)
1860171162 31664 /usr/conf/lib/libgraf.a(stirom.o)
Patch Conflicts: None
Patch Dependencies:
s700: 11.23: PHKL_31500 PHSS_30872
s800: 11.23: PHKL_31500 PHSS_30872
Hardware Dependencies: None
Other Dependencies: None
Supersedes:
PHKL_34291 PHKL_33593 PHKL_32853 PHKL_34917 PHKL_34349
Equivalent Patches: None
Patch Package Size: 450 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_35901
5. Run swinstall to install the patch:
swinstall -x autoreboot=true -x patch_match_target=true \
-s /tmp/PHKL_35901.depot
By default swinstall will archive the original software in
/var/adm/sw/save/PHKL_35901. 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_35901.text file is
available in the product readme:
swlist -l product -a readme -d @ /tmp/PHKL_35901.depot
To put this patch on a magnetic tape and install from the
tape drive, use the command:
dd if=/tmp/PHKL_35901.depot of=/dev/rmt/0m bs=2k
Special Installation Instructions: None
|