Index Index for
Section 5
Index Alphabetical
listing for S
Index Bottom of
page

sys_attrs_generic(5)

NAME

sys_attrs_generic - system attributes for the generic kernel subsystem

DESCRIPTION

This reference page describes the attributes for the Generic (generic) kernel subsystem. Some of these attributes have corresponding parameters in the system configuration file. If so, the corresponding parameter name in the system configuration file is specified in parentheses following the attribute name. In these cases, never edit the system configuration file to directly change the value of the system parameter; change the attribute by using the dxkerneltuner application, the /sbin/sysconfig -r command, or the sysconfigdb command. See dxkerneltuner(8), sysconfig(8), and sysconfigdb(8) for more information about your options for configuring kernel subsystems. act_vers_high A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. act_vers_low A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. binlog_buffer_size The kernel buffer size in bytes. Default value: If the binlog_buffer_size is not explicitly specified, the value for kernel buffer size is assigned at boot time and is based on the amount of physical memory installed on the system. The value assigned automatically ranges from 32 kilobytes to 1 megabyte. Minimum value: 8192 (bytes, or 8 KB) Maximum value: 1,048,576 (bytes, or 1 MB) booted_args The arguments that are passed from osf_boot to the kernel. This attribute value is query only. booted_kernel The name of the kernel that was loaded by osf_boot. This attribute value is query only. clu_active_member A value that indicates whether the system is (1) or is not (0) an actively running member system in a TruCluster environment. This query-only value is always set to 0 for a standalone system. clu_configured A value that indicates whether cluster kernel components are (1) or are not (0) configured in the kernel. This query-only value is always set to 0 for a standalone system. compressed_dump A value that enables (1) or disables (0) a compressed dump file. The type of zero compression implemented for compression saves substantial disk space but still allows the dump to be read by dbx and other operating system tools. Default value: 1 (enabled) You might want to change the default value if you consistently use tools, such as those from a third party, that do not support compressed dump files. See the System Administration and the Kernel Debuggingmanuals for more information about generating and working with dump files. cpu_enable_mask A value for the bit mask that determines which CPUs are started in a multi-CPU system. The lowest order bit (bit 0) in this mask corresponds to CPU0. The next highest order bit corresponds to CPU1, and so on, up to bit 63. The bits in these positions can be set to 0 (disabled) or 1 (enabled) for the corresponding CPU slots. The decimal or hexidecimal value specified for cpu_enable_mask corresponds to the binary value that has 0 and 1 in the correct ordinal positions for the CPUs you want to enable or disable. Default value: The hex value corresponding to the slots of CPUs that are actually enabled. On single-CPU systems with the CPU in slot 0, the default value is 0x1. Minimum value: 0 Maximum value: 0xffffffffffffffff (or -1) Specifying -1 for this attribute means that all CPUs present in the system are allowed to be started by the master CPU. Specifying 0 for this attribute enables uniprocessor operation in a multi-CPU system. Other values enable and disable specific CPUs, depending on what the system supports. The following table illustrates the relationships between bit settings and cpu_enable_mask values for enabling a single CPU. It is generally easier to determine and enter hexidecimal values, so only a few significant decimal equivalents are shown: Bit Dec. Hex Single 63... 8 7 6 5 4 3 2 1 0 Value Value CPU Enabled ______________________________________________________________________ 0 ... 0 0 0 0 0 0 0 0 0 0 0 Special meaning * 0 ... 0 0 0 0 0 0 0 0 1 1 0x1 CPU0 0 ... 0 0 0 0 0 0 0 1 0 0x2 CPU1 0 ... 0 0 0 0 0 0 1 0 0 0x4 CPU2 0 ... 0 0 0 0 0 1 0 0 0 0x8 CPU3 0 ... 0 0 0 0 1 0 0 0 0 0x10 CPU4 0 ... 0 0 0 1 0 0 0 0 0 0x20 CPU5 0 ... 0 0 1 0 0 0 0 0 0 0x40 CPU6 0 ... 0 1 0 0 0 0 0 0 0 0x80 CPU7 0 ... 1 0 0 0 0 0 0 0 0 0x100 CPU8 . . . 1 ... 0 0 0 0 0 0 0 0 0 0x8000000000000000 CPU63 * The minimum value (0) indicates that only the master (boot) CPU be enabled. This value is useful if you want to test applications in a uniprocessor environment and your test system normally runs in multiprocessor mode. Note Some systems require that the master CPU be CPU0. For these systems, 0, 1, and 0x1 are equivalent entries and are the only values you should specify for uniprocessor operation. On these systems, 0x1 is always the value set for cpu_enable_mask because the kernel will overwrite values specified for cpu_enable_mask that are incompatible with having CPU0 as the master CPU. For other systems, users can choose the slot position of the master CPU. Therefore, the result of entering 0 for this attribute can vary. For example, the actual setting would be 0x2 if CPU1 were the master CPU and 0x10 if CPU4 were the master CPU. The following table illustrates the relationships between bit settings and cpu_enable_mask values for enabling sample combinations of CPUs: Bit Dec. Hex Multiple 63... 8 7 6 5 4 3 2 1 0 Value Value CPUs Enabled _________________________________________________________________________ 0 ... 0 0 0 0 0 0 0 1 1 0x3 CPU0, CPU1 0 ... 0 0 0 0 0 0 1 0 1 0x5 CPU0, CPU2 0 ... 0 0 0 0 0 0 1 1 0 0x6 CPU1, CPU2 0 ... 0 0 0 0 0 0 1 1 1 0x7 CPU0, CPU1, CPU2 . 0 ... 0 0 0 0 0 1 1 1 1 0xf CPU0 to CPU3 . 0 ... 0 0 0 0 1 1 1 1 1 0x1f CPU0 to CPU4 . 0 ... 0 0 0 1 1 1 1 1 1 0x3f CPU0 to CPU5 . 0 ... 0 0 1 1 1 1 1 1 1 0x7f CPU0 to CPU6 . 0 ... 0 1 1 1 1 1 1 1 1 0xff CPU0 to CPU7 . 0 ... 1 1 1 1 1 1 1 1 1 0x1ff CPU0 to CPU8 . . . 1 ... 1 1 1 1 1 1 1 1 1 -1 0xffffffffffffffff All available CPUs * * The maximum value specifies 1 in all bit positions, thereby enabling all available CPUs. This value corresponds to 18446744073709551615 or -1 in decimal notation and 0xffffffffffffffff in hexidecimal notation. You can enable and disable specific combinations of CPUs by entering values that set and clear appropriate bit positions in the bit mask. If you suspect that one of the CPUs on a multiprocessor system may be the cause of a system problem, you can try running the system with different combinations of available CPUs disabled to help confirm your suspicion. Remember that if your system is one of those that require CPU0 to be the master CPU, the kernel does not apply values that map to 0 in bit position 0. In this case, you have to switch another CPU into slot 0 before you can do a test run that disables the CPU originally in slot 0. Certain lockmode attribute values override incompatible cpu_enable_mask settings. If the value of the lockmode attribute is 0 or 1, all bits in the cpu_enable_mask bit mask that do not correspond to the master CPU are set to 0. dump_allow_full_to_memory For internal use only. Do not change this attribute value manually. * dump_sp_threshold A threshold size that determines whether single-partition or multiple- partition dumps are created. If a dump will fit on the primary swap partition and leave space that is equal to this threshold value, the dump is created as a single-volume dump on the primary swap partition, even if secondary swap partitions are available. (See the System Administration and the Kernel Debugging manuals for details.) Default value: 4096 Minimum value: 0 Maximum value: 4096 This value can be changed at run time. dump_to_memory A value that enables (1) or disables (0) dumping to memory. Default value: 0 (disabled) This value can be changed at run time; however, do so only under direction of your support representative. dump_user_pte_pages A value that enables (1) or disables (0) the inclusion of user page table entries in a crash dump. Normally, user page table entries contribute no information about the cause of a system crash. Default value: 0 (disabled) This value can be changed at run time. However, you would normally change it only when directed to do so by a support representative who is gathering information about a particular problem. * enable_async_printf A value that enables (1) or disables (0) asynchronous printing of messages to the console. Asynchronous printing to the console prevents large numbers of messages from being written to the console at the same time. Default value: 1 (enabled) This value can be changed at run time. Device driver developers need to set enable_async_printf to 0 when debugging driver problems because they need to see the results of kernel printf() calls at the time of execution. expect_1000b_to_compress_to For internal use only. Do not set this attribute manually. See expected_dump_compression. * expected_dump_compression The level of compression that a dump is typically expected to achieve. Default value: 500 Minimum value: 0 Maximum value: 1000 This value can be changed at run time. See the System Administration manual for instructions on how to calculate the typical dump compression level for your system. include_user_ptes_in_dumps For internal use only. Do not set this attribute manually. See dump_user_pte_pages. * insecure_bind A value that allows programmers to override file permissions when UNIX domain sockets are created by a bind() call. When insecure_bind is set to a value other than 0, UNIX domain sockets are always created with mode 0777 (the umask is ignored). This prevents bind: permission denied errors when the bind() call executes. Default value: 0, meaning that file permission (umask) is not ignored This value can be changed at run time. See bind(2) for more information about creating domain sockets. In a TruCluster environment, the value of this attribute must be the same on all member systems. kmem_audit_count See kmem_debug. kmem_debug A value that enables (1) or disables (0) behavior useful for debugging problems in kernel memory allocation. Default value: 0 If enabled (1), each time the kernel memory allocator allocates or deallocates memory in the kernel memory pool, the system checks whether the operation is performed correctly. If the kernel memory pool is in a corrupt state, the system crashes and provides useful debugging information. This attribute, along with the kmem_audit_count, kmem_debug_size_mask, kmem_protected_kmempercent, kmem_protected_lowat, kmem_protected_size, and a series of kmemhighwater_* attributes should be set only by or under the direction of kernel software developers or support personnel. kmem_debug_size_mask See kmem_debug. kmem_percent The maximum percentage of kernel virtual address space that is reserved for kernel memory allocator (malloc) memory. Default value: Automatically set internally, depending on system memory size. Minimum value: 0 Maximum value: 100 If this value is too low, no space in map errors may occur and cause the system to hang. However, this situation indicates an unexpected problem that should be reported to your support representative. Do not modify the default value for kmem_percent unless directed to do so by your support representative. kmem_protected_hiwat See kmem_debug. kmem_protected_kmempercent See kmem_debug. kmem_protected_lowat See kmem_debug. kmem_protected_size See kmem_debug. kmemhighwater_* See kmem_debug. * kmemreserve_percent The percentage of memory that is reserved for the malloc component and used for kernel memory allocations that are less than or equal to the page size (8 KB). Default value: 0, which actually specifies 0.4 percent of available memory or 256 KB, whichever is smaller. Minimum value: 1 Maximum value: 75 A heavy network load that results in dropped packets is the primary reason why you might want to increase the kmemreserve_percent value. The netstat -d -i or the vmstat -M command shows you whether there are dropped packets. Increase the kmemreserve_percent value in small increments until there are no entries in the fail_nowait column of the vmstat -M command's output display. This value can be modified at run time. However, once the value has been increased, you cannot decrease it below 1 percent at run time. To restore the default setting (which is calculated by the kernel), you must directly edit the /etc/sysconfigtab file to remove or comment out the attribute and then reboot the system. This restriction will be removed in a future release. (Under ordinary conditions, direct editing of the /etc/sysconfigtab file is a practice that is strongly discouraged.) leave_dumps_in_memory For internal use only. Do not modify this attribute. See dump_to_memory. lite_system A setting that enables (1) or disables (0) a set of attribute values that improve performance for 32-MB systems. This attribute will soon be obsolete. Most kernel components now determine memory size directly and apply more sophisticated algorithms to determine defaults best suited for the system. Default value: 1 if memory size is less than or equal to 32 MB and 0 if memory size is greater than 32 MB Do not modify the default setting for this attribute unless instructed to do so by support personnel or by patch kit documentation. * live_dump_dir_name The full path to the directory where live dumps are written. This attribute allows you to write dumps generated while the system is running to a directory other than the one where crash dumps are written. Default value: /var/adm/crash (same directory as used for crash dumps) Minimum string length: 1 (byte) Maximum string length: 65 (bytes) This value can be modified at run time. * live_dump_zero_suppress A value that enables (1) or disables (0) zero compression of dumps that are generated while the system is still running. The zero compression process produces files that take longer to create but occupy less space on disk. Default value: 1 (enabled) This value can be modified at run time. You might want to set this value to 1 if you consistently use tools, such as those from third parties, that do not support compressed dump files or you want dumps created in a minimum amount of time. Because the system is still running while a live dump is being created, some of the data in a live dump may be inconsistent. The shorter creation time may result in less data inconsistency. See the Kernel Debugging and the System Administration manuals for more information about creating and working with dump files. lockdebug A value that enables (1) or disables (0) lock debugging. If enabled (1), the default value for the lockmode attribute is set to 4. If you explicitly specify a value for the lockmode attribute, that value also causes lockdebug to be set or reset (overridden). For example, if you set lockmodeto be 0, 1, 2, or 3, the value of lockdebug will be 0. If you set lockmode to be 4, the value of lockdebug will be 1. Default value: 0 (disabled) * lockmaxcycles Used for internal debugging. Default value: 0 Do not modify the default setting for this attribute unless instructed to do so by support personnel or by patch kit documentation. lockmode The mode in which the simple lock primitive package is used within the kernel. Mode settings support different combinations of real-time (RT) kernel preemption, symmetric multiprocessing (SMP), and lock debugging with lock statistics: 0 Neither RT nor SMP is required. In this case, the calls to the simple lock primitives are patched out completely. 1 Only RT is required. In this case, the simple lock operations maintain a "preemption blocking" count. 2 Only SMP is required. In this case, the lock operations provide synchronization among multiple CPUs. 3 Both RT and SMP are required. In this case, lock operations are performed as described for both mode 1 and 2. 4 Both RT and SMP are required. In this case, lock operations are as described for mode 3, with the addition of kernel lock debugging and statistics. Default value: Assigned at boot time, depending on the values for the rt_preempt_opt, cpu_enable_mask, and lockdebug attributes, and on whether multiple CPUs are able to be booted. If you specify a value for lockmode (0-4), your setting both overrides the default setting and disables any of the three related capabilities that cannot be supported by the chosen set of simple lock primitives. For example, setting lockmode to 0, 1, 2, or 3 disables kernel lock debugging and statistics, whether or not the lockdebug attribute was originally set to 1 (to enable kernel lock debugging and statistics). locktimeout The number of seconds that a CPU will wait (spin) on a simple lock. If a CPU cannot acquire a simple lock in the specified amount of time, a fatal error occurs, and the system panics and issues a "simple_lock:time limit exceeded" message. Default value: 15 (seconds) Do not modify the default setting for this attribute unless instructed to do so by support personnel or by patch kit instructions. A 0 value might cause boot failures on a multiprocessor system. Values larger than the default might hang the system instead of causing it to panic and reboot. login_name_max The maximum number of bytes supported for a user's login name string. One byte may be equivalent to one character in many languages; however, byte-to-character equivalence varies, depending on the user's default locale. Default value: 12 (bytes) Minimum value: 9 Maximum value: 64 In a TruCluster environment, the value of this attribute must be the same on all member systems. The default 12-byte limit exists only for backward compatibility reasons. Increase login_name_max to 64 to enable longer login names. make_compressed_dumps For internal use only. Do not modify this attribute. See compressed_dump. make_partial_dumps For internal use only. Do not modify this attribute. See partial_dump. max_lock_per_thread The depth to which complex locks can be nested for a thread at one time. The value of max_lock_per_thread is used for debugging (when lockmode=4). Default value: 16 Do not modify the default setting for this attribute unless instructed to do so by support personnel or by patch kit documentation. memberid Cluster member ID in the range of 0 to 63 that is set only by TruCluster software. Default value: 0 (for standalone systems) Minimum value: 0 Maximum value: 63 memberseq Reserved for future use by TruCluster software. memlimit A kernel debugging value intended for internal use only. memstr_buf_size A kernel debugging value intended for internal use only. memstr_end_addr A kernel debugging value intended for internal use only. memstr_start_addr A kernel debugging value intended for internal use only. msgbuf_size The size (in bytes) of the message buffer that is used to store boot log messages. Default value: Set automatically, based on memory size. Minimum value: 0 (bytes) Maximum value: 1,048,576 You may need to increase this value on a large system that issues too many boot messages for the buffer to hold until the syslog daemon starts. If the buffer is too small, initial boot messages are not written to the system log and the beginning of the first message that is written is likely to be truncated. new_vers_high A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. new_vers_low A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. old_obreak A value that changes the behavior of an internal system call. Default value: 1 (on) Do not modify the default setting for this attribute unless instructed to do so by support personnel or by patch kit documentation. Setting this value to off (0) has a negative impact on system performance. old_vers_high A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. old_vers_low A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. * partial_dump A value that determines whether the system generates partial (1) or full (0) crash dumps. Default value: 1 (partial dumps are created) You can modify this attribute at run time. See the Kernel Debugging and the System Administration manuals for more information about creating and working with dump files. * physio_max_coalescing A value that controls how I/O requests are gathered when readv or writev operations are directed at a character device (not a block device). For example, when set to 65536, eight 8-KB buffers coalesce into one 64-KB buffer. This improves the efficiency of database operations. Default value: 65,536 Do not modify the default setting for this attribute unless instructed to do so by support personnel or by patch kit documentation. rolls_ver_lookup A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. rt_preempt_opt A value that enables (1) or disables (0) real-time kernel preemption. Default value: 0 (disabled) If real-time kernel preemption is enabled (1): · The default value for lockmode will be 1 on a single-CPU system or 3 on a multi-CPU system. However, if you explicitly specify certain lockmode values, you implicitly override the rt_preempt_opt value. For example, if you set lockmode to 0 or 2, you implicitly set rt_preempt_opt to 0, disabling real-time kernel preemption. · The default value for ufs_lockholdmax will be 50. See sys_attrs_ufs(5) for information on ufs_lockholdmax. * use_faulty_fpe_traps A value that restores (1) or corrects (0) backward-compatible but incorrect behavior by the kernel's IEEE handler with respect to fast mode floating-point exception traps. When use_faulty_fpe_traps is set to 0, the IEEE handler correctly returns a *_TRAP code for imprecise or invalid traps that cannot be resolved and re-executed. When use_faulty_fpe_traps is set to 1, the IEEE handler reverts to returning a *_FAULT code for faulty traps that cannot be fixed and re- executed. However, *_FAULT codes should be returned only when the trap's trigger PC and instructions can still be determined; otherwise, re-execution cannot be completed. See ieee(3) and the Alpha Architecture Reference Manual for more information on this topic. Default value: 0 (correct return of *_TRAP code for faulty traps that cannot be resolved and re-executed) It is strongly recommended that you do not modify the default value. * user_cfg_pt The CFG run-time points that are configurable from user mode. Setting this attribute to a particular value triggers kernel callbacks that have been registered for the point corresponding to that value. Default value: 45,000 Do not modify the default setting for this attribute unless instructed to do so by support personnel or by patch kit documentation. versw_switch A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually. versw_transition A value that is set and used internally to support a rolling upgrade operation in a TruCluster environment. Do not modify manually.

SEE ALSO

Commands: dxkerneltuner(8), sysconfig(8), sysconfigdb(8) Others: sys_attrs(5) System Configuration and Tuning System Administration Kernel Debugging

Index Index for
Section 5
Index Alphabetical
listing for S
Index Top of
page