Managing NFS and KRPC Kernel Configurations in HP-UX 11i v2 (Oct 2008)

Appendix B Migrating from adb to kctune
adb is a tool system administrators can use to tune the HP-UX kernel. However, using adb has several
disadvantages when compared to kctune. First, any changes made to kernel tunables via adb do not
persist through kernel rebuilds and kernel patch installations. In fact, changes made only to the
running kernel memory via adb do not persist across a system reboot. By contrast, changes made via
kctune do persist across system reboots, kernel rebuilds, and kernel patch installations. Second, most
adb tunable parameters are undocumented, and in many cases unsupported. Kctune parameters are
both documented and supported by HP. Therefore, HP strongly encourages all customers to stop
using adb to tune the HP-UX kernel and begin using kctune whenever possible.
While some system administrators may choose to continue using adb at their own risk, HP strongly
recommends against using both adb and kctune to configure the same kernel subsystem, such as NFS
or KRPC. If you previously used adb to tune your system, or you currently do, and you wish to
migrate to using kctune, you must clean up any scripts or programs that use adb to modify NFS/KRPC
tunable parameters prior to using kctune. This includes all scripts that use adb to modify NFS and
KRPC tunables either in the in-memory copy of vmunix or in the kernel file /stand/vmunix. These can
be scripts that are run manually or scripts that run automatically at startup, such as rc scripts. If the
scripts are not cleaned up, the traces of the earlier modifications are carried over and the results can
be very unpredictable. Again, HP’s recommendation is to stop using adb to modify NFS and KRPC
tunables, look for and remove any scripts or programs that call adb to set these tunables, and begin
using kctune.
Table B.1 lists the NFS and KRPC adb tunables and their corresponding kctune tunables. This list is
provided so that customers may search their systems for scripts or programs that modified these adb
tunables, remove any references to the adb tunables, and then use kctune to configure the
corresponding tunables to provide the same behavior previously done via adb.
Table B.1 adb Tunables
adb Tunable Name Corresponding kctune Tunable Name
async_read_avoidance_enabled nfs_async_read_avoidance_enabled*
nfs_do_purge_rddir_cache nfs_do_purge_rddir_cache*
nfs_new_lock_code nfs_new_lock_code*
nfs_new_rnode_lock_code nfs_new_rnode_lock_code*
nrnode nfs_nrnode
pathconf_chown_restricted_posix nfs_posix_pathconf_chown*
nfs_wakeup_one nfs_wakeup_one*
nfs_do_symlink_cache nfs2_do_symlink_cache
nfs_dynamic nfs2_dynamic
nfs_shrinkreaddir nfs2_shrinkreaddir
nfs3_adaptive_cache_validate nfs3_adaptive_cache_validate*
nfs3_do_symlink_cache nfs3_do_symlink_cache
nfs3_dynamic nfs3_dynamic
nfs3_jukebox_delay nfs3_jukebox_delay
nfs3_max_transfer_size nfs3_max_transfer_size
nfs3_max_transfer_size_clts nfs3_max_transfer_size_clts
nfs3_max_transfer_size_cots nfs3_max_transfer_size_cots
do_readdirplus nfs3_do_readdirplus
35