04-15-2013
How to make SMF service start last?
I need to start a service among the last on a freshly booted system. Via the manifest, I've made it dependent on very milestone on the computer yet the service still comes back with an error that a kstat variable in the kernel does not exist.
I run it right the service process right there and then and it works fine. So, there is something that sets-up kstat and this kernel variable after my service is trying to run on boot-up.
Isn't there something I can do to tell SMF run every single service on boot-up before you run my service?
10 More Discussions You Might Find Interesting
1. Solaris
Hi Experts,
While playing with smf in my local system ( which is not in production ) i am unable to restart the service svc:/network/nfs/server:default . I tried starting it in different way, however unable to restart the same.
I was checking the dependency for that I disabled the... (11 Replies)
Discussion started by: kumarmani
11 Replies
2. Solaris
I would like to run command whenever system boot up, i.e "/opt/admin/script/closegen -c /opt/share/script/colsehg"
How do I integrate above command in to SMF services.
-sam (1 Reply)
Discussion started by: sam786
1 Replies
3. Solaris
I can't get the exact error message because I am at home, but on Solaris 10u5 machine I have at work, a few services are stuck in the maintenance state with the following error message in the individual service logs (/var/svc/log/FMRI:instance.log):
Cannot chdir: permission denied
Fortunately... (2 Replies)
Discussion started by: ilikecows
2 Replies
4. Infrastructure Monitoring
I'm trying to register & start a service using SMF on Solaris 10. It's nsca, part of the Nagios monitoring system. I've got nsca running fine as a detached process, and can manually create passive checks via send_nsca. But when I try to run nsca as a daemon, I need some advice.
The nsca... (0 Replies)
Discussion started by: lyle
0 Replies
5. Solaris
Hi, Here is the questions: inetd on this Solaris 10 zone fails to start at boot time. Inetd has 4 dependents not started. These 4 dependents have their own dependents not started. How it happened? How can I use one or a few command to start inetd and all its dependents and dependents' dependents?... (11 Replies)
Discussion started by: aixlover
11 Replies
6. Solaris
Hi all,
Is there any way to configure a certain service to be shutdown first via SMF?
Thanks in advance
Eugene (1 Reply)
Discussion started by: srage
1 Replies
7. Solaris
Hi all,
Is there any way to configure a certain service to be shutdown first via SMF?
Thanks in advance
Eugene (2 Replies)
Discussion started by: srage
2 Replies
8. Solaris
I'm running Tibco Hawk (hawkhma and agent) on a number of solaris 10 boxes (both x86 and Sparc).
Tibco Hawk is a monitoring system, that can monitor processs and logs on the OS and applications. It also have the ability to start a process, if it for some reason, have died.
I have implemented... (2 Replies)
Discussion started by: u_paludan
2 Replies
9. Solaris
how to boot Solaris 10 from ok prompt, so that SMF services are started serially?
thanks. (2 Replies)
Discussion started by: orange47
2 Replies
10. UNIX for Advanced & Expert Users
Hello,
My ntp service goes in maintenance mode in Solaris 11. I do "svcadm clear ntp", the service is back but after 1 minute it crashes but automatically restarted. After the third attempt it goes in maintenance again :
After the clear :
1 minute later it crashes but it is... (2 Replies)
Discussion started by: bob74350
2 Replies
LEARN ABOUT SUNOS
kstat_waitq_enter
kstat_queue(9F) Kernel Functions for Drivers kstat_queue(9F)
NAME
kstat_queue, kstat_waitq_enter, kstat_waitq_exit, kstat_runq_enter, kstat_runq_exit, kstat_waitq_to_runq, kstat_runq_back_to_waitq - update
I/O kstat statistics
SYNOPSIS
#include <sys/types.h>
#include <sys/kstat.h>
void kstat_waitq_enter(kstat_io_t *kiop);
void kstat_waitq_exit(kstat_io_t *kiop);
void kstat_runq_enter(kstat_io_t *kiop);
void kstat_runq_exit(kstat_io_t *kiop);
void kstat_waitq_to_runq(kstat_io_t *kiop);
void kstat_runq_back_to_waitq(kstat_io_t *kiop);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI)
PARAMETERS
kiop Pointer to a kstat_io(9S) structure.
DESCRIPTION
A large number of I/O subsystems have at least two basic "lists" (or queues) of transactions they manage: one for transactions that have
been accepted for processing but for which processing has yet to begin, and one for transactions which are actively being processed (but
not done). For this reason, two cumulative time statistics are kept: wait (pre-service) time, and run (service) time.
The kstat_queue() family of functions manage these times based on the transitions between the driver wait queue and run queue.
kstat_waitq_enter()
kstat_waitq_enter() should be called when a request arrives and is placed into a pre-service state (such as just prior to calling
disksort(9F)).
kstat_waitq_exit()
kstat_waitq_exit() should be used when a request is removed from its pre-service state. (such as just prior to calling the driver's
start routine).
kstat_runq_enter()
kstat_runq_enter() is also called when a request is placed in its service state (just prior to calling the driver's start routine, but
after kstat_waitq_exit()).
kstat_runq_exit()
kstat_runq_exit() is used when a request is removed from its service state (just prior to calling biodone(9F)).
kstat_waitq_to_runq()
kstat_waitq_to_runq() transitions a request from the wait queue to the run queue. This is useful wherever the driver would have nor-
mally done a kstat_waitq_exit() followed by a call to kstat_runq_enter().
kstat_runq_back_to_waitq()
kstat_runq_back_to_waitq() transitions a request from the run queue back to the wait queue. This may be necessary in some cases (write
throttling is an example).
RETURN VALUES
None.
CONTEXT
kstat_create() can be called from user or kernel context.
WARNINGS
These transitions must be protected by holding the kstat's ks_lock, and must be completely accurate (all transitions are recorded). Forget-
ting a transition may, for example, make an idle disk appear 100% busy.
SEE ALSO
biodone(9F), disksort(9F), kstat_create(9F), kstat_delete(9F), kstat_named_init(9F), kstat(9S), kstat_io(9S)
Writing Device Drivers
SunOS 5.10 4 Apr 1994 kstat_queue(9F)