* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END * * * SYSTEM SPECIFICATION FILE * * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * It is not recommended to edit this file directly but rather * to deliver configuration fragments into files under /etc/system.d; * files in /etc/system.d are combined in alphabetical order and read by * the kernel before this file (/etc/system) is processed. * * Refer to the system(5) manual page for more information and * recommendations on naming fragment files. * * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * * As SmartOS ships with /etc/ off a ramdisk, we don't support using the * /etc/system.d mechanism. * * moddir: * * Set the search path for modules. This has a format similar to the * csh path variable. If the module isn't found in the first directory * it tries the second and so on. The default is /kernel /usr/kernel * * Example: * moddir: /kernel /usr/kernel /other/modules * root device and root filesystem configuration: * * The following may be used to override the defaults provided by * the boot program: * * rootfs: Set the filesystem type of the root. * * rootdev: Set the root device. This should be a fully * expanded physical pathname. The default is the * physical pathname of the device where the boot * program resides. The physical pathname is * highly platform and configuration dependent. * * Example: * rootfs:ufs * rootdev:/sbus@1,f8000000/esp@0,800000/sd@3,0:a * * (Swap device configuration should be specified in /etc/vfstab.) * exclude: * * Modules appearing in the moddir path which are NOT to be loaded, * even if referenced. Note that `exclude' accepts either a module name, * or a filename which includes the directory. * * Examples: * exclude: win * exclude: sys/shmsys * forceload: * * Cause these modules to be loaded at boot time, (just before mounting * the root filesystem) rather than at first reference. Note that * forceload expects a filename which includes the directory. Also * note that loading a module does not necessarily imply that it will * be installed. * * Example: * forceload: drv/foo * set: * * Set an integer variable in the kernel or a module to a new value. * This facility should be used with caution. See system(5). * * Examples: * * To set variables in 'unix': * * set nautopush=32 * set maxusers=40 * * To set a variable named 'debug' in the module named 'test_module' * * set test_module:debug = 0x13 set ibft_noprobe=1 set noexec_user_stack=1 set noexec_user_stack_log=1 set rlim_fd_cur=65536 * Ensure that c-states are disabled set idle_cpu_no_deep_c=1 * 10 GbE Tuning set ip:ip_squeue_fanout=1 * * Machines should take a crash dump and reboot when receiving an NMI * set pcplusmp:apic_panic_on_nmi=1 set apix:apic_panic_on_nmi=1 * * Don't use multi-threaded fast crash dump or a high compression level * set dump_plat_mincpu=0 set dump_bzip2_level=1 * * Want additional crash dump metrics * set dump_metrics_on=1 * * The traditional (and essentially entirely brain dead) cfgadm(1M)-centric * model of hotpluggin' appears to be basically unnecessary. This tunable * enables the system to create device nodes for newly inserted devices * automatically. See: usr/src/uts/common/io/sata/impl/sata.c:97 * set sata:sata_auto_online=1 * * We want to limit the time spent in any one I/O to 10 seconds for targets * that are not optical. This is still a very long time; our queue depth is * typically 10 or less, and disks will usually fail a command after 2-3s. * So we'd have to have multiple reads of bad sectors queued up to have any * chance of timing out. In practice, timeouts occur because of problems with * disk controllers or firmware, not media errors, and in those cases it will * not help at all to wait longer. * set sd:sd_io_time=10 * Use hires tick to improve some scheduling latency issues set hires_tick=1