 |
≫ |
|
|
 |
パッチ名: PHNE_36257
パッチ摘要: s700_800 11.23 NFS累積パッチ
作成日: 07/06/05
公開日: 07/06/08
ハードウェアプラットフォームおよびOSリリース:
s700: 11.23
s800: 11.23
現象:
PHNE_36257:
1.(SR:8606472149 CR:JAGag27051)
お客様からはまだ報告されていませんが、"NaT Consumption Fault"により、
RPC関連のコマンドやデーモンがクラッシュすることがあります。
2.(SR:8606425181 CR:JAGaf84701)
/varファイルシステムが満杯状態の場合に"exportfs -u"コマンドを実行する
と、/etc/xtabファイルの内容が消去されます。
3.(SR:8606474098 CR:JAGag28690)
automountdの停止後、AutoFS LOFSマウントポイントが残ります。
4.(SR:8606477797 CR:JAGag32175)
調整可能なカーネルパラメータnfs_fine_grain_fs_lockを2に設定すると、
ある競合によるシステムパニックが起きる可能性があります。
5.(SR:8606480160 CR:JAGag34291)
NFSクライアントがラージファイル(2GB以上)をマウントしようとすると、
"Permission denied"エラーが起きます。
問題点の説明:
PHNE_36257:
1.(SR:8606472149 CR:JAGag27051)
未初期化変数を任意のレジスタに割り当てていました。そのため、それらのあ
るレジスタのNaTビットがセットされていると、"NaT Consumption Fault"によ
り、アプリケーションがクラッシュしていました。
解決方法:
未初期化変数を初期化するようにrpc.pcnfsdのコードを修正しました。
2.(SR:8606425181 CR:JAGaf84701)
/var/tmpディレクトリ内の一時ファイルへの書き込み時に、exportfsはエラー
チェックを行っていませんでした。そのため、/etc/xtabへの一時ファイルの
コピー時に、/etc/xtabファイルが空白ファイルで上書きされることがありま
した。
解決方法:
/varファイルシステムが満杯状態の場合は、そのエラー状態を処理し、かつ、
/etc/xtabファイルを上書きしないようにexportfsを修正しました。
3.(SR:8606474098 CR:JAGag28690)
automountdを停止するには、nfs.clientスクリプトを使用します。ところが、
LOFSループバックマウントでAutoFSが使用されていると、それらのマウントポ
イントがマウントテーブル内に表示されていました。そのため、マウントポイ
ントにアクセスしようとすると、割り込み可能なハングが起きていました。
解決方法:
AutoFSマウントをすべてアンマウントするようにがnfs.clientスクリプトを修
正しました。
4.(SR:8606477797 CR:JAGag32175)
lookupのコードパスとumountのコードパス間の僅かなタイミングにより問題が
起きていました。たとえば、/mnt/foo/barファイルのオープンと/mntのアンマ
ウントがほぼ同時に行われたとします。この場合、ファイルシステム内にアク
ティブなrノードがあれば、umountコマンドはEBUSYエラーで終了します。
ところが、openコマンドが"bar"ファイルのrノードをアクティブにする前に、
umountコマンドがそのrノードの状態をチェックした場合、umountコマンドは
成功します。そのため、システムがパニックになることがありました。
解決方法:
ファイルシステムがビジー状態かどうかチェックする前に、すべてのrノード
ロックを取得するようにumountのコードを修正しました。
5.(SR:8606480160 CR:JAGag34291)
rpc.mountdがラージファイル(2GB以上)のマウント要求を受け付けなかったた
め、(たとえば、"mount <server>:/bigfile/clntfile"を使って)ラージファイ
ルをマウントすることができませんでした。
解決方法:
ラージファイルのマウント要求を受け付けるようにrpc.mountdのコードを修正
しました。
-----------------------------------------------------------------------------
Patch Name: PHNE_36257
Patch Description: s700_800 11.23 NFS cumulative patch
Creation Date: 07/06/05
Post Date: 07/06/08
Hardware Platforms - OS Releases:
s700: 11.23
s800: 11.23
Products:
NFS B.11.23;
Filesets:
NFS.NFS-CLIENT,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP
NFS.NFS-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP
Automatic Reboot?: Yes
Status: General Release
Critical:
Yes
PHNE_36257: PANIC HANG ABORT
PHNE_35960: PANIC
PHNE_35511: CORRUPTION ABORT PANIC
PHNE_35118: HANG
PHNE_34550: HANG PANIC
PHNE_33099: HANG PANIC
PHNE_32055: HANG
Category Tags:
defect_repair enhancement general_release critical panic
halts_system corruption manual_dependencies
Path Name: /hp-ux_patches/s700_800/11.X/PHNE_36257
Symptoms:
PHNE_36257:
( SR:8606472149 CR:JAGag27051 )
RPC commands and daemons may crash due to a "NaT Consumption
Fault", though this has not been reported by customers.
( SR:8606425181 CR:JAGaf84701 )
The /etc/xtab file is cleared when an "exportfs -u" command
is executed if the /var file system is full.
( SR:8606474098 CR:JAGag28690 )
AutoFS LOFS mount points remain after stopping automountd.
( SR:8606477797 CR:JAGag32175 )
There is a potential race condition when the kernel tunable
nfs_fine_grain_fs_lock is set to two which may result in a
system panic.
( SR:8606480160 CR:JAGag34291 )
If an NFS client attempts to mount a large file (2 GB or
larger), the mount fails with a "Permission denied" error.
PHNE_35960:
( SR:8606467933 CR:JAGag23289 )
A non-root file owner cannot modify the file size if the
file does not have write permission.
( SR:8606473443 CR:JAGag28102 )
An NFS client panics with the panic string "post_hndlr():
Unresolved kernel interruption". An example panic stack
trace is:
panic+0x380
post_hndlr+0xc80
vm_hndlr+0x210
bubbleup+0x740
+------------- TRAP ----------------------------
| Data Key Miss Fault in KERNEL mode
| IIP=0xe00000000077e7b0:0
| IFA=0x8
| p struct save_state 0x3bb70831.0x9fffffff7f567400
+------------- TRAP ----------------------------
FUNC
rp_rmfree+0x70
nfs_get_free_rnode+0x2c0
new_make_rnode+0x150
make_rnode+0x160
makenfs3node+0xb0
nfs3lookup+0x440
nfs3_lookup+0x110
lookuppnvp+0x2d0
lookuppn+0x90
vn_create+0x120
vn_open+0x260
copen+0x190
open+0x80
syscall+0x4e0
This panic can also occur in other places, for example
vn_rele+0x5c0 with panic string
"vn_rele", nfs3_inactive+0xb40 with panic string
"nfs3_inactive", or at rp_addfree+0x611 with a "Data Key
Miss Fault in KERNEL mode" trap.
PHNE_35511:
( SR:8606438393 CR:JAGaf96478 )
There is a performance degradation when an application
performs sequential read, write, and lseek operations on an
NFS mounted file if biod processes are running on the
client.
( SR:8606446862 CR:JAGag04211 )
If the NFS server is stopped and restarted with the
/sbin/init.d/nfs.server script on a multi-processor system,
some nfsd processes exit unexpectedly.
( SR:8606456585 CR:JAGag12983 )
In a highly available NFS environment, if the servers reboot
at the same time, data loss may result for NFS v3
asynchronous writes.
( SR:8606460011 CR:JAGag16103 )
The nsquery command returns the wrong group name and group
id for group names beginning with a numeral.
( SR:8606461892 CR:JAGag17827 )
The NFS mount command dumps core or fails with a "Permission
denied" error if the length of the directory name being
mounted is more than 1024 characters.
( SR:8606467788 CR:JAGag23154 )
A panic occurs while attaching a trace process to biod.
( SR:8606461972 CR:JAGag17899 )
The rpc.mountd process cannot create a logfile if the file
name length exceeds 64 characters.
PHNE_35118:
( SR:8606385895 CR:JAGaf46049 )
NFS write performance slows when writing files larger than
2 GB.
( SR:8606390411 CR:JAGaf50557 )
An NFS loopback mount hangs when there are no biod processes
running and the buffer cache is low.
( SR:8606413731 CR:JAGaf73591 )
A "Stale NFS file handle" error occurs when an NFS client
attempts to open a file which is removed by another client.
( SR:8606421959 CR:JAGaf81784 )
The mount command fails with a "Permission denied" error on
an NFS client after re-exporting a directory on an NFS
server.
( SR:8606437373 CR:JAGaf95562 )
If NFS clients perform a lot of asynchronous read and write
requests, CPU utilization increases.
( SR:8606440810 CR:JAGaf98610 )
Incorrect permissions for logfiles.
( SR:8606430826 CR:JAGaf90283 )
NFS read performance needs to be improved.
( SR:8606442863 CR:JAGag00589 )
NFS performance is degraded by lock contention for
filesys_sema (the alpha semaphore). This also contributes to
high CPU usage.
PHNE_34550:
( SR:8606391790 CR:JAGaf51922 )
It is difficult to accurately configure IPFilter and other
firewalls for NFS.
( SR:8606411484 CR:JAGaf71349 )
NFS write performance needs to be improved.
( SR:8606429035 CR:JAGaf88501 )
An NFS client panics with the panic string "Data page
fault". An example panic stack trace is:
FUNC
panic+0x390
post_hndlr+0xc80
vm_hndlr+0x210
bubbleup+0x740
+------------- TRAP ----------------------------
| Data TLB Fault in KERNEL mode
| IIP=0xe000000000733491
| IFA=0
| p struct save_state 0x777c031.0x9fffffff7f7e7600
+------------- TRAP ----------------------------
FUNC
clnt_cots_kcallit+0x271
rfscall+0x460
rfs3call+0x80
nfs3read+0x140
nfs3_do_bio+0x310
async_daemon+0x790
coerce_scall_args+0x130
syscall+0x920
( SR:8606431961 CR:JAGaf91403 )
The TCP nfsd daemon enters an infinite loop, and therefore
cannot process a new TCP connection. This new connection can
be a new NFS mount attempt or a new connection started on an
existing NFS mount. The existing connections remain active.
( SR:8606434552 CR:JAGaf93043 )
NFS performance is affected when an NFS server handles a
large number of NFS client requests.
( SR:8606440062 CR:JAGaf97975 )
1. There is a race condition which allows the possibility of
the nfs_new_lock_code and nfs_wakeup_one kernel parameter
values to be changed even though there are NFS mounts
present.
2. The "kctune -h" command does not work properly with the
nfs_new_lock_code and nfs_wakeup_one kernel parameters if
there are NFS mounts present.
( SR:8606440892 CR:JAGaf98686 )
There is a degradation in performance when there are a lot
of user ID's in the system.
PHNE_34292:
( SR:8606230395 CR:JAGad99445 )
There is a degradation in performance when there are many
filename lookup operations executed in a short period of
time for NFS v3 mounted file systems.
( SR:8606436859 CR:JAGaf95104 )
There is a degradation in performance when an application
requests directory information for an NFS v3 mounted file
system.
PHNE_33982:
( SR:8606393467 CR:JAGaf53524 )
NFS tunable parameters (also known as kernel variables) do
not survive kernel rebuilds.
( SR:8606419732 CR:JAGaf79562 )
The nfsstat.1m man page refers to llock as a client RPC
display field.
PHNE_33655:
( SR:8606410496 CR:JAGaf70378 )
If multiple threads and processes create and delete a lot of
files over NFS, CPU utilization increases.
PHNE_33104:
( SR:8606402638 CR:JAGaf62573 )
The rpc.pcnfsd process does not log data to the wtmps
database.
PHNE_33099:
( SR:8606383205 CR:JAGaf43399 )
The Local Locking feature is not available on NFS.
( SR:8606387765 CR:JAGaf47918 )
If a write() system call to an NFS file is interrupted by a
signal (e.g. by sending SIGINT to the process) before the
data is written to the server, the call succeeds. This
occurs only on files configured to do synchronous I/O
(opened with the O_DSYNC flag set).
( SR:8606387807 CR:JAGaf47960 )
An NFS server panics with the panic string "kalloc: out of
kernel virtual space". The panic stack trace is:
panic+0x6c
kalloc_4K+0x270
kalloc_from_superpage+0x488
kalloc+0x14
alloc_mem+0x44
get_kmem+0x8c
kmem_arena_xlarge_alloc+0x74
kmalloc+0x1e4
nfs_kmem_alloc+0x18
rfs3_read+0x310
rfsexp_dispatch+0x5f0
svc_getreq+0x1ec
svc_run+0x6e8
nfsexp_svc+0x1f8
nfs_stub_svc+0xa4
coerce_scall_args+0xe0
syscall+0x204
syscallinit+0x55c
( SR:8606389255 CR:JAGaf49403 )
A multi-threaded process hangs and cannot be killed. The
system needs to be rebooted to clear the situation.
( SR:8606392946 CR:JAGaf53027 )
The system panics during I/O on an NFS mounted file. The
panic string is "crfree: freeing free credential struct".
The panic may also occur in crhold(). An example stack trace
is:
panic+0x3a0
crfree+0x190
nfs3_open+0x210
vns_copen0xb0
vn_open+0x190
copen+0x1a0
open+0x80
syscall+0x920
( SR:8606393839 CR:JAGaf53894 )
The rename() system call returns a "Not Owner" error when
renaming a directory in a cachefs-mounted file system to a
name which is an existing directory.
PHNE_32055:
( SR:8606377321 CR:JAGaf37599 )
Applications hang when reading from and writing to an NFS
mount point synchronously.
( SR:8606373075 CR:JAGaf33480 )
The mlock call is succeeding after truncation of a memory
mapped file over NFS.
( SR:8606381800 CR:JAGaf42012 )
A fix for a pre-AutoFS 2.3 defect which is not required in
AutoFS 2.3 still exists in the nfs.client script.
( SR:8606383689 CR:JAGaf43880 )
When you mount an NFS filesystem with the forcedirectio
option, the mount command and the "nfsstat -m" command do
not display the forcedirectio option.
( SR:8606385870 CR:JAGaf46024 )
This product update provides pre-enablement for future
expansion of the maximum length of the system nodename and
hostname. Any actual expansion capability may be provided in
a future HP-UX nodename and hostname expansion product. Upon
installation, the nodename and hostname expansion bundle
(NodeHostNameXpnd) will install the full set of product
updates (including this one) needed to enable the expansion.
If the nodename and hostname expansion bundle is not
installed, this product update will have no affect on your
system.
Defect Description:
PHNE_36257:
( SR:8606472149 CR:JAGag27051 )
Uninitialized variables are assigned to arbitrary registers.
If one of the arbitrary registers has its NaT bit set, it
can lead to a "NaT Consumption Fault" and cause an
application crash.
Resolution:
Initialized the uninitialized variables in the rpc.pcnfsd
code.
( SR:8606425181 CR:JAGaf84701 )
There is no error checking done when exportfs writes to a
temporary file in the /var/tmp directory. When the temporary
file is copied to /etc/xtab, the /etc/xtab file is
overwritten with a blank file.
Resolution:
If the /var file system is full, exportfs handles this
error condition and does not overwrite the /etc/xtab file.
( SR:8606474098 CR:JAGag28690 )
The nfs.client script is used to stop automountd. If AutoFS
is used with LOFS loopback mounts, these mount points still
show up in the mount table and attempts to access the
mount point result in an interruptible hang.
Resolution:
Modified the nfs.client script to unmount possible remaining
AutoFS mounts.
( SR:8606477797 CR:JAGag32175 )
There is a small timing window between the lookup and umount
code paths. For example, suppose the file /mnt/foo/bar is
opened at almost the same time as /mnt is unmounted. Instead
of the umount command failing with an EBUSY error because
there is an active rnode in the file system, it succeeds
because it checks the rnode state for the file "bar" before
the open command activates it. This can cause the system to
panic.
Resolution:
Modified the umount code to acquire all of the rnode locks
before checking if the file system is busy.
( SR:8606480160 CR:JAGag34291 )
Attempts to mount a large file (e.g. mount <server>:/bigfile
/clntfile) fail because rpc.mountd does not allow mounts on
files with a size of 2 GB or larger.
Resolution:
Modified rpc.mountd to allow mounts on large files.
PHNE_35960:
( SR:8606467933 CR:JAGag23289 )
Access checking in the NFS server only allows modification
to the file if the file has write permission. This prevents
the file owner from modifying the file size.
Resolution:
Allow the file owner to modify the file size even if the
file does not have write permission.
( SR:8606473443 CR:JAGag28102 )
While a thread is deactivating a vnode, the lock is
released. Another thread acquires this lock and can activate
and deactivate the same vnode. This results in rnode free
list corruption which causes the panic. Note that this
problem only occurs if the nfs_fine_grain_fs_lock kernel
parameter is set to a value of 2.
Resolution:
Only deactivate a vnode and add its rnode to the free list
after the last reference to the vnode is freed.
PHNE_35511:
( SR:8606438393 CR:JAGaf96478 )
The sequential read, write, and lseek operations are not
efficiently coordinated. Cached data is purged unnecessarily
so more over-the-wire calls are needed. This affects
performance.
Resolution:
Added a new kernel parameter nfs3_adaptive_cache_validate,
which, when enabled, provides a weak cache consistency check
when a write operation is followed by a read. It also
invalidates the cache if a read operation is followed by a
write. This fix is disabled by default. To enable the fix,
set the value of nfs3_adaptive_cache_validate
to 1. All NFS mounted directories must be unmounted before
modifying the value (and mounted again after modifying the
value). If there are NFS mounted directories when the value
is modified, the value will not be changed until after the
next reboot. To enable the fix use the following command:
kctune nfs3_adaptive_cache_validate=1
The fix can be disabled with the following command:
kctune nfs3_adaptive_cache_validate=0
Note that depending on the system configuration and
applications being used, this parameter may result in
increased or decreased performance. Customers need to
analyze their applications and test to see if enabling this
parameter provides better performance in their environment.
( SR:8606446862 CR:JAGag04211 )
When the NFS server is stopped, there is a variable which is
decremented as nfsd processes are stopped. When this
variable becomes zero, the nfsd transport table is cleaned
up. On a multi-processor system, the variable may not
reflect the actual value due to inadequate protection. This
causes defunct nfsd processes when the NFS server is
restarted.
Resolution:
Protect the variable which keeps track of the number of
nfsd processes with a lock.
( SR:8606456585 CR:JAGag12983 )
When performing NFS v3 asynchronous writes, copies of
uncommitted data are stored on the NFS client. If a server
in a highly available NFS environment becomes unavailable, a
switch is made to a new server and uncommitted data must be
transmitted to the new server to avoid data loss. The client
must save the write verifier returned by each asynchronous
write request and compare it to the write verifier returned
by a later commit request. If the write verifiers do not
match, then the client assumes the server has crashed and
rebooted. The client must then rewrite all uncommitted data.
The write verifier is initialized using the system boot time
with a resolution of 10 milliseconds. If two systems have
the same boot time data may be lost.
Resolution:
Initialize the write verifier with the serial number of
the machine and the boot time to ensure the uniqueness of
the write verifier.
( SR:8606460011 CR:JAGag16103 )
The nsquery command cannot interpret a group name or user
name which begins with a numeral. This results in the
nsquery command returning incorrect information for these
entries in the /etc/group and /etc/passwd files.
Resolution:
Modified nsquery to interpret group names and user names
which begin with a numeral.
( SR:8606461892 CR:JAGag17827 )
The NFS mount command doesn't have enough buffer space to
handle long directory names. This can cause the command to
dump core or fail with a "Permission denied" error if the
length of the directory name being mounted is more than 1024
characters. If the length of the directory name is more than
1024 characters, the mount command should fail with a "No
such file or directory" error.
Resolution:
Modified the NFS mount command to properly handle long
directory names.
( SR:8606467788 CR:JAGag23154 )
The biod process is created in user space and then becomes a
kernel daemon. This causes the associated pregion to be
removed. When a tracing program such as tusc or truss
attempts to attach to biod, the pregion that it thinks is
associated with the biod process has been destroyed which
causes a panic.
Resolution:
Retain the associated pregion of biod in the kernel when
biod becomes a kernel daemon.
( SR:8606461972 CR:JAGag17899 )
Buffer overflow occurs in rpc.mountd when the length of the
logfile name exceeds 64 characters. This causes the creation
of the logfile to fail.
Resolution:
Increased the size of the array that holds the logfile name
to the maximum path length. If the file name length exceeds
1023 characters, then the logfile name is truncated to 1023
characters.
PHNE_35118:
( SR:8606385895 CR:JAGaf46049 )
When writing over an NFS mount point, there are unnecessary
read-before-write calls done after 2 GB of data has been
written to the file. This occurs because the calculation of
the file offset using the block number and block size
results in an overflow condition. This causes read
avoidance logic to fail and affects performance.
Resolution:
Modified the file offset calculation to avoid an overflow
condition.
( SR:8606390411 CR:JAGaf50557 )
NFS uses the buffer cache for I/O. For a large file copy,
most of the buffer cache contains data belonging to the
file. The nfsd daemon processing the write request locks the
local file and tries to store data in the buffer cache.
If there is no room left in the buffer cache, it flushes
some dirty buffers. For an NFS loopback mount, the
buffer to be flushed may belong to the same NFS file.
Flushing this buffer makes another nfsd daemon process
another write request which will sleep waiting for the local
lock to be released. The lock owner will not release it as
it waits for the flush to complete, which causes a hang.
Resolution:
Documented this situation in the biod(1M) man page, and
recommended to use direct I/O.
( SR:8606413731 CR:JAGaf73591 )
VFS requires NFS to purge the file handle cache if an error
is returned from rfs3call(). If the cache is not purged,
lookup operations may provide stale vnodes which causes the
stale file handle error.
Resolution:
Purge the file handle cache if an ESTALE error is returned
from rfs3call().
( SR:8606421959 CR:JAGaf81784 )
A directory on an NFS server is mounted on a logical volume,
exported, and mounted by an NFS client. Then the directory
is unmounted by the client, unexported by the server,
unmounted from the logical volume, and re-exported (this
time as a sub-directory of a directory that was already
exported). Data cached by rpc.mountd still points to the
file system mounted on the logical volume, and this causes
the mount command to fail.
Resolution:
Added a check to see if the directory that was already
exported and the directory being exported are in the same
file system so that the mount command does not use stale
cached data and does not fail in this scenario.
( SR:8606437373 CR:JAGaf95562 )
When an asynchronous read or write request is made, all of
the biod daemons are woken up, but only one processes the
request. This sleep, wakeup, sleep, etc. context switching
overhead causes the CPU utilization to increase.
Resolution:
Instead of waking up all of the biod daemons when an
asynchronous read or write request arrives, only wakeup one
biod daemon. This fix is disabled by default. To enable the
fix, set the value of the kernel parameter nfs_wakeup_one to
2 with the following command:
kctune nfs_wakeup_one=2.
The fix can be disabled with one of the following commands:
kctune nfs_wakeup_one=0
or
kctune nfs_wakeup_one=1
Note that the allowed values for nfs_wakeup_one are
0, 1 and 2. When nfs_wakeup_one is set to 1 or 2, waking up
all threads which are sleeping on the same rnode lock is
avoided (SR:8606410496). The default value for
nfs_wakeup_one is 0.
( SR:8606440810 CR:JAGaf98610 )
The logfile created by the rpc.mountd daemon allows all
users to write to the file.
Resolution:
Only allow the file owner to have write permission.
( SR:8606430826 CR:JAGaf90283 )
The performance of NFS reads is impacted by an unnecessary
copy between NFS and XDR buffers. Also the jumbo frames
capability of a network interface is not fully utilized in
the NFS server read reply path.
Resolution:
Added a new kernel parameter nfs_srv_read_copy_avoid which,
when enabled, causes the NFS server to convert NFS buffers
into mblks and pass them to lower level modules such as
Kernel RPC. The copy between NFS and XDR buffers is avoided
which can result in increased NFS read performance. This fix
is disabled by default. To enable the fix, set the value of
the new kernel parameter nfs_srv_read_copy_avoid to 1 with
the following command:
kctune nfs_srv_read_copy_avoid=1
The fix can be disabled with the following command:
kctune nfs_srv_read_copy_avoid=0
Note that this fix was first included in PHNE_34550.
However, due to an unavailable dependency in VxFS it could
not be documented in PHNE_34550. If you enable this fix you
should install VxFS patches PHKL_35239, PHKL_35240,
PHKL_35241, PHKL_35242, PHKL_35243, and PHKL_35244.
( SR:8606442863 CR:JAGag00589 )
The alpha semaphore is used in numerous locations in the NFS
client code. Since the NFS client is mostly single threaded,
and the alpha semaphore is a global lock, holding the alpha
semaphore serializes many unrelated operations that span
across one or many NFS mount points. Avoiding the use of the
alpha semaphore can improve NFS performance.
Resolution:
Holding the alpha semaphore is removed conditionally from
all NFS client vnode operations. This fix is disabled by
default. To enable the fix, set the value of the kernel
parameter nfs_fine_grain_fs_lock to 2 with the following
command:
kctune nfs_fine_grain_fs_lock=2
The fix can be disabled with one of the following commands:
kctune nfs_fine_grain_fs_lock=0
or
kctune nfs_fine_grain_fs_lock=1
Note that the allowed values for nfs_fine_grain_fs_lock are
0,1 and 2. When nfs_fine_grain_fs_lock is set to 1, holding
the alpha semaphore is removed conditionally from only the
access, lookup, and getattr code paths (SR:8606230395). The
default value for nfs_fine_grain_fs_lock is 0.
PHNE_34550:
( SR:8606391790 CR:JAGaf51922 )
The rpc.mountd daemon uses random ports for transport
connections. This makes it difficult to configure firewalls
which require a specific port number to be used.
Resolution:
An interface is provided for assigning a port number for the
rpc.mountd daemon. To assign a port number, add the
following variable to the end of the
/etc/rc.config.d/nfsconf file:
MOUNTD_PORT=<port number>
The port number can be any value from 1 to 65536. For
example:
MOUNTD_PORT=9101
The daemon needs to be restarted for the change to take
effect. To revert back to random port numbers, delete the
variable and restart the daemon.
PHNE_34551 provides similar functionality for the rpc.lockd
and rpc.statd daemons.
NOTE: The MOUNTD_PORT variable will be supported in the
HP-UX 11i v3 release, although the configuration file will
be /etc/default/nfs instead of /etc/rc.config.d/nfsconf.
( SR:8606411484 CR:JAGaf71349 )
The performance of NFS writes is impacted by an unnecessary
copy between NFS and XDR buffers. Also the jumbo frames
capability of a network interface is not fully utilized in
the NFS write path.
Resolution:
Added a new kernel parameter nfs_clnt_avoid_write_copy
which, when enabled, causes the NFS client to convert NFS
buffers into mblks and pass them to lower level modules such
as Kernel RPC. The copy between NFS and XDR buffers is
avoided which can result in increased NFS write performance.
This fix is disabled by default. To enable the fix, set the
value of the new kernel parameter nfs_clnt_avoid_write_copy
to 1 with the following command:
kctune nfs_clnt_avoid_write_copy=1
The fix can be disabled with the following command:
kctune nfs_clnt_avoid_write_copy=0
( SR:8606429035 CR:JAGaf88501 )
There is a potential race condition on an NFS client when
there are multiple threads for transport and client handles.
This causes the contents of the handles to become stale,
which results in a panic. There are independent statements
which are not protected by a lock, and these statements are
grouped together and executed in parallel by multiple
processors.
Resolution:
The independent code is protected by spinlocks to avoid a
race condition.
( SR:8606431961 CR:JAGaf91403 )
The TCP nfsd uses a circular linked list to manage the TCP
connections. This list management was broken and resulted in
an endless loop.
Resolution:
Modified the list management logic to eliminate the endless
loop.
( SR:8606434552 CR:JAGaf93043 )
If an NFS multi-processor server handles a large number of
NFS client requests, exportfs lock contention becomes a
bottleneck for overall NFS throughput.
Resolution:
Replaced the exportfs lock by hashed reader/writer
spinlocks. This fix is disabled by default. To enable the
fix, set the value of the new kernel parameter
nfs_exportfs_rwlock to 1. All exported directories should be
unexported before modifying the value of this parameter (and
exported again after modifying the value). If there are
exported directories when the value is modified, the value
is not changed until after the next reboot. The following
commands enable the fix dynamically:
exportfs -ua
kctune nfs_exportfs_rwlock=1
exportfs -a
To disable the fix dynamically, run the following commands:
exportfs -ua
kctune nfs_exportfs_rwlock=0
exportfs -a
( SR:8606440062 CR:JAGaf97975 )
1. When a kernel parameter is modified, there are two
independent operations which get executed, validation and
commit. If an NFS mount request is processed between these
two operations, kernel parameters which are not allowed to
be dynamically modified if there are NFS mounts present in
the system could be modified.
2. The validation operation for the nfs_new_lock_code and
nfs_wakeup_one kernel parameters is executed if kctune is
called with the -h option. This causes the command to fail.
Resolution:
1. Do not allow NFS mount operations while dynamically
changing the value of nfs_new_lock_code or nfs_wakeup_one.
2. Do not execute the validation operation for
nfs_new_lock_code or nfs_wakeup_one if the value is changed
with the "kctune -h" option.
( SR:8606440892 CR:JAGaf98686 )
NFS v3 uses an access cache that contains user credentials
and the corresponding access rights. The access cache is
traversed linearly. If there are many entries in the access
cache it can take a long time to traverse the cache.
Resolution:
Added a new kernel parameter nfs3_new_acache which, when
enabled, allows the access cache to be traversed with a
hashing mechanism. This can improve NFS performance. This
fix is disabled by default. To enable the fix, set the
value of nfs3_new_acache to 1. The number of hash buckets to
be used by the access cache is controlled by the new kernel
parameter nfs3_hacc_size. This parameter is only applicable
if the value of nfs3_new_acache is set to 1. The default
value of nfs3_hacc_size is 32. The minimum value for
nfs3_hacc_size is 2, and the recommended range is 8 to 1024.
All mounted directories must be unmounted before modifying
the value of these parameters (and mounted again after
modifying the values). If there are mounted directories when
one of the values is modified, the value will not be changed
until after the next reboot. The following commands will
enable the fix and set the number of hash buckets to 128:
kctune nfs3_new_acache=1
kctune nfs3_hacc_size=128
The fix can be disabled with the following command:
kctune nfs3_new_acache=0
PHNE_34292:
( SR:8606230395 CR:JAGad99445 )
There are extra alpha semaphores for lookup and access
paths. Avoiding the use of some semaphores can improve
performance.
Resolution:
Holding the alpha semaphore is removed conditionally from
access, lookup and getattr code paths. This is controlled by
a new kernel parameter. This fix is disabled by default. To
enable the fix, set the value of the new kernel parameter
nfs_fine_grain_fs_lock to 1 with the following command:
kctune nfs_fine_grain_fs_lock=1
The fix can be disabled with the following command:
kctune nfs_fine_grain_fs_lock=0
( SR:8606436859 CR:JAGaf95104 )
NFS v3 uses READDIRPLUS by default to get directory
information, while NFS v2 uses READDIR. Since READDIRPLUS
returns a lot more information than READDIR, some
applications may experience a performance degradation using
NFS v3. If the extra information returned by READDIRPLUS is
not required, there should be a mount option to use READDIR
for NFS v3.
Resolution:
Added a new "readdir" mount option that avoids using
READDIRPLUS on NFS v3 mounts. Since READDIR is the default
on NFS v2 mounts, this option has no effect for NFS v2.
PHNE_33982:
( SR:8606393467 CR:JAGaf53524 )
NFS tunable parameters must be set with adb(1) which is an
unsupported mechanism. Parameters set with adb(1) are reset
to the default value when the kernel is rebuilt. If
parameters are set outside of tested limits, kernel reboots
may fail and vmunix may get corrupted. There is a lack of
documentation describing NFS tunable parameters.
Resolution:
A supported mechanism (kctune) is now available for setting
NFS tunable parameters. Parameters set with kctune(1M)
survive kernel reboots and rebuilds. There is a document
available at
http://www.docs.hp.com/en/netcom.html#NFS%20Services
in the White Papers section which describes these parameters
called "Managing NFS Kernel Configurations in HP-UX 11iv2".
( SR:8606419732 CR:JAGaf79562 )
The llock feature is actually a mount flag displayed by
"nfsstat -m", not a client display field displayed by
"nfsstat -c". The mount flags are not listed in the
nfsstat.1m man page.
Resolution:
Removed llock from the list of client display fields and
added a list of the mount flags in the nfsstat.1m man page.
PHNE_33655:
( SR:8606410496 CR:JAGaf70378 )
If multiple threads and processes try to access an NFS
mounted directory simultaneously by creating and unlinking
files, the unlink operations are serialized by the rnode
lock of the NFS directory. One thread performs its unlink
operation while the remaining threads sleep, waiting for the
rnode lock. When the unlink operation completes, all of the
threads are woken up and they compete for the rnode lock.
One thread obtains the lock and the others sleep again. This
sleep, wakeup, sleep, etc. context switching overhead causes
the CPU utilization to increase.
Resolution:
Instead of waking up all threads waiting for the same rnode
lock when the lock becomes available, wakeup one thread at a
time. This fix is disabled by default. To enable the fix,
set the kernel parameter nfs_wakeup_one to 1 by patching the
vmunix file and rebooting. To patch the vmunix file
(survives a reboot) use the following command:
echo 'nfs_wakeup_one?W 0x1' |
adb -o -w /stand/vmunix /dev/kmem
and then reboot your system. This command will have no
effect until the system is rebooted. A kernel regeneration
will require these steps to be done again. Note that
depending on the system configuration and applications being
used, this tunable may result in increased or decreased
performance. Customers need to analyze their applications
and test to see if enabling this tunable provides better
performance in their environment.
PHNE_33104:
( SR:8606402638 CR:JAGaf62573 )
The rpc.pcnfsd process still logs data to the wtmp database
instead of the wtmps database.
Resolution:
Modified rpc.pcnfsd to log data to the wtmps database.
PHNE_33099:
( SR:8606383205 CR:JAGaf43399 )
The Local Locking feature is not available on NFS. Enabling
this feature can improve NFS performance by avoiding RPC
calls.
Resolution:
Implemented the Local Locking feature on NFS. This feature
is enabled by using the "llock" mount option. If the file
system is mounted using this option, the Network Lock
Manager is bypassed when locking files over NFS.
( SR:8606387765 CR:JAGaf47918 )
If a write() system call is interrupted by a signal before
it writes any data to the NFS server (this could happen if
the server is down), it should return -1 and have errno set
to EINTR. Instead, the return value of write() is
inconsistent. It can return success and have errno set to
0, or it can return -1 and have errno set to EINTR. This is
because NFS does a "read before write" if the write length
is smaller than the block size - it reads one block,
modifies it, and writes it back. If "read before write" is
used, the signal interrupts the read path and the behavior
is as expected (returns -1). If no "read before write" is
used (the file is being created, the buffer has already been
read because of a previous write, or the write is one block
long) the signal interrupts the write path and the behavior
is faulty and returns success. This occurs because the value
returned by bwrite() is ignored for synchronous writes.
Resolution:
The value returned by bwrite() for synchronous writes is now
checked and returned to the application.
( SR:8606387807 CR:JAGaf47960 )
If an NFS client sends a read request with an invalid read
size, the server crashes while allocating memory.
Resolution:
Reject read requests greater than the maximum allowable
transfer size for PV2. Allocate memory for the maximum
allowable transfer size for read requests greater than the
maximum allowable transfer size for PV3.
( SR:8606389255 CR:JAGaf49403 )
A deadlock situation occurs between three NFS threads in a
single process. Thread A sleeps non-interruptibly in the
following code path:
_swtch+0xc4
_sleep_one+0x1a8
ksleep_one+0x2f4
hp_cv_wait+0x60
nfs_purge_rddir_cache+0x6c
nfs3create+0x258
nfs3_create+0xc4
vns_create+0xa4
vn_create+0xd4
vn_open+0x19c
copen+0xa8
open+0x38
syscall+0x768
syscallinit+0x55c
Thread A waits for a resource owned by thread B (in this
case it waits for thread B to finish accessing directory
data that is being updating) but thread B sleeps
interruptibly in the following code path:
_swtch+0xc4
thread_process_suspend+0x20c
issig+0x338
_sleep_one+0x2e0
ksleep_one+0x2f4
hp_cv_wait_sig+0x64
nfs3_readdir2+0x1f4
getdents+0xc8
syscall+0x768
syscallinit+0x55c
Thread C calls vfork() which sends SIGSTOP to all the
threads in the process, suspending thread B. Thread C is in
the following code path:
_sleep+0x218
thread_suspend_wait+0x2e8
for_specific_threads+0xc0
process_wide_suspend_wait+0x28
newproc+0x1f8
fork1+0x220
vfork+0x14
syscall+0x768
syscallinit+0x55c
Thread A is still waiting for the resource to be
freed by thread B, and thread C waits for thread A to
process SIGSTOP, which causes the hang.
Resolution:
When an NFS thread does an interruptible sleep, block
SIGSTOP so that the thread does not become suspended.
( SR:8606392946 CR:JAGaf53027 )
NFS was using a released credential for I/O. When the stale
credential was referenced the system panicked.
Resolution:
The credential is now held before I/O so that the credential
is not released during NFS I/O.
( SR:8606393839 CR:JAGaf53894 )
The rename() system call behaves incorrectly when renaming
a directory in a CacheFS-mounted file system using NFSv2,
if the target name is an existing directory. The incorrect
behavior is due to the reference count for a directory
getting incremented to more than 1 (due to CacheFS and NFS).
This causes "unlink-open-file" logic to be executed, which
is only applicable to regular files and not directories.
As a result a "Not Owner" error returned. If the target name
is an empty directory, the rename() call should succeed. If
the target name is a non-empty directory, a "File exists"
error should be returned.
Resolution:
An additional check for the file type is added before the
"unlink-open-file" logic is executed.
PHNE_32055:
( SR:8606377321 CR:JAGaf37599 )
The fix for JAGae90487 assumed that binvalfree_vp required
MP_RLOCK protection to avoid system crashes. This change
created a potential deadlock situation.
Resolution:
The fix for JAGae90487 was redesigned which included
removing the rnode locks that were added to protect
binvalfree_vp.
( SR:8606373075 CR:JAGaf33480 )
Memory mappings are not removed while truncating memory
mapped files over NFS.
Resolution:
Modified the NFS truncate path to completely remove the
memory mappings.
( SR:8606381800 CR:JAGaf42012 )
The AutoFS 2.3 implementation has obsoleted the need for the
JAGad50904 fix. This fix prevented a possible hang during
system shutdown.
Resolution:
Removed the fix for JAGad50904 from the nfs.client script.
( SR:8606383689 CR:JAGaf43880 )
When you mount an NFS filesystem with the forcedirectio
option, the option is not listed in the /etc/mnttab file.
Resolution:
Modified the NFS client kernel and the nfsstat command to
update the /etc/mnttab file with the forcedirectio option.
( SR:8606385870 CR:JAGaf46024 )
This product update contains some minor enhancements
required to pre-enable a future HP-UX nodename and hostname
expansion product bundle (NodeHostNameXpnd).
Resolution:
The NFS mount command now accepts hostnames up to 255
characters within the remote file system.
Enhancement:
No (superseded patches contained enhancements)
PHNE_32055:
Support added for future maximum length expansion of
nodename and hostname.
SR:
8606472149 8606425181 8606474098 8606477797 8606480160
8606467933 8606473443 8606438393 8606446862 8606456585
8606460011 8606461892 8606467788 8606461972 8606385895
8606390411 8606413731 8606421959 8606437373 8606440810
8606430826 8606442863 8606391790 8606411484 8606429035
8606431961 8606434552 8606440062 8606440892 8606230395
8606436859 8606393467 8606419732 8606410496 8606402638
8606373075 8606377321 8606381800 8606383205 8606383689
8606385870 8606387765 8606387807 8606389255 8606392946
8606393839
Patch Files:
NFS.NFS-CLIENT,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP:
/sbin/init.d/nfs.client
NFS.NFS-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP:
/usr/share/man/man1m.Z/mountd.1m
/usr/share/man/man1m.Z/nfsd.1m
/usr/share/man/man1m.Z/nfsstat.1m
/usr/share/man/man1m.Z/biod.1m
/usr/share/man/man1m.Z/rpc.mountd.1m
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libnfs.a
/usr/conf/lib/libnfssrv.a
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/sbin/fs/nfs/mount
/usr/bin/nfsstat
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/contrib/bin/nsquery
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/sbin/fs/nfs/exportfs
/usr/sbin/rpc.mountd
/usr/sbin/nfsd
/usr/sbin/rpc.pcnfsd
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libnfs.a
/usr/conf/lib/libnfssrv.a
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/sbin/fs/nfs/mount
/usr/bin/nfsstat
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/contrib/bin/nsquery
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/sbin/fs/nfs/exportfs
/usr/sbin/rpc.mountd
/usr/sbin/nfsd
/usr/sbin/rpc.pcnfsd
what(1) Output:
NFS.NFS-CLIENT,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP:
/sbin/init.d/nfs.client:
nfs.client $Date: 2007/04/18 10:33:01 $Revision: r11
.23/2 PATCH_11.23 (PHNE_36257)
NFS.NFS-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP:
/usr/share/man/man1m.Z/mountd.1m:
None
/usr/share/man/man1m.Z/nfsd.1m:
None
/usr/share/man/man1m.Z/nfsstat.1m:
None
/usr/share/man/man1m.Z/biod.1m:
None
/usr/share/man/man1m.Z/rpc.mountd.1m:
None
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/conf/lib/libnfs.a:
nfs_xdr.c $Date: 2006/03/15 16:49:23 $Revision: r11.
23/2 PATCH_11.23 (PHNE_34550)
nfs_vnops.c $Date: 2006/08/14 12:09:19 $Revision: r1
1.23/5 PATCH_11.23 (PHNE_35118)
nfs_vfsops.c $Date: 2006/08/14 12:08:48 $Revision: r
11.23/5 PATCH_11.23 (PHNE_35118)
nfs_subr.c $Date: 2007/04/19 12:31:43 $Revision: r11
.23/9 PATCH_11.23 (PHNE_36257)
nfs_client.modmeta $Date: 2006/10/06 15:08:16 $Revis
ion: r11.23/5 PATCH_11.23 (PHNE_35511)
nfs_client.c $Date: 2006/10/06 15:05:27 $Revision: r
11.23/8 PATCH_11.23 (PHNE_35511)
nfs3_xdr.c $Date: 2006/03/15 16:48:28 $Revision: r11
.23/3 PATCH_11.23 (PHNE_34550)
nfs3_vnops.c $Date: 2006/10/06 14:54:46 $Revision: r
11.23/9 PATCH_11.23 (PHNE_35511)
nfs3_vfsops.c $Date: 2006/08/14 12:06:31 $Revision:
r11.23/6 PATCH_11.23 (PHNE_35118)
libnfs.modmeta $Date: 2004/11/11 16:03:50 $Revision:
r11.23/3 PATCH_11.23 (PHNE_32055)
hpnfs_vnops.c $Date: 2006/11/30 15:09:44 $Revision:
r11.23/8 PATCH_11.23 (PHNE_35511)
hpnfs_util.c $Date: 2006/01/13 14:18:21 $Revision: r
11.23/2 PATCH_11.23 (PHNE_33982)
hpnfs_forced_unmount.c $Date: 2006/08/14 12:05:46 $R
evision: r11.23/3 PATCH_11.23 (PHNE_35118)
hpnfs_debug.c $Date: 2004/08/05 11:14:46 $Revision:
i380/3 PATCH_11.23 (PHKL_31500)
hpnfs_coreinit.c $Date: 2006/10/06 14:37:31 $Revisio
n: r11.23/4 PATCH_11.23 (PHNE_35511)
/usr/conf/lib/libnfssrv.a:
nfs_server.modmeta $Date: 2006/04/25 15:08:32 $Revis
ion: r11.23/3 PATCH_11.23 (PHNE_34550)
nfs_server.c $Date: 2007/02/05 16:02:21 $Revision: r
11.23/3 PATCH_11.23 (PHNE_35960)
nfs3_server.c $Date: 2007/02/05 15:57:20 $Revision:
r11.23/5 PATCH_11.23 (PHNE_35960)
nfs_dispatch.c $Date: 2006/10/06 14:33:43 $Revision:
r11.23/4 PATCH_11.23 (PHNE_35511)
nfs_kstat.c $Date: 2004/08/05 11:15:49 $Revision: i3
80/2 PATCH_11.23 (PHKL_31500)
nfs_export.c $Date: 2006/04/25 15:03:10 $Revision: r
11.23/2 PATCH_11.23 (PHNE_34550)
libnfssrv.modmeta $Date: 2005/05/26 16:04:11 $Revisi
on: r11.23/1 PATCH_11.23 (PHNE_33099)
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/sbin/fs/nfs/mount:
mount.c $Date: 2006/11/16 11:21:28 $Revision: r11.23
/6 PATCH_11.23 (PHNE_35511)
/usr/bin/nfsstat:
nfsstat.c $Date: 2004/11/08 12:18:01 $Revision: r11.
23/1 PATCH_11.23 (PHNE_32055)
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/usr/contrib/bin/nsquery:
nsquery.c $Date: 2006/10/19 11:05:08 $Revision: r11.
23/1 PATCH_11.23 (PHNE_35511)
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
/sbin/fs/nfs/exportfs:
exportfs.c $Date: 2007/04/12 12:50:52 $Revision: r11
.23/2 PATCH_11.23 (PHNE_36257)
exportent.c $Date: 2007/06/04 11:16:39 $Revision: r1
1.23/2 PATCH_11.23 (PHNE_36257)
/usr/sbin/rpc.mountd:
rpc.mountd.c $Date: 2007/04/20 14:21:13 $Revision: r
11.23/6 PATCH_11.23 (PHNE_36257)
rpc_soc1.c $Date: 2006/04/05 14:01:55 $Revision: r11
.23/1 PATCH_11.23 (PHNE_34551)
exportent.c $Date: 2007/06/04 11:16:39 $Revision: r1
1.23/2 PATCH_11.23 (PHNE_36257)
/usr/sbin/nfsd:
nfsd.c $Date: 2006/04/05 14:41:50 $Revision: r11.23/
1 PATCH_11.23 (PHNE_34550)
/usr/sbin/rpc.pcnfsd:
pcnfsd_misc.c $Date: 2005/07/11 11:33:16 $Revision:
r11.23/1 PATCH_11.23 (PHNE_33104)
pcnfsd_print.c $Date: 2007/04/10 11:06:25 $Revision:
r11.23/2 PATCH_11.23 (PHNE_36257)
pcnfsd_svc.c $Date: 2007/04/10 11:05:16 $Revision: r
11.23/4 PATCH_11.23 (PHNE_36257)
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/conf/lib/libnfs.a:
nfs_xdr.c $Date: 2006/03/15 16:49:23 $Revision: r11.
23/2 PATCH_11.23 (PHNE_34550)
nfs_vnops.c $Date: 2006/08/14 12:09:19 $Revision: r1
1.23/5 PATCH_11.23 (PHNE_35118)
nfs_vfsops.c $Date: 2006/08/14 12:08:48 $Revision: r
11.23/5 PATCH_11.23 (PHNE_35118)
nfs_subr.c $Date: 2007/04/19 12:31:43 $Revision: r11
.23/9 PATCH_11.23 (PHNE_36257)
nfs_client.modmeta $Date: 2006/10/06 15:08:16 $Revis
ion: r11.23/5 PATCH_11.23 (PHNE_35511)
nfs_client.c $Date: 2006/10/06 15:05:27 $Revision: r
11.23/8 PATCH_11.23 (PHNE_35511)
nfs3_xdr.c $Date: 2006/03/15 16:48:28 $Revision: r11
.23/3 PATCH_11.23 (PHNE_34550)
nfs3_vnops.c $Date: 2006/10/06 14:54:46 $Revision: r
11.23/9 PATCH_11.23 (PHNE_35511)
nfs3_vfsops.c $Date: 2006/08/14 12:06:31 $Revision:
r11.23/6 PATCH_11.23 (PHNE_35118)
libnfs.modmeta $Date: 2004/11/11 16:03:50 $Revision:
r11.23/3 PATCH_11.23 (PHNE_32055)
hpnfs_vnops.c $Date: 2006/11/30 15:09:44 $Revision:
r11.23/8 PATCH_11.23 (PHNE_35511)
hpnfs_util.c $Date: 2006/01/13 14:18:21 $Revision: r
11.23/2 PATCH_11.23 (PHNE_33982)
hpnfs_forced_unmount.c $Date: 2006/08/14 12:05:46 $R
evision: r11.23/3 PATCH_11.23 (PHNE_35118)
hpnfs_debug.c $Date: 2004/08/05 11:14:46 $Revision:
i380/3 PATCH_11.23 (PHKL_31500)
hpnfs_coreinit.c $Date: 2006/10/06 14:37:31 $Revisio
n: r11.23/4 PATCH_11.23 (PHNE_35511)
/usr/conf/lib/libnfssrv.a:
nfs_server.modmeta $Date: 2006/04/25 15:08:32 $Revis
ion: r11.23/3 PATCH_11.23 (PHNE_34550)
nfs_dispatch.c $Date: 2006/10/06 14:33:43 $Revision:
r11.23/4 PATCH_11.23 (PHNE_35511)
nfs3_server.c $Date: 2007/02/05 15:57:20 $Revision:
r11.23/5 PATCH_11.23 (PHNE_35960)
nfs_server.c $Date: 2007/02/05 16:02:21 $Revision: r
11.23/3 PATCH_11.23 (PHNE_35960)
nfs_kstat.c $Date: 2004/08/05 11:15:49 $Revision: i3
80/2 PATCH_11.23 (PHKL_31500)
nfs_export.c $Date: 2006/04/25 15:03:10 $Revision: r
11.23/2 PATCH_11.23 (PHNE_34550)
libnfssrv.modmeta $Date: 2005/05/26 16:04:11 $Revisi
on: r11.23/1 PATCH_11.23 (PHNE_33099)
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/sbin/fs/nfs/mount:
$Revision: 92453-07 linker linker crt0.o B.11.16.01
030415 $
mount.c $Date: 2006/11/16 11:21:28 $Revision: r11.23
/6 PATCH_11.23 (PHNE_35511)
/usr/bin/nfsstat:
$Revision: 92453-07 linker linker crt0.o B.11.16.01
030415 $
nfsstat.c $Date: 2004/11/08 12:18:01 $Revision: r11.
23/1 PATCH_11.23 (PHNE_32055)
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/usr/contrib/bin/nsquery:
$Revision: 92453-07 linker linker crt0.o B.11.16.01
030415 $
nsquery.c $Date: 2006/10/19 11:05:08 $Revision: r11.
23/1 PATCH_11.23 (PHNE_35511)
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
/sbin/fs/nfs/exportfs:
$Revision: 92453-07 linker linker crt0.o B.11.16.01
030415 $
exportfs.c $Date: 2007/04/12 12:50:52 $Revision: r11
.23/2 PATCH_11.23 (PHNE_36257)
exportent.c $Date: 2007/06/04 11:16:39 $Revision: r1
1.23/2 PATCH_11.23 (PHNE_36257)
/usr/sbin/rpc.mountd:
$Revision: 92453-07 linker linker crt0.o B.11.16.01
030415 $
rpc.mountd.c $Date: 2007/04/20 14:21:13 $Revision: r
11.23/6 PATCH_11.23 (PHNE_36257)
rpc_soc1.c $Date: 2006/04/05 14:01:55 $Revision: r11
.23/1 PATCH_11.23 (PHNE_34551)
exportent.c $Date: 2007/06/04 11:16:39 $Revision: r1
1.23/2 PATCH_11.23 (PHNE_36257)
/usr/sbin/nfsd:
$Revision: 92453-07 linker linker crt0.o B.11.16.01
030415 $
nfsd.c $Date: 2006/04/05 14:41:50 $Revision: r11.23/
1 PATCH_11.23 (PHNE_34550)
/usr/sbin/rpc.pcnfsd:
$Revision: 92453-07 linker linker crt0.o B.11.16.01
030415 $
pcnfsd_misc.c $Date: 2005/07/11 11:33:16 $Revision:
r11.23/1 PATCH_11.23 (PHNE_33104)
pcnfsd_print.c $Date: 2007/04/10 11:06:25 $Revision:
r11.23/2 PATCH_11.23 (PHNE_36257)
pcnfsd_svc.c $Date: 2007/04/10 11:05:16 $Revision: r
11.23/4 PATCH_11.23 (PHNE_36257)
cksum(1) Output:
NFS.NFS-CLIENT,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP:
4231981136 10810 /sbin/init.d/nfs.client
NFS.NFS-ENG-A-MAN,fr=B.11.23,fa=HP-UX_B.11.23_IA/PA,v=HP:
1039591429 2121 /usr/share/man/man1m.Z/mountd.1m
2879295841 2491 /usr/share/man/man1m.Z/nfsd.1m
3943536446 3137 /usr/share/man/man1m.Z/nfsstat.1m
2879295841 2491 /usr/share/man/man1m.Z/biod.1m
1039591429 2121 /usr/share/man/man1m.Z/rpc.mountd.1m
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
3386247722 1293264 /usr/conf/lib/libnfs.a
303184402 420952 /usr/conf/lib/libnfssrv.a
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
2228249839 101556 /sbin/fs/nfs/mount
251582296 42028 /usr/bin/nfsstat
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
1334818954 44564 /usr/contrib/bin/nsquery
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_IA,v=HP:
4051317472 73060 /sbin/fs/nfs/exportfs
4284738818 138316 /usr/sbin/rpc.mountd
4073431464 84044 /usr/sbin/nfsd
1626071736 113820 /usr/sbin/rpc.pcnfsd
NFS.NFS-KRN,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
3436516465 753920 /usr/conf/lib/libnfs.a
3827823946 243840 /usr/conf/lib/libnfssrv.a
NFS.NFS2-CORE,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
1130725807 65536 /sbin/fs/nfs/mount
662242026 45056 /usr/bin/nfsstat
NFS.NFS2-PRG,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
1691121661 32768 /usr/contrib/bin/nsquery
NFS.NFS2-SERVER,fr=B.11.23,fa=HP-UX_B.11.23_PA,v=HP:
2216548124 49152 /sbin/fs/nfs/exportfs
4080550313 77824 /usr/sbin/rpc.mountd
1180964192 49152 /usr/sbin/nfsd
2070682862 77824 /usr/sbin/rpc.pcnfsd
Patch Conflicts: None
Patch Dependencies:
s700: 11.23: PHKL_31500
s800: 11.23: PHKL_31500
Hardware Dependencies: None
Other Dependencies:
If you enable the fix for JAGaf90283 you should install VxFS
patches PHKL_35239, PHKL_35240, PHKL_35241, PHKL_35242,
PHKL_35243, and PHKL_35244 or the superseding patches.
Supersedes:
PHNE_35960 PHNE_35511 PHNE_35118 PHNE_34550 PHNE_34292 PHNE_33982
PHNE_33655 PHNE_33104 PHNE_33099 PHNE_32055
Equivalent Patches: None
Patch Package Size: 1300 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 PHNE_36257
5. Run swinstall to install the patch:
swinstall -x autoreboot=true -x patch_match_target=true \
-s /tmp/PHNE_36257.depot
By default swinstall will archive the original software in
/var/adm/sw/save/PHNE_36257. 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 PHNE_36257.text file is
available in the product readme:
swlist -l product -a readme -d @ /tmp/PHNE_36257.depot
To put this patch on a magnetic tape and install from the
tape drive, use the command:
dd if=/tmp/PHNE_36257.depot of=/dev/rmt/0m bs=2k
Special Installation Instructions: None
|