Mercurial > illumos > illumos-gate
comparison usr/src/cmd/svc/startd/startd.c @ 14129:790945ad7848
3986 svc.startd dies in getutxent_frec()
3987 svc.startd dies in utmpx_postfork()
Reviewed by: Keith Wesolowski <keith.wesolowski@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Saso Kiselkov <skiselkov@gmail.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
author | Bryan Cantrill <bryan@joyent.com> |
---|---|
date | Sun, 04 Aug 2013 09:58:38 -0700 |
parents | da056fdd2d14 |
children |
comparison
equal
deleted
inserted
replaced
14128:615580eeb3d8 | 14129:790945ad7848 |
---|---|
769 | 769 |
770 if (configd_ctid != -1) | 770 if (configd_ctid != -1) |
771 log_framework(LOG_DEBUG, "Existing configd contract %ld; not " | 771 log_framework(LOG_DEBUG, "Existing configd contract %ld; not " |
772 "starting svc.configd\n", configd_ctid); | 772 "starting svc.configd\n", configd_ctid); |
773 | 773 |
774 /* | |
775 * Call utmpx_init() before creating the fork_configd() thread. | |
776 */ | |
777 utmpx_init(); | |
778 | |
774 (void) startd_thread_create(fork_configd_thread, (void *)configd_ctid); | 779 (void) startd_thread_create(fork_configd_thread, (void *)configd_ctid); |
775 | 780 |
776 /* | 781 /* |
777 * Await, if necessary, configd's initial arrival. | 782 * Await, if necessary, configd's initial arrival. |
778 */ | 783 */ |
784 &st->st_configd_live_lock); | 789 &st->st_configd_live_lock); |
785 assert(err == 0); | 790 assert(err == 0); |
786 } | 791 } |
787 MUTEX_UNLOCK(&st->st_configd_live_lock); | 792 MUTEX_UNLOCK(&st->st_configd_live_lock); |
788 | 793 |
789 utmpx_init(); | |
790 wait_init(); | 794 wait_init(); |
791 | 795 |
792 if (read_startd_config()) | 796 if (read_startd_config()) |
793 log_framework(LOG_INFO, "svc.configd unable to provide startd " | 797 log_framework(LOG_INFO, "svc.configd unable to provide startd " |
794 "optional settings\n"); | 798 "optional settings\n"); |