Lines Matching refs:ulog
29 ulog = log_ctx->ulog
34 ulog_sync_update(kdb_hlog_t *ulog, kdb_ent_header_t *upd)
39 if (ulog == NULL)
47 end = (((ulong_t)upd) + ulog->kdb_block +
62 ulog_sync_header(kdb_hlog_t *ulog)
68 if (msync((caddr_t)ulog, pagesize, MS_SYNC)) {
84 ulog_resize(kdb_hlog_t *ulog, uint32_t ulogentries, int ulogfd, uint_t recsize)
88 if (ulog == NULL)
102 (void) memset(ulog, 0, sizeof (kdb_hlog_t));
104 ulog->kdb_hmagic = KDB_HMAGIC;
105 ulog->db_version_num = KDB_VERSION;
106 ulog->kdb_state = KDB_STABLE;
107 ulog->kdb_block = new_block;
109 ulog_sync_header(ulog);
149 kdb_hlog_t *ulog = NULL;
168 if (recsize > ulog->kdb_block) {
169 if (retval = ulog_resize(ulog, ulogentries, ulogfd, recsize)) {
175 cur_sno = ulog->kdb_last_sno;
193 indx_log = (kdb_ent_header_t *)INDEX(ulog, i);
195 (void) memset(indx_log, 0, ulog->kdb_block);
203 ulog->kdb_state = KDB_UNSTABLE;
210 if (retval = ulog_sync_update(ulog, indx_log))
213 if (ulog->kdb_num < ulogentries)
214 ulog->kdb_num++;
216 ulog->kdb_last_sno = cur_sno;
217 ulog->kdb_last_time = ktime;
225 indx_log = (kdb_ent_header_t *)INDEX(ulog, i);
226 ulog->kdb_first_sno = indx_log->kdb_entry_sno;
227 ulog->kdb_first_time = indx_log->kdb_time;
229 ulog->kdb_first_sno = 1;
230 ulog->kdb_first_time = indx_log->kdb_time;
233 ulog_sync_header(ulog);
249 kdb_hlog_t *ulog = NULL;
257 indx_log = (kdb_ent_header_t *)INDEX(ulog, i);
261 ulog->kdb_state = KDB_STABLE;
263 if (retval = ulog_sync_update(ulog, indx_log))
266 ulog_sync_header(ulog);
275 ulog_finish_update_slave(kdb_hlog_t *ulog, kdb_last_t lastentry)
278 ulog->kdb_last_sno = lastentry.last_sno;
279 ulog->kdb_last_time = lastentry.last_time;
281 ulog_sync_header(ulog);
311 kdb_hlog_t *ulog = NULL;
405 ulog_finish_update_slave(ulog, errlast);
407 ulog_finish_update_slave(ulog, incr_ret->lastentry);
421 ulog_check(krb5_context context, kdb_hlog_t *ulog)
430 ulog->kdb_state = KDB_STABLE;
432 for (i = 0; i < ulog->kdb_num; i++) {
433 indx_log = (kdb_ent_header_t *)INDEX(ulog, i);
439 ulog->kdb_state = KDB_CORRUPT;
445 ulog->kdb_state = KDB_UNSTABLE;
501 retval = ulog_sync_update(ulog, indx_log);
505 ulog->kdb_state = KDB_STABLE;
516 ulog_sync_header(ulog);
537 kdb_hlog_t *ulog = NULL;
548 if (strlcat(logname, ".ulog", MAX_FILENAME) >= MAX_FILENAME)
593 ulog = (kdb_hlog_t *)mmap(0, ulog_filesize,
599 ulog = (kdb_hlog_t *)mmap(0, MAXLOGLEN,
603 if ((int)(ulog) == -1) {
616 log_ctx->ulog = ulog;
620 if (ulog->kdb_hmagic != KDB_HMAGIC) {
621 if (ulog->kdb_hmagic == 0) {
625 (void) memset(ulog, 0, sizeof (kdb_hlog_t));
627 ulog->kdb_hmagic = KDB_HMAGIC;
628 ulog->db_version_num = KDB_VERSION;
629 ulog->kdb_state = KDB_STABLE;
630 ulog->kdb_block = ULOG_BLOCK;
632 ulog_sync_header(ulog);
639 switch (ulog->kdb_state) {
645 retval = ulog_check(context, ulog);
666 * Reinit ulog if the log is being truncated or expanded after
669 if (ulog->kdb_num != ulogentries) {
670 if ((ulog->kdb_num != 0) &&
671 ((ulog->kdb_last_sno > ulog->kdb_num) ||
672 (ulog->kdb_num > ulogentries))) {
673 (void) memset(ulog, 0, sizeof (kdb_hlog_t));
675 ulog->kdb_hmagic = KDB_HMAGIC;
676 ulog->db_version_num = KDB_VERSION;
677 ulog->kdb_state = KDB_STABLE;
678 ulog->kdb_block = ULOG_BLOCK;
680 ulog_sync_header(ulog);
684 * Expand ulog if we have specified a greater size
686 if (ulog->kdb_num < ulogentries) {
687 ulog_filesize += ulogentries * ulog->kdb_block;
719 kdb_hlog_t *ulog = NULL;
726 * Check to make sure we don't have a corrupt ulog first.
728 if (ulog->kdb_state == KDB_CORRUPT) {
735 tdiff = timestamp.tv_sec - ulog->kdb_last_time.seconds;
752 * the client's ulog has just been created.
754 if ((last.last_sno > ulog->kdb_last_sno) ||
755 (last.last_sno < ulog->kdb_first_sno) ||
757 ulog_handle->lastentry.last_sno = ulog->kdb_last_sno;
761 } else if (last.last_sno <= ulog->kdb_last_sno) {
766 indx_log = (kdb_ent_header_t *)INDEX(ulog, indx);
777 if (last.last_sno == ulog->kdb_last_sno) {
783 count = ulog->kdb_last_sno - sno;
797 while (sno < ulog->kdb_last_sno) {
801 INDEX(ulog, indx);
826 ulog_handle->lastentry.last_sno = ulog->kdb_last_sno;
828 ulog->kdb_last_time.seconds;
830 ulog->kdb_last_time.useconds;