1#!/sbin/sh 2# 3# CDDL HEADER START 4# 5# The contents of this file are subject to the terms of the 6# Common Development and Distribution License, Version 1.0 only 7# (the "License"). You may not use this file except in compliance 8# with the License. 9# 10# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11# or http://www.opensolaris.org/os/licensing. 12# See the License for the specific language governing permissions 13# and limitations under the License. 14# 15# When distributing Covered Code, include this CDDL HEADER in each 16# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17# If applicable, add the following below this CDDL HEADER, with the 18# fields enclosed by brackets "[]" replaced with your own identifying 19# information: Portions Copyright [yyyy] [name of copyright owner] 20# 21# CDDL HEADER END 22# 23# 24# Copyright 2004 Sun Microsystems, Inc. All rights reserved. 25# Use is subject to license terms. 26# 27# ident "%Z%%M% %I% %E% SMI" 28 29if [ -z "$_INIT_PREV_LEVEL" ]; then 30 set -- `/usr/bin/who -r` 31 _INIT_PREV_LEVEL="$9" 32fi 33 34[ $_INIT_PREV_LEVEL != S -a $_INIT_PREV_LEVEL != 1 ] && exit 0 35 36# Uncomment this line to print the complete system configuration on startup 37#[ -x /usr/sbin/prtconf ] && /usr/sbin/prtconf 38 39# If there are trademark files, print them. 40 41[ -d /etc/tm ] && /usr/bin/cat /etc/tm/* 2>/dev/null 42 43# 44# Set default scheduling class 45# 46if [ -f /etc/dispadmin.conf ] && [ -x /usr/sbin/dispadmin ] && \ 47 [ -x /usr/bin/priocntl ] && \ 48 [ "${_INIT_ZONENAME:=`/sbin/zonename`}" = "global" ]; then 49 ERROR="$0: cannot set default scheduling class to " 50 DISPADMIN_D=`/usr/sbin/dispadmin -d` 51 52 if [ $? -eq 0 ]; then 53 # 54 # Inform the kernel about the default scheduling class. 55 # 56 dispadmin -u 57 58 DEFAULT_SCHEDULER=`echo $DISPADMIN_D | \ 59 /usr/bin/awk '{ print $1 }'` 60 61 /usr/bin/priocntl -s -c $DEFAULT_SCHEDULER \ 62 -i all >/dev/null 2>&1 63 64 if [ $? -ne 0 ]; then 65 echo $ERROR $DEFAULT_SCHEDULER 66 else 67 # 68 # Also need to move init process explicitly 69 # because it was ignored by "-i all". 70 # 71 /usr/bin/priocntl -s -c $DEFAULT_SCHEDULER \ 72 -i pid 1 >/dev/null 2>&1 73 if [ $? -ne 0 ]; then 74 echo $ERROR $DEFAULT_SCHEDULER 75 fi 76 fi 77 fi 78fi 79 80# 81# Run rctladm to configure system resource controls based on the settings 82# previously saved by rctladm. See rctladm(1m) for instructions on how to 83# modify resource control settings. 84# 85if [ -f /etc/rctladm.conf ] && [ -x /usr/sbin/rctladm ]; then 86 /usr/sbin/rctladm -u 87fi 88 89# 90# Run pooladm to configure system pools. See pooladm(1m) for more information. 91# 92if [ -f /etc/pooladm.conf ] && [ -x /usr/sbin/pooladm ] && \ 93 [ "$_INIT_ZONENAME" = "global" ]; then 94 /usr/sbin/pooladm -e 95 /usr/sbin/pooladm -c 96fi 97