From owner-p4-projects@FreeBSD.ORG Sun Jan 16 14:45:08 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2C26E1065694; Sun, 16 Jan 2011 14:45:08 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D9DF3106566C for ; Sun, 16 Jan 2011 14:45:07 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id BF02F8FC1A for ; Sun, 16 Jan 2011 14:45:07 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0GEj73H048742 for ; Sun, 16 Jan 2011 14:45:07 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0GEj7H6048739 for perforce@freebsd.org; Sun, 16 Jan 2011 14:45:07 GMT (envelope-from trasz@freebsd.org) Date: Sun, 16 Jan 2011 14:45:07 GMT Message-Id: <201101161445.p0GEj7H6048739@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187860 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jan 2011 14:45:08 -0000 http://p4web.freebsd.org/@@187860?ac=10 Change 187860 by trasz@trasz_victim on 2011/01/16 14:44:46 When credential changes, the per-process list of applicable RCTL rules needs to be updated, which requires memory allocation. We can't return error there, so M_NOWAIT cannot be used. Rework this piece of code so that we use M_WAITOK. It cannot be called with proc lock held, so it cannot be called from change_cred(). Thus, retire change_cred() altogether. This was probably the last large known problem with rctl. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/fs/unionfs/union_subr.c#12 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#53 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_exec.c#23 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_jail.c#31 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_loginclass.c#26 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_prot.c#32 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#9 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/container.h#21 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#3 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/ucred.h#11 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/fs/unionfs/union_subr.c#12 (text+ko) ==== @@ -775,6 +775,11 @@ /* Authority change to root */ rootinfo = uifind((uid_t)0); cred = crdup(cnp->cn_cred); + /* + * The calls to chgproccnt() are needed to compensate for change_ruid() + * calling chgproccnt(). + */ + chgproccnt(cred->cr_ruidinfo, 1, 0); change_euid(cred, rootinfo); change_ruid(cred, rootinfo); change_svuid(cred, (uid_t)0); @@ -824,6 +829,7 @@ unionfs_mkshadowdir_abort: cnp->cn_cred = credbk; + chgproccnt(cred->cr_ruidinfo, -1, 0); crfree(cred); return (error); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#53 (text+ko) ==== @@ -623,24 +623,25 @@ } /* - * Called before credentials change, to move resource utilisation + * Called after credentials change, to move resource utilisation * between containers. */ void -container_proc_ucred_changing(struct proc *p, struct ucred *newcred) +container_proc_ucred_changed(struct proc *p, struct ucred *oldcred, + struct ucred *newcred) { struct uidinfo *olduip, *newuip; struct loginclass *oldlc, *newlc; struct prison *oldpr, *newpr, *pr; - PROC_LOCK_ASSERT(p, MA_OWNED); + PROC_LOCK_ASSERT(p, MA_NOTOWNED); newuip = newcred->cr_ruidinfo; - olduip = p->p_ucred->cr_ruidinfo; + olduip = oldcred->cr_ruidinfo; newlc = newcred->cr_loginclass; - oldlc = p->p_ucred->cr_loginclass; + oldlc = oldcred->cr_loginclass; newpr = newcred->cr_prison; - oldpr = p->p_ucred->cr_prison; + oldpr = oldcred->cr_prison; mtx_lock(&container_lock); if (newuip != olduip) { @@ -660,7 +661,7 @@ mtx_unlock(&container_lock); #ifdef RCTL - rctl_proc_ucred_changing(p, newcred); + rctl_proc_ucred_changed(p, newcred); #endif } ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_exec.c#23 (text+ko) ==== @@ -698,7 +698,7 @@ */ change_svuid(newcred, newcred->cr_uid); change_svgid(newcred, newcred->cr_gid); - change_cred(p, newcred); + p->p_ucred = newcred; newcred = NULL; } else { if (oldcred->cr_uid == oldcred->cr_ruid && @@ -720,7 +720,7 @@ oldcred->cr_svgid != oldcred->cr_gid) { change_svuid(newcred, newcred->cr_uid); change_svgid(newcred, newcred->cr_gid); - change_cred(p, newcred); + p->p_ucred = newcred; newcred = NULL; } } ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_jail.c#31 (text+ko) ==== @@ -2294,8 +2294,11 @@ setsugid(p); crcopy(newcred, oldcred); newcred->cr_prison = pr; - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); +#ifdef CONTAINERS + container_proc_ucred_changed(p, oldcred, newcred); +#endif crfree(oldcred); prison_deref(ppr, PD_DEREF | PD_DEUREF); return (0); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_loginclass.c#26 (text+ko) ==== @@ -202,8 +202,11 @@ PROC_LOCK(p); oldcred = crcopysafe(p, newcred); newcred->cr_loginclass = newlc; - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); +#ifdef CONTAINERS + container_proc_ucred_changed(p, oldcred, newcred); +#endif loginclass_release(oldcred->cr_loginclass); crfree(oldcred); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_prot.c#32 (text+ko) ==== @@ -578,8 +578,11 @@ change_euid(newcred, uip); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); +#ifdef CONTAINERS + container_proc_ucred_changed(p, oldcred, newcred); +#endif uifree(uip); crfree(oldcred); return (0); @@ -634,7 +637,7 @@ change_euid(newcred, euip); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); uifree(euip); crfree(oldcred); @@ -734,7 +737,7 @@ change_egid(newcred, gid); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); crfree(oldcred); return (0); @@ -780,7 +783,7 @@ change_egid(newcred, egid); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); crfree(oldcred); return (0); @@ -853,7 +856,7 @@ crsetgroups_locked(newcred, ngrp, groups); } setsugid(p); - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); crfree(oldcred); return (0); @@ -916,8 +919,11 @@ change_svuid(newcred, newcred->cr_uid); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); +#ifdef CONTAINERS + container_proc_ucred_changed(p, oldcred, newcred); +#endif uifree(ruip); uifree(euip); crfree(oldcred); @@ -980,7 +986,7 @@ change_svgid(newcred, newcred->cr_groups[0]); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); crfree(oldcred); return (0); @@ -1054,8 +1060,11 @@ change_svuid(newcred, suid); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); +#ifdef CONTAINERS + container_proc_ucred_changed(p, oldcred, newcred); +#endif uifree(ruip); uifree(euip); crfree(oldcred); @@ -1130,7 +1139,7 @@ change_svgid(newcred, sgid); setsugid(p); } - change_cred(p, newcred); + p->p_ucred = newcred; PROC_UNLOCK(p); crfree(oldcred); return (0); @@ -2116,26 +2125,6 @@ p->p_stops = 0; } -/* - * Assign new credential to the process, fixing up RCTL accounting - * as neccessary. - */ -void -change_cred(struct proc *p, struct ucred *newcred) -{ - PROC_LOCK_ASSERT(p, MA_OWNED); - - if (p->p_ucred->cr_ruidinfo != newcred->cr_ruidinfo) { - chgproccnt(p->p_ucred->cr_ruidinfo, -1, 0); - chgproccnt(newcred->cr_ruidinfo, 1, 0); - } - -#ifdef CONTAINERS - container_proc_ucred_changing(p, newcred); -#endif - p->p_ucred = newcred; -} - /*- * Change a process's effective uid. * Side effects: newcred->cr_uid and newcred->cr_uidinfo will be modified. @@ -2177,10 +2166,12 @@ change_ruid(struct ucred *newcred, struct uidinfo *ruip) { + (void)chgproccnt(newcred->cr_ruidinfo, -1, 0); newcred->cr_ruid = ruip->ui_uid; uihold(ruip); uifree(newcred->cr_ruidinfo); newcred->cr_ruidinfo = ruip; + (void)chgproccnt(newcred->cr_ruidinfo, 1, 0); } /*- ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#9 (text+ko) ==== @@ -1414,82 +1414,145 @@ return (error); } +/* + * Update RCTL rule list after credential change. + */ void -rctl_proc_ucred_changing(struct proc *p, struct ucred *newcred) +rctl_proc_ucred_changed(struct proc *p, struct ucred *newcred) { - int error; - struct rctl_rule_link *link; - struct uidinfo *olduip, *newuip; - struct loginclass *oldlc, *newlc; - struct prison *oldpr, *newpr; + int rulecnt, i; + struct rctl_rule_link *link, *newlink; + struct uidinfo *newuip; + struct loginclass *newlc; + struct prison *newpr; + LIST_HEAD(, rctl_rule_link) newrules; - PROC_LOCK_ASSERT(p, MA_OWNED); - newuip = newcred->cr_ruidinfo; - olduip = p->p_ucred->cr_ruidinfo; newlc = newcred->cr_loginclass; - oldlc = p->p_ucred->cr_loginclass; newpr = newcred->cr_prison; - oldpr = p->p_ucred->cr_prison; + + LIST_INIT(&newrules); +again: /* - * Remove rules that are no longer applicable with the new ucred. + * First, count the rules that apply to the process with new + * credentials. */ - rw_wlock(&rctl_lock); + rulecnt = 0; + rw_rlock(&rctl_lock); LIST_FOREACH(link, &p->p_container.c_rule_links, rctl_next) { - switch (link->rctl_rule->hr_subject_type) { - case RCTL_SUBJECT_TYPE_PROCESS: - continue; - case RCTL_SUBJECT_TYPE_USER: - if (newuip == olduip) - continue; - break; - case RCTL_SUBJECT_TYPE_LOGINCLASS: - if (newlc == oldlc) - continue; - break; - case RCTL_SUBJECT_TYPE_JAIL: - if (newpr == oldpr) - continue; - break; - default: - panic("rctl_proc_ucred_changing: unknown subject %d", - link->rctl_rule->hr_subject_type); - } + if (link->rctl_rule->hr_subject_type == + RCTL_SUBJECT_TYPE_PROCESS) + rulecnt++; + } + LIST_FOREACH(link, &newuip->ui_container.c_rule_links, rctl_next) + rulecnt++; + LIST_FOREACH(link, &newlc->lc_container.c_rule_links, rctl_next) + rulecnt++; + LIST_FOREACH(link, &newpr->pr_container.c_rule_links, rctl_next) + rulecnt++; + rw_runlock(&rctl_lock); - LIST_REMOVE(link, rctl_next); - rctl_rule_release(link->rctl_rule); - uma_zfree(rctl_rule_link_zone, link); + /* + * Create temporary list. We've dropped the rctl_lock in order + * to use M_WAITOK. + */ + for (i = 0; i < rulecnt; i++) { + newlink = uma_zalloc(rctl_rule_link_zone, M_WAITOK); + newlink->rctl_rule = NULL; + LIST_INSERT_HEAD(&newrules, newlink, rctl_next); } - rw_wunlock(&rctl_lock); - + + newlink = LIST_FIRST(&newrules); + /* - * Add rules for the new ucred and move between containers where applicable. + * Assign rules to the newly allocated list entries. */ - if (newuip != olduip) { - rw_wlock(&rctl_lock); - LIST_FOREACH(link, &newuip->ui_container.c_rule_links, rctl_next) { - error = rctl_container_add_rule_locked(&p->p_container, link->rctl_rule); - KASSERT(error == 0, ("XXX: better error handling needed")); + rw_wlock(&rctl_lock); + LIST_FOREACH(link, &p->p_container.c_rule_links, rctl_next) { + if (link->rctl_rule->hr_subject_type == + RCTL_SUBJECT_TYPE_PROCESS) { + if (newlink == NULL) + goto goaround; + rctl_rule_acquire(link->rctl_rule); + newlink->rctl_rule = link->rctl_rule; + newlink = LIST_NEXT(newlink, rctl_next); + rulecnt--; } - rw_wunlock(&rctl_lock); + } + + LIST_FOREACH(link, &newuip->ui_container.c_rule_links, rctl_next) { + if (newlink == NULL) + goto goaround; + rctl_rule_acquire(link->rctl_rule); + newlink->rctl_rule = link->rctl_rule; + newlink = LIST_NEXT(newlink, rctl_next); + rulecnt--; + } + + LIST_FOREACH(link, &newlc->lc_container.c_rule_links, rctl_next) { + if (newlink == NULL) + goto goaround; + rctl_rule_acquire(link->rctl_rule); + newlink->rctl_rule = link->rctl_rule; + newlink = LIST_NEXT(newlink, rctl_next); + rulecnt--; + } + + LIST_FOREACH(link, &newpr->pr_container.c_rule_links, rctl_next) { + if (newlink == NULL) + goto goaround; + rctl_rule_acquire(link->rctl_rule); + newlink->rctl_rule = link->rctl_rule; + newlink = LIST_NEXT(newlink, rctl_next); + rulecnt--; } - if (newlc != oldlc) { - rw_wlock(&rctl_lock); - LIST_FOREACH(link, &newlc->lc_container.c_rule_links, rctl_next) { - error = rctl_container_add_rule_locked(&p->p_container, link->rctl_rule); - KASSERT(error == 0, ("XXX: better error handling needed")); + + if (rulecnt == 0) { + /* + * Free the old rule list. + */ + while (!LIST_EMPTY(&p->p_container.c_rule_links)) { + link = LIST_FIRST(&p->p_container.c_rule_links); + LIST_REMOVE(link, rctl_next); + rctl_rule_release(link->rctl_rule); + uma_zfree(rctl_rule_link_zone, link); + } + + /* + * Replace lists and we're done. + * + * XXX: Is there any way to switch list heads instead + * of iterating here? + */ + while (!LIST_EMPTY(&newrules)) { + newlink = LIST_FIRST(&newrules); + LIST_REMOVE(newlink, rctl_next); + LIST_INSERT_HEAD(&p->p_container.c_rule_links, + newlink, rctl_next); } + rw_wunlock(&rctl_lock); + + return; } - if (newpr != oldpr) { - rw_wlock(&rctl_lock); - LIST_FOREACH(link, &newpr->pr_container.c_rule_links, rctl_next) { - error = rctl_container_add_rule_locked(&p->p_container, link->rctl_rule); - KASSERT(error == 0, ("XXX: better error handling needed")); - } - rw_wunlock(&rctl_lock); + +goaround: + rw_wunlock(&rctl_lock); + + /* + * Rule list changed while we were not holding the rctl_lock. + * Free the new list and try again. + */ + while (!LIST_EMPTY(&newrules)) { + newlink = LIST_FIRST(&newrules); + LIST_REMOVE(newlink, rctl_next); + if (newlink->rctl_rule != NULL) + rctl_rule_release(newlink->rctl_rule); + uma_zfree(rctl_rule_link_zone, newlink); } + + goto again; } /* ==== //depot/projects/soc2009/trasz_limits/sys/sys/container.h#21 (text+ko) ==== @@ -109,6 +109,7 @@ int container_proc_fork(struct proc *parent, struct proc *child); void container_proc_exit(struct proc *p); -void container_proc_ucred_changing(struct proc *p, struct ucred *newcred); +void container_proc_ucred_changed(struct proc *p, struct ucred *oldcred, + struct ucred *newcred); #endif /* !_CONTAINER_H_ */ ==== //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#3 (text+ko) ==== @@ -110,7 +110,7 @@ #ifdef _KERNEL -void rctl_proc_ucred_changing(struct proc *p, struct ucred *newcred); +void rctl_proc_ucred_changed(struct proc *p, struct ucred *newcred); struct rctl_rule *rctl_rule_alloc(int flags); struct rctl_rule *rctl_rule_duplicate(const struct rctl_rule *rule, int flags); ==== //depot/projects/soc2009/trasz_limits/sys/sys/ucred.h#11 (text+ko) ==== @@ -91,7 +91,6 @@ struct thread; struct proc; -void change_cred(struct proc *p, struct ucred *newcred); void change_egid(struct ucred *newcred, gid_t egid); void change_euid(struct ucred *newcred, struct uidinfo *euip); void change_rgid(struct ucred *newcred, gid_t rgid); From owner-p4-projects@FreeBSD.ORG Sun Jan 16 14:51:41 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3A4E31065672; Sun, 16 Jan 2011 14:51:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F1266106566B for ; Sun, 16 Jan 2011 14:51:40 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id DEA138FC0C for ; Sun, 16 Jan 2011 14:51:40 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0GEpeB6050620 for ; Sun, 16 Jan 2011 14:51:40 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0GEpejR050617 for perforce@freebsd.org; Sun, 16 Jan 2011 14:51:40 GMT (envelope-from trasz@freebsd.org) Date: Sun, 16 Jan 2011 14:51:40 GMT Message-Id: <201101161451.p0GEpejR050617@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187861 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jan 2011 14:51:41 -0000 http://p4web.freebsd.org/@@187861?ac=10 Change 187861 by trasz@trasz_victim on 2011/01/16 14:50:56 Update TODO. Affected files ... .. //depot/projects/soc2009/trasz_limits/TODO#39 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/TODO#39 (text+ko) ==== @@ -32,8 +32,6 @@ level containers could overflow), and atomic(9) doesn't support 64 bit values on 32 bit platforms. - - Rethink HRL locking. - - Consider replacing proc pointer with thread pointer in rusage_add(9) et al. In most cases caller uses 'td->td_proc' anyway, and passing thread would allow the HRL code to send a signal to the offending thread instead of the @@ -102,7 +100,7 @@ HRL-specific issues: - - Reconsider setrlimit(2) handling. + - Reconsider bringing back setrlimit(2) handling. - Reconsider bringing back per-group limits. @@ -112,7 +110,3 @@ if one adds rule with 'sig*' action, the signal will be sent to the parent instead of the child. - - Add sorting to hrl(8). - - - Should priv(9) checking be done by HRL, or by the callers? - From owner-p4-projects@FreeBSD.ORG Sun Jan 16 17:48:01 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B556D1065670; Sun, 16 Jan 2011 17:48:01 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 777BF106566B for ; Sun, 16 Jan 2011 17:48:01 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 62B2F8FC12 for ; Sun, 16 Jan 2011 17:48:01 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0GHm1LT087212 for ; Sun, 16 Jan 2011 17:48:01 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0GHm1ZB087209 for perforce@freebsd.org; Sun, 16 Jan 2011 17:48:01 GMT (envelope-from trasz@freebsd.org) Date: Sun, 16 Jan 2011 17:48:01 GMT Message-Id: <201101161748.p0GHm1ZB087209@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187864 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jan 2011 17:48:02 -0000 http://p4web.freebsd.org/@@187864?ac=10 Change 187864 by trasz@trasz_victim on 2011/01/16 17:47:36 Fix prefixes for structure element names, broken after last renaming. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#54 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#10 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#4 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#54 (text+ko) ==== @@ -474,7 +474,7 @@ return (UINT64_MAX); #endif } - + /* * Decrease allocation of 'resource' by 'amount' for process 'p'. */ ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#10 (text+ko) ==== @@ -79,8 +79,8 @@ * with uidinfo for user X, and to each process of that user. */ struct rctl_rule_link { - LIST_ENTRY(rctl_rule_link) rctl_next; - struct rctl_rule *rctl_rule; + LIST_ENTRY(rctl_rule_link) rrl_next; + struct rctl_rule *rrl_rule; }; struct dict { @@ -216,27 +216,27 @@ rw_assert(&rctl_lock, RA_LOCKED); - resource = rule->hr_resource; - switch (rule->hr_per) { + resource = rule->rr_resource; + switch (rule->rr_per) { case RCTL_SUBJECT_TYPE_PROCESS: - available = rule->hr_amount - + available = rule->rr_amount - p->p_container.c_resources[resource]; break; case RCTL_SUBJECT_TYPE_USER: - available = rule->hr_amount - + available = rule->rr_amount - cred->cr_ruidinfo->ui_container.c_resources[resource]; break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - available = rule->hr_amount - + available = rule->rr_amount - cred->cr_loginclass->lc_container.c_resources[resource]; break; case RCTL_SUBJECT_TYPE_JAIL: - available = rule->hr_amount - + available = rule->rr_amount - cred->cr_prison->pr_container.c_resources[resource]; break; default: panic("rctl_compute_available: unknown per %d", - rule->hr_per); + rule->rr_per); } return (available); @@ -263,8 +263,8 @@ */ if (available < 0) { #ifdef notyet - KASSERT(rule->hr_action != RCTL_ACTION_DENY || - !container_resource_deniable(rule->hr_resource), + KASSERT(rule->rr_action != RCTL_ACTION_DENY || + !container_resource_deniable(rule->rr_resource), ("rctl_would_exceed: deny rule already exceeded")); #endif return (0); @@ -295,14 +295,14 @@ * There may be more than one matching rule; go through all of them. * Denial should be done last, after logging and sending signals. */ - LIST_FOREACH(link, &p->p_container.c_rule_links, rctl_next) { - rule = link->rctl_rule; - if (rule->hr_resource != resource) + LIST_FOREACH(link, &p->p_container.c_rule_links, rrl_next) { + rule = link->rrl_rule; + if (rule->rr_resource != resource) continue; if (!rctl_would_exceed(p, rule, amount)) continue; - switch (rule->hr_action) { + switch (rule->rr_action) { case RCTL_ACTION_DENY: should_deny = 1; continue; @@ -344,7 +344,7 @@ continue; default: panic("rctl_enforce_proc: unknown action %d", - rule->hr_action); + rule->rr_action); } } @@ -374,14 +374,14 @@ * There may be more than one matching rule; go through all of them. * Denial should be done last, after logging and sending signals. */ - LIST_FOREACH(link, &p->p_container.c_rule_links, rctl_next) { - rule = link->rctl_rule; - if (rule->hr_resource != resource) + LIST_FOREACH(link, &p->p_container.c_rule_links, rrl_next) { + rule = link->rrl_rule; + if (rule->rr_resource != resource) continue; - if (rule->hr_action != RCTL_ACTION_DENY) + if (rule->rr_action != RCTL_ACTION_DENY) continue; - if (rule->hr_amount < amount) - amount = rule->hr_amount; + if (rule->rr_amount < amount) + amount = rule->rr_amount; } rw_runlock(&rctl_lock); @@ -393,58 +393,58 @@ rctl_rule_matches(const struct rctl_rule *rule, const struct rctl_rule *filter) { - if (filter->hr_subject_type != RCTL_SUBJECT_TYPE_UNDEFINED) { - if (rule->hr_subject_type != filter->hr_subject_type) + if (filter->rr_subject_type != RCTL_SUBJECT_TYPE_UNDEFINED) { + if (rule->rr_subject_type != filter->rr_subject_type) return (0); - switch (filter->hr_subject_type) { + switch (filter->rr_subject_type) { case RCTL_SUBJECT_TYPE_PROCESS: - if (filter->hr_subject.hs_proc != NULL && - rule->hr_subject.hs_proc != - filter->hr_subject.hs_proc) + if (filter->rr_subject.rs_proc != NULL && + rule->rr_subject.rs_proc != + filter->rr_subject.rs_proc) return (0); break; case RCTL_SUBJECT_TYPE_USER: - if (filter->hr_subject.hs_uip != NULL && - rule->hr_subject.hs_uip != - filter->hr_subject.hs_uip) + if (filter->rr_subject.rs_uip != NULL && + rule->rr_subject.rs_uip != + filter->rr_subject.rs_uip) return (0); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - if (filter->hr_subject.hs_loginclass != NULL && - rule->hr_subject.hs_loginclass != - filter->hr_subject.hs_loginclass) + if (filter->rr_subject.hr_loginclass != NULL && + rule->rr_subject.hr_loginclass != + filter->rr_subject.hr_loginclass) return (0); break; case RCTL_SUBJECT_TYPE_JAIL: - if (filter->hr_subject.hs_prison != NULL && - rule->hr_subject.hs_prison != - filter->hr_subject.hs_prison) + if (filter->rr_subject.rs_prison != NULL && + rule->rr_subject.rs_prison != + filter->rr_subject.rs_prison) return (0); break; default: panic("rctl_rule_matches: unknown subject type %d", - filter->hr_subject_type); + filter->rr_subject_type); } } - if (filter->hr_resource != RUSAGE_UNDEFINED) { - if (rule->hr_resource != filter->hr_resource) + if (filter->rr_resource != RUSAGE_UNDEFINED) { + if (rule->rr_resource != filter->rr_resource) return (0); } - if (filter->hr_action != RCTL_ACTION_UNDEFINED) { - if (rule->hr_action != filter->hr_action) + if (filter->rr_action != RCTL_ACTION_UNDEFINED) { + if (rule->rr_action != filter->rr_action) return (0); } - if (filter->hr_amount != RCTL_AMOUNT_UNDEFINED) { - if (rule->hr_amount != filter->hr_amount) + if (filter->rr_amount != RCTL_AMOUNT_UNDEFINED) { + if (rule->rr_amount != filter->rr_amount) return (0); } - if (filter->hr_per != RCTL_SUBJECT_TYPE_UNDEFINED) { - if (rule->hr_per != filter->hr_per) + if (filter->rr_per != RCTL_SUBJECT_TYPE_UNDEFINED) { + if (rule->rr_per != filter->rr_per) return (0); } @@ -511,10 +511,10 @@ rctl_rule_acquire(rule); link = uma_zalloc(rctl_rule_link_zone, M_WAITOK); - link->rctl_rule = rule; + link->rrl_rule = rule; rw_wlock(&rctl_lock); - LIST_INSERT_HEAD(&container->c_rule_links, link, rctl_next); + LIST_INSERT_HEAD(&container->c_rule_links, link, rrl_next); rw_wunlock(&rctl_lock); } @@ -530,9 +530,9 @@ if (link == NULL) return (ENOMEM); rctl_rule_acquire(rule); - link->rctl_rule = rule; + link->rrl_rule = rule; - LIST_INSERT_HEAD(&container->c_rule_links, link, rctl_next); + LIST_INSERT_HEAD(&container->c_rule_links, link, rrl_next); return (0); } @@ -550,12 +550,12 @@ rw_assert(&rctl_lock, RA_WLOCKED); - LIST_FOREACH_SAFE(link, &container->c_rule_links, rctl_next, linktmp) { - if (!rctl_rule_matches(link->rctl_rule, filter)) + LIST_FOREACH_SAFE(link, &container->c_rule_links, rrl_next, linktmp) { + if (!rctl_rule_matches(link->rrl_rule, filter)) continue; - LIST_REMOVE(link, rctl_next); - rctl_rule_release(link->rctl_rule); + LIST_REMOVE(link, rrl_next); + rctl_rule_release(link->rrl_rule); uma_zfree(rctl_rule_link_zone, link); removed++; } @@ -566,25 +566,25 @@ rctl_rule_acquire_subject(struct rctl_rule *rule) { - switch (rule->hr_subject_type) { + switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_UNDEFINED: case RCTL_SUBJECT_TYPE_PROCESS: break; case RCTL_SUBJECT_TYPE_USER: - if (rule->hr_subject.hs_uip != NULL) - uihold(rule->hr_subject.hs_uip); + if (rule->rr_subject.rs_uip != NULL) + uihold(rule->rr_subject.rs_uip); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - if (rule->hr_subject.hs_loginclass != NULL) - loginclass_acquire(rule->hr_subject.hs_loginclass); + if (rule->rr_subject.hr_loginclass != NULL) + loginclass_acquire(rule->rr_subject.hr_loginclass); break; case RCTL_SUBJECT_TYPE_JAIL: - if (rule->hr_subject.hs_loginclass != NULL) - prison_hold(rule->hr_subject.hs_prison); + if (rule->rr_subject.hr_loginclass != NULL) + prison_hold(rule->rr_subject.rs_prison); break; default: panic("rctl_rule_acquire_subject: unknown subject type %d", - rule->hr_subject_type); + rule->rr_subject_type); } } @@ -592,25 +592,25 @@ rctl_rule_release_subject(struct rctl_rule *rule) { - switch (rule->hr_subject_type) { + switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_UNDEFINED: case RCTL_SUBJECT_TYPE_PROCESS: break; case RCTL_SUBJECT_TYPE_USER: - if (rule->hr_subject.hs_uip != NULL) - uifree(rule->hr_subject.hs_uip); + if (rule->rr_subject.rs_uip != NULL) + uifree(rule->rr_subject.rs_uip); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - if (rule->hr_subject.hs_loginclass != NULL) - loginclass_release(rule->hr_subject.hs_loginclass); + if (rule->rr_subject.hr_loginclass != NULL) + loginclass_release(rule->rr_subject.hr_loginclass); break; case RCTL_SUBJECT_TYPE_JAIL: - if (rule->hr_subject.hs_prison != NULL) - prison_free(rule->hr_subject.hs_prison); + if (rule->rr_subject.rs_prison != NULL) + prison_free(rule->rr_subject.rs_prison); break; default: panic("rctl_rule_release_subject: unknown subject type %d", - rule->hr_subject_type); + rule->rr_subject_type); } } @@ -622,16 +622,16 @@ rule = uma_zalloc(rctl_rule_zone, flags); if (rule == NULL) return (NULL); - rule->hr_subject_type = RCTL_SUBJECT_TYPE_UNDEFINED; - rule->hr_subject.hs_proc = NULL; - rule->hr_subject.hs_uip = NULL; - rule->hr_subject.hs_loginclass = NULL; - rule->hr_subject.hs_prison = NULL; - rule->hr_per = RCTL_SUBJECT_TYPE_UNDEFINED; - rule->hr_resource = RUSAGE_UNDEFINED; - rule->hr_action = RCTL_ACTION_UNDEFINED; - rule->hr_amount = RCTL_AMOUNT_UNDEFINED; - refcount_init(&rule->hr_refcount, 1); + rule->rr_subject_type = RCTL_SUBJECT_TYPE_UNDEFINED; + rule->rr_subject.rs_proc = NULL; + rule->rr_subject.rs_uip = NULL; + rule->rr_subject.hr_loginclass = NULL; + rule->rr_subject.rs_prison = NULL; + rule->rr_per = RCTL_SUBJECT_TYPE_UNDEFINED; + rule->rr_resource = RUSAGE_UNDEFINED; + rule->rr_action = RCTL_ACTION_UNDEFINED; + rule->rr_amount = RCTL_AMOUNT_UNDEFINED; + refcount_init(&rule->rr_refcount, 1); return (rule); } @@ -644,16 +644,16 @@ copy = uma_zalloc(rctl_rule_zone, flags); if (copy == NULL) return (NULL); - copy->hr_subject_type = rule->hr_subject_type; - copy->hr_subject.hs_proc = rule->hr_subject.hs_proc; - copy->hr_subject.hs_uip = rule->hr_subject.hs_uip; - copy->hr_subject.hs_loginclass = rule->hr_subject.hs_loginclass; - copy->hr_subject.hs_prison = rule->hr_subject.hs_prison; - copy->hr_per = rule->hr_per; - copy->hr_resource = rule->hr_resource; - copy->hr_action = rule->hr_action; - copy->hr_amount = rule->hr_amount; - refcount_init(©->hr_refcount, 1); + copy->rr_subject_type = rule->rr_subject_type; + copy->rr_subject.rs_proc = rule->rr_subject.rs_proc; + copy->rr_subject.rs_uip = rule->rr_subject.rs_uip; + copy->rr_subject.hr_loginclass = rule->rr_subject.hr_loginclass; + copy->rr_subject.rs_prison = rule->rr_subject.rs_prison; + copy->rr_per = rule->rr_per; + copy->rr_resource = rule->rr_resource; + copy->rr_action = rule->rr_action; + copy->rr_amount = rule->rr_amount; + refcount_init(©->rr_refcount, 1); rctl_rule_acquire_subject(copy); return (copy); @@ -663,18 +663,18 @@ rctl_rule_acquire(struct rctl_rule *rule) { - KASSERT(rule->hr_refcount > 0, ("rule->hr_refcount > 0")); + KASSERT(rule->rr_refcount > 0, ("rule->rr_refcount > 0")); - refcount_acquire(&rule->hr_refcount); + refcount_acquire(&rule->rr_refcount); } void rctl_rule_release(struct rctl_rule *rule) { - KASSERT(rule->hr_refcount > 0, ("rule->hr_refcount > 0")); + KASSERT(rule->rr_refcount > 0, ("rule->rr_refcount > 0")); - if (refcount_release(&rule->hr_refcount)) { + if (refcount_release(&rule->rr_refcount)) { rctl_rule_release_subject(rule); uma_zfree(rctl_rule_zone, rule); } @@ -684,36 +684,36 @@ rctl_rule_fully_specified(const struct rctl_rule *rule) { - switch (rule->hr_subject_type) { + switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_UNDEFINED: return (0); case RCTL_SUBJECT_TYPE_PROCESS: - if (rule->hr_subject.hs_proc == NULL) + if (rule->rr_subject.rs_proc == NULL) return (0); break; case RCTL_SUBJECT_TYPE_USER: - if (rule->hr_subject.hs_uip == NULL) + if (rule->rr_subject.rs_uip == NULL) return (0); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - if (rule->hr_subject.hs_loginclass == NULL) + if (rule->rr_subject.hr_loginclass == NULL) return (0); break; case RCTL_SUBJECT_TYPE_JAIL: - if (rule->hr_subject.hs_prison == NULL) + if (rule->rr_subject.rs_prison == NULL) return (0); break; default: panic("rctl_rule_fully_specified: unknown subject type %d", - rule->hr_subject_type); + rule->rr_subject_type); } - if (rule->hr_resource == RUSAGE_UNDEFINED) + if (rule->rr_resource == RUSAGE_UNDEFINED) return (0); - if (rule->hr_action == RCTL_ACTION_UNDEFINED) + if (rule->rr_action == RCTL_ACTION_UNDEFINED) return (0); - if (rule->hr_amount == RCTL_AMOUNT_UNDEFINED) + if (rule->rr_amount == RCTL_AMOUNT_UNDEFINED) return (0); - if (rule->hr_per == RCTL_SUBJECT_TYPE_UNDEFINED) + if (rule->rr_per == RCTL_SUBJECT_TYPE_UNDEFINED) return (0); return (1); @@ -738,95 +738,95 @@ perstr = rulestr; if (subjectstr == NULL || subjectstr[0] == '\0') - rule->hr_subject_type = RCTL_SUBJECT_TYPE_UNDEFINED; + rule->rr_subject_type = RCTL_SUBJECT_TYPE_UNDEFINED; else { - error = str2value(subjectstr, &rule->hr_subject_type, subjectnames); + error = str2value(subjectstr, &rule->rr_subject_type, subjectnames); if (error != 0) goto out; } if (subject_idstr == NULL || subject_idstr[0] == '\0') { - rule->hr_subject.hs_proc = NULL; - rule->hr_subject.hs_uip = NULL; - rule->hr_subject.hs_loginclass = NULL; - rule->hr_subject.hs_prison = NULL; + rule->rr_subject.rs_proc = NULL; + rule->rr_subject.rs_uip = NULL; + rule->rr_subject.hr_loginclass = NULL; + rule->rr_subject.rs_prison = NULL; } else { /* * Loginclasses don't have any numerical ID's. */ - if (rule->hr_subject_type != RCTL_SUBJECT_TYPE_LOGINCLASS) { + if (rule->rr_subject_type != RCTL_SUBJECT_TYPE_LOGINCLASS) { error = str2id(subject_idstr, &id); if (error != 0) goto out; } - switch (rule->hr_subject_type) { + switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_UNDEFINED: error = EINVAL; goto out; case RCTL_SUBJECT_TYPE_PROCESS: sx_assert(&allproc_lock, SA_LOCKED); - rule->hr_subject.hs_proc = pfind(id); - if (rule->hr_subject.hs_proc == NULL) { + rule->rr_subject.rs_proc = pfind(id); + if (rule->rr_subject.rs_proc == NULL) { error = ESRCH; goto out; } - PROC_UNLOCK(rule->hr_subject.hs_proc); + PROC_UNLOCK(rule->rr_subject.rs_proc); break; case RCTL_SUBJECT_TYPE_USER: - rule->hr_subject.hs_uip = uifind(id); + rule->rr_subject.rs_uip = uifind(id); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - rule->hr_subject.hs_loginclass = loginclass_find(subject_idstr); + rule->rr_subject.hr_loginclass = loginclass_find(subject_idstr); break; case RCTL_SUBJECT_TYPE_JAIL: sx_slock(&allprison_lock); - rule->hr_subject.hs_prison = prison_find(id); - if (rule->hr_subject.hs_prison == NULL) { + rule->rr_subject.rs_prison = prison_find(id); + if (rule->rr_subject.rs_prison == NULL) { sx_sunlock(&allprison_lock); error = ESRCH; goto out; } - prison_hold_locked(rule->hr_subject.hs_prison); + prison_hold_locked(rule->rr_subject.rs_prison); /* prison_find() returns with mutex held. */ - mtx_unlock(&rule->hr_subject.hs_prison->pr_mtx); + mtx_unlock(&rule->rr_subject.rs_prison->pr_mtx); sx_sunlock(&allprison_lock); break; default: panic("rctl_rule_from_string: unknown subject type %d", - rule->hr_subject_type); + rule->rr_subject_type); } } if (resourcestr == NULL || resourcestr[0] == '\0') - rule->hr_resource = RUSAGE_UNDEFINED; + rule->rr_resource = RUSAGE_UNDEFINED; else { - error = str2value(resourcestr, &rule->hr_resource, + error = str2value(resourcestr, &rule->rr_resource, resourcenames); if (error != 0) goto out; } if (actionstr == NULL || actionstr[0] == '\0') - rule->hr_action = RCTL_ACTION_UNDEFINED; + rule->rr_action = RCTL_ACTION_UNDEFINED; else { - error = str2value(actionstr, &rule->hr_action, actionnames); + error = str2value(actionstr, &rule->rr_action, actionnames); if (error != 0) goto out; } if (amountstr == NULL || amountstr[0] == '\0') - rule->hr_amount = RCTL_AMOUNT_UNDEFINED; + rule->rr_amount = RCTL_AMOUNT_UNDEFINED; else { - error = str2int64(amountstr, &rule->hr_amount); + error = str2int64(amountstr, &rule->rr_amount); if (error != 0) goto out; } if (perstr == NULL || perstr[0] == '\0') - rule->hr_per = RCTL_SUBJECT_TYPE_UNDEFINED; + rule->rr_per = RCTL_SUBJECT_TYPE_UNDEFINED; else { - error = str2value(perstr, &rule->hr_per, subjectnames); + error = str2value(perstr, &rule->rr_per, subjectnames); if (error != 0) goto out; } @@ -855,7 +855,7 @@ KASSERT(rctl_rule_fully_specified(rule), ("rule not fully specified")); - if (rule->hr_action == RCTL_ACTION_DELAY) + if (rule->rr_action == RCTL_ACTION_DELAY) return (EOPNOTSUPP); /* @@ -863,9 +863,9 @@ */ rctl_rule_remove(rule); - switch (rule->hr_subject_type) { + switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_PROCESS: - p = rule->hr_subject.hs_proc; + p = rule->rr_subject.rs_proc; KASSERT(p != NULL, ("rctl_rule_add: NULL proc")); rctl_container_add_rule(&p->p_container, rule); /* @@ -877,26 +877,26 @@ return (0); case RCTL_SUBJECT_TYPE_USER: - uip = rule->hr_subject.hs_uip; + uip = rule->rr_subject.rs_uip; KASSERT(uip != NULL, ("rctl_rule_add: NULL uip")); rctl_container_add_rule(&uip->ui_container, rule); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - lc = rule->hr_subject.hs_loginclass; + lc = rule->rr_subject.hr_loginclass; KASSERT(lc != NULL, ("rctl_rule_add: NULL loginclass")); rctl_container_add_rule(&lc->lc_container, rule); break; case RCTL_SUBJECT_TYPE_JAIL: - pr = rule->hr_subject.hs_prison; + pr = rule->rr_subject.rs_prison; KASSERT(pr != NULL, ("rctl_rule_add: NULL pr")); rctl_container_add_rule(&pr->pr_container, rule); break; default: panic("rctl_rule_add: unknown subject type %d", - rule->hr_subject_type); + rule->rr_subject_type); } /* @@ -906,20 +906,20 @@ sx_assert(&allproc_lock, SA_LOCKED); FOREACH_PROC_IN_SYSTEM(p) { cred = p->p_ucred; - switch (rule->hr_subject_type) { + switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_USER: - if (cred->cr_uidinfo == rule->hr_subject.hs_uip || - cred->cr_ruidinfo == rule->hr_subject.hs_uip) + if (cred->cr_uidinfo == rule->rr_subject.rs_uip || + cred->cr_ruidinfo == rule->rr_subject.rs_uip) break; continue; case RCTL_SUBJECT_TYPE_LOGINCLASS: - if (cred->cr_loginclass == rule->hr_subject.hs_loginclass) + if (cred->cr_loginclass == rule->rr_subject.hr_loginclass) break; continue; case RCTL_SUBJECT_TYPE_JAIL: match = 0; for (pr = cred->cr_prison; pr != NULL; pr = pr->pr_parent) { - if (pr == rule->hr_subject.hs_prison) { + if (pr == rule->rr_subject.rs_prison) { match = 1; break; } @@ -929,7 +929,7 @@ continue; default: panic("rctl_rule_add: unknown subject type %d", - rule->hr_subject_type); + rule->rr_subject_type); } rctl_container_add_rule(&p->p_container, rule); @@ -962,9 +962,9 @@ int error, found = 0; struct proc *p; - if (filter->hr_subject_type == RCTL_SUBJECT_TYPE_PROCESS && - filter->hr_subject.hs_proc != NULL) { - p = filter->hr_subject.hs_proc; + if (filter->rr_subject_type == RCTL_SUBJECT_TYPE_PROCESS && + filter->rr_subject.rs_proc != NULL) { + p = filter->rr_subject.rs_proc; rw_wlock(&rctl_lock); found = rctl_container_remove_rules(&p->p_container, filter); rw_wunlock(&rctl_lock); @@ -1002,45 +1002,45 @@ rctl_rule_to_sbuf(struct sbuf *sb, const struct rctl_rule *rule) { - sbuf_printf(sb, "%s:", rctl_subject_type_name(rule->hr_subject_type)); + sbuf_printf(sb, "%s:", rctl_subject_type_name(rule->rr_subject_type)); - switch (rule->hr_subject_type) { + switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_PROCESS: - if (rule->hr_subject.hs_proc == NULL) + if (rule->rr_subject.rs_proc == NULL) sbuf_printf(sb, ":"); else - sbuf_printf(sb, "%d:", rule->hr_subject.hs_proc->p_pid); + sbuf_printf(sb, "%d:", rule->rr_subject.rs_proc->p_pid); break; case RCTL_SUBJECT_TYPE_USER: - if (rule->hr_subject.hs_uip == NULL) + if (rule->rr_subject.rs_uip == NULL) sbuf_printf(sb, ":"); else - sbuf_printf(sb, "%d:", rule->hr_subject.hs_uip->ui_uid); + sbuf_printf(sb, "%d:", rule->rr_subject.rs_uip->ui_uid); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - if (rule->hr_subject.hs_loginclass == NULL) + if (rule->rr_subject.hr_loginclass == NULL) sbuf_printf(sb, ":"); else - sbuf_printf(sb, "%s:", rule->hr_subject.hs_loginclass->lc_name); + sbuf_printf(sb, "%s:", rule->rr_subject.hr_loginclass->lc_name); break; case RCTL_SUBJECT_TYPE_JAIL: - if (rule->hr_subject.hs_prison == NULL) + if (rule->rr_subject.rs_prison == NULL) sbuf_printf(sb, ":"); else - sbuf_printf(sb, "%d:", rule->hr_subject.hs_prison->pr_id); + sbuf_printf(sb, "%d:", rule->rr_subject.rs_prison->pr_id); break; default: panic("rctl_rule_to_sbuf: unknown subject type %d", - rule->hr_subject_type); + rule->rr_subject_type); } sbuf_printf(sb, "%s:%s=%jd", - rctl_resource_name(rule->hr_resource), - rctl_action_name(rule->hr_action), - rule->hr_amount); + rctl_resource_name(rule->rr_resource), + rctl_action_name(rule->rr_action), + rule->rr_amount); - if (rule->hr_per != rule->hr_subject_type) - sbuf_printf(sb, "/%s", rctl_subject_type_name(rule->hr_per)); + if (rule->rr_per != rule->rr_subject_type) + sbuf_printf(sb, "/%s", rctl_subject_type_name(rule->rr_per)); } /* @@ -1128,9 +1128,9 @@ return (EINVAL); } - switch (filter->hr_subject_type) { + switch (filter->rr_subject_type) { case RCTL_SUBJECT_TYPE_PROCESS: - p = filter->hr_subject.hs_proc; + p = filter->rr_subject.rs_proc; if (p == NULL) { error = EINVAL; goto out; @@ -1138,7 +1138,7 @@ outputsbuf = rctl_container_to_sbuf(&p->p_container); break; case RCTL_SUBJECT_TYPE_USER: - uip = filter->hr_subject.hs_uip; + uip = filter->rr_subject.rs_uip; if (uip == NULL) { error = EINVAL; goto out; @@ -1146,7 +1146,7 @@ outputsbuf = rctl_container_to_sbuf(&uip->ui_container); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - lc = filter->hr_subject.hs_loginclass; + lc = filter->rr_subject.hr_loginclass; if (lc == NULL) { error = EINVAL; goto out; @@ -1154,7 +1154,7 @@ outputsbuf = rctl_container_to_sbuf(&lc->lc_container); break; case RCTL_SUBJECT_TYPE_JAIL: - pr = filter->hr_subject.hs_prison; + pr = filter->rr_subject.rs_prison; if (pr == NULL) { error = EINVAL; goto out; @@ -1183,10 +1183,10 @@ struct sbuf *sb = (struct sbuf *)arg3; rw_rlock(&rctl_lock); - LIST_FOREACH(link, &container->c_rule_links, rctl_next) { - if (!rctl_rule_matches(link->rctl_rule, filter)) + LIST_FOREACH(link, &container->c_rule_links, rrl_next) { + if (!rctl_rule_matches(link->rrl_rule, filter)) continue; - rctl_rule_to_sbuf(sb, link->rctl_rule); + rctl_rule_to_sbuf(sb, link->rrl_rule); sbuf_printf(sb, ","); } rw_runlock(&rctl_lock); @@ -1225,16 +1225,16 @@ sx_assert(&allproc_lock, SA_LOCKED); FOREACH_PROC_IN_SYSTEM(p) { rw_rlock(&rctl_lock); - LIST_FOREACH(link, &p->p_container.c_rule_links, rctl_next) { + LIST_FOREACH(link, &p->p_container.c_rule_links, rrl_next) { /* * Non-process rules will be added to the buffer later. * Adding them here would result in duplicated output. */ - if (link->rctl_rule->hr_subject_type != RCTL_SUBJECT_TYPE_PROCESS) + if (link->rrl_rule->rr_subject_type != RCTL_SUBJECT_TYPE_PROCESS) continue; - if (!rctl_rule_matches(link->rctl_rule, filter)) + if (!rctl_rule_matches(link->rrl_rule, filter)) continue; - rctl_rule_to_sbuf(sb, link->rctl_rule); + rctl_rule_to_sbuf(sb, link->rrl_rule); sbuf_printf(sb, ","); } rw_runlock(&rctl_lock); @@ -1286,17 +1286,17 @@ return (EINVAL); } - if (filter->hr_subject_type == RCTL_SUBJECT_TYPE_UNDEFINED) { + if (filter->rr_subject_type == RCTL_SUBJECT_TYPE_UNDEFINED) { rctl_rule_release(filter); sx_sunlock(&allproc_lock); return (EINVAL); } - if (filter->hr_subject_type != RCTL_SUBJECT_TYPE_PROCESS) { + if (filter->rr_subject_type != RCTL_SUBJECT_TYPE_PROCESS) { rctl_rule_release(filter); sx_sunlock(&allproc_lock); return (EOPNOTSUPP); } - if (filter->hr_subject.hs_proc == NULL) { + if (filter->rr_subject.rs_proc == NULL) { rctl_rule_release(filter); sx_sunlock(&allproc_lock); return (EINVAL); @@ -1308,8 +1308,8 @@ KASSERT(sb != NULL, ("sbuf_new failed")); rw_rlock(&rctl_lock); - LIST_FOREACH(link, &filter->hr_subject.hs_proc->p_container.c_rule_links, rctl_next) { - rctl_rule_to_sbuf(sb, link->rctl_rule); + LIST_FOREACH(link, &filter->rr_subject.rs_proc->p_container.c_rule_links, rrl_next) { + rctl_rule_to_sbuf(sb, link->rrl_rule); sbuf_printf(sb, ","); } rw_runlock(&rctl_lock); @@ -1358,15 +1358,15 @@ /* * The 'per' part of a rule is optional. */ - if (rule->hr_per == RCTL_SUBJECT_TYPE_UNDEFINED && - rule->hr_subject_type != RCTL_SUBJECT_TYPE_UNDEFINED) - rule->hr_per = rule->hr_subject_type; + if (rule->rr_per == RCTL_SUBJECT_TYPE_UNDEFINED && + rule->rr_subject_type != RCTL_SUBJECT_TYPE_UNDEFINED) + rule->rr_per = rule->rr_subject_type; /* * Some rules just don't make sense. */ - if (rule->hr_resource == RUSAGE_CPU && - rule->hr_action == RCTL_ACTION_DENY) { + if (rule->rr_resource == RUSAGE_CPU && + rule->rr_action == RCTL_ACTION_DENY) { error = EINVAL; goto out; } @@ -1440,16 +1440,16 @@ */ rulecnt = 0; rw_rlock(&rctl_lock); - LIST_FOREACH(link, &p->p_container.c_rule_links, rctl_next) { - if (link->rctl_rule->hr_subject_type == + LIST_FOREACH(link, &p->p_container.c_rule_links, rrl_next) { + if (link->rrl_rule->rr_subject_type == RCTL_SUBJECT_TYPE_PROCESS) rulecnt++; } - LIST_FOREACH(link, &newuip->ui_container.c_rule_links, rctl_next) + LIST_FOREACH(link, &newuip->ui_container.c_rule_links, rrl_next) rulecnt++; - LIST_FOREACH(link, &newlc->lc_container.c_rule_links, rctl_next) + LIST_FOREACH(link, &newlc->lc_container.c_rule_links, rrl_next) rulecnt++; - LIST_FOREACH(link, &newpr->pr_container.c_rule_links, rctl_next) + LIST_FOREACH(link, &newpr->pr_container.c_rule_links, rrl_next) rulecnt++; rw_runlock(&rctl_lock); @@ -1459,8 +1459,8 @@ */ for (i = 0; i < rulecnt; i++) { newlink = uma_zalloc(rctl_rule_link_zone, M_WAITOK); - newlink->rctl_rule = NULL; - LIST_INSERT_HEAD(&newrules, newlink, rctl_next); + newlink->rrl_rule = NULL; + LIST_INSERT_HEAD(&newrules, newlink, rrl_next); } newlink = LIST_FIRST(&newrules); @@ -1469,42 +1469,42 @@ * Assign rules to the newly allocated list entries. */ rw_wlock(&rctl_lock); - LIST_FOREACH(link, &p->p_container.c_rule_links, rctl_next) { - if (link->rctl_rule->hr_subject_type == + LIST_FOREACH(link, &p->p_container.c_rule_links, rrl_next) { + if (link->rrl_rule->rr_subject_type == RCTL_SUBJECT_TYPE_PROCESS) { if (newlink == NULL) goto goaround; - rctl_rule_acquire(link->rctl_rule); - newlink->rctl_rule = link->rctl_rule; - newlink = LIST_NEXT(newlink, rctl_next); + rctl_rule_acquire(link->rrl_rule); + newlink->rrl_rule = link->rrl_rule; + newlink = LIST_NEXT(newlink, rrl_next); rulecnt--; } } - LIST_FOREACH(link, &newuip->ui_container.c_rule_links, rctl_next) { + LIST_FOREACH(link, &newuip->ui_container.c_rule_links, rrl_next) { if (newlink == NULL) goto goaround; - rctl_rule_acquire(link->rctl_rule); - newlink->rctl_rule = link->rctl_rule; - newlink = LIST_NEXT(newlink, rctl_next); + rctl_rule_acquire(link->rrl_rule); + newlink->rrl_rule = link->rrl_rule; + newlink = LIST_NEXT(newlink, rrl_next); rulecnt--; } - LIST_FOREACH(link, &newlc->lc_container.c_rule_links, rctl_next) { + LIST_FOREACH(link, &newlc->lc_container.c_rule_links, rrl_next) { if (newlink == NULL) goto goaround; - rctl_rule_acquire(link->rctl_rule); - newlink->rctl_rule = link->rctl_rule; - newlink = LIST_NEXT(newlink, rctl_next); + rctl_rule_acquire(link->rrl_rule); + newlink->rrl_rule = link->rrl_rule; + newlink = LIST_NEXT(newlink, rrl_next); rulecnt--; } - LIST_FOREACH(link, &newpr->pr_container.c_rule_links, rctl_next) { + LIST_FOREACH(link, &newpr->pr_container.c_rule_links, rrl_next) { if (newlink == NULL) goto goaround; - rctl_rule_acquire(link->rctl_rule); - newlink->rctl_rule = link->rctl_rule; - newlink = LIST_NEXT(newlink, rctl_next); + rctl_rule_acquire(link->rrl_rule); + newlink->rrl_rule = link->rrl_rule; + newlink = LIST_NEXT(newlink, rrl_next); rulecnt--; } @@ -1514,8 +1514,8 @@ */ while (!LIST_EMPTY(&p->p_container.c_rule_links)) { link = LIST_FIRST(&p->p_container.c_rule_links); - LIST_REMOVE(link, rctl_next); - rctl_rule_release(link->rctl_rule); + LIST_REMOVE(link, rrl_next); + rctl_rule_release(link->rrl_rule); uma_zfree(rctl_rule_link_zone, link); } @@ -1527,9 +1527,9 @@ */ while (!LIST_EMPTY(&newrules)) { newlink = LIST_FIRST(&newrules); - LIST_REMOVE(newlink, rctl_next); + LIST_REMOVE(newlink, rrl_next); LIST_INSERT_HEAD(&p->p_container.c_rule_links, - newlink, rctl_next); + newlink, rrl_next); } rw_wunlock(&rctl_lock); @@ -1546,9 +1546,9 @@ */ while (!LIST_EMPTY(&newrules)) { newlink = LIST_FIRST(&newrules); - LIST_REMOVE(newlink, rctl_next); - if (newlink->rctl_rule != NULL) - rctl_rule_release(newlink->rctl_rule); + LIST_REMOVE(newlink, rrl_next); + if (newlink->rrl_rule != NULL) + rctl_rule_release(newlink->rrl_rule); uma_zfree(rctl_rule_link_zone, newlink); } @@ -1576,22 +1576,22 @@ /* * Go through limits applicable to the parent and assign them to the child. * Rules with 'process' subject have to be duplicated in order to make their - * hr_subject point to the new process. + * rr_subject point to the new process. */ - LIST_FOREACH(link, &parent->p_container.c_rule_links, rctl_next) { - if (link->rctl_rule->hr_subject_type == RCTL_SUBJECT_TYPE_PROCESS) { - rule = rctl_rule_duplicate(link->rctl_rule, M_NOWAIT); + LIST_FOREACH(link, &parent->p_container.c_rule_links, rrl_next) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jan 16 18:04:28 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E04A10656C6; Sun, 16 Jan 2011 18:04:28 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0845E10656C1 for ; Sun, 16 Jan 2011 18:04:28 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id E02AB8FC0A for ; Sun, 16 Jan 2011 18:04:27 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0GI4RfV091593 for ; Sun, 16 Jan 2011 18:04:27 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0GI4RRp091590 for perforce@freebsd.org; Sun, 16 Jan 2011 18:04:27 GMT (envelope-from trasz@freebsd.org) Date: Sun, 16 Jan 2011 18:04:27 GMT Message-Id: <201101161804.p0GI4RRp091590@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187865 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jan 2011 18:04:28 -0000 http://p4web.freebsd.org/@@187865?ac=10 Change 187865 by trasz@trasz_victim on 2011/01/16 18:03:31 Make routine names less confusing. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#55 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#11 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#5 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#55 (text+ko) ==== @@ -311,7 +311,7 @@ mtx_lock(&container_lock); #ifdef RCTL - error = rctl_enforce_proc(p, resource, amount); + error = rctl_enforce(p, resource, amount); if (error && container_resource_deniable(resource)) { SDT_PROBE(container, kernel, rusage, add_failure, p, resource, amount, 0, 0); mtx_unlock(&container_lock); @@ -402,7 +402,7 @@ #endif #ifdef RCTL if (diff > 0) { - error = rctl_enforce_proc(p, resource, diff); + error = rctl_enforce(p, resource, diff); if (error && container_resource_deniable(resource)) { SDT_PROBE(container, kernel, rusage, set_failure, p, resource, amount, 0, 0); return (error); @@ -462,14 +462,15 @@ /* * Returns amount of 'resource' the process 'p' can keep allocated. * Allocating more than that would be denied, unless the resource - * is marked undeniable. + * is marked undeniable. Amount of already allocated resource does + * not matter. */ uint64_t rusage_get_limit(struct proc *p, int resource) { #ifdef RCTL - return (rctl_available_proc(p, resource)); + return (rctl_get_limit(p, resource)); #else return (UINT64_MAX); #endif ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#11 (text+ko) ==== @@ -279,7 +279,7 @@ * be denied, 0 otherwise. */ int -rctl_enforce_proc(struct proc *p, int resource, uint64_t amount) +rctl_enforce(struct proc *p, int resource, uint64_t amount) { struct rctl_rule *rule; struct rctl_rule_link *link; @@ -312,7 +312,7 @@ buf = malloc(RCTL_LOG_BUFSIZE, M_RCTL, M_NOWAIT); if (buf == NULL) { - printf("rctl_enforce_proc: out of memory\n"); + printf("rctl_enforce: out of memory\n"); continue; } sbuf_new(&sb, buf, RCTL_LOG_BUFSIZE, SBUF_FIXEDLEN); @@ -343,7 +343,7 @@ rctl_deferred_psignal(p, SIGXFSZ); continue; default: - panic("rctl_enforce_proc: unknown action %d", + panic("rctl_enforce: unknown action %d", rule->rr_action); } } @@ -362,7 +362,7 @@ } uint64_t -rctl_available_proc(struct proc *p, int resource) +rctl_get_limit(struct proc *p, int resource) { struct rctl_rule *rule; struct rctl_rule_link *link; ==== //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#5 (text+ko) ==== @@ -119,8 +119,8 @@ int rctl_rule_add(struct rctl_rule *rule); int rctl_rule_remove(struct rctl_rule *filter); -int rctl_enforce_proc(struct proc *p, int resource, uint64_t amount); -uint64_t rctl_available_proc(struct proc *p, int resource); +int rctl_enforce(struct proc *p, int resource, uint64_t amount); +uint64_t rctl_get_limit(struct proc *p, int resource); const char *rctl_resource_name(int resource); int rctl_proc_fork(struct proc *parent, struct proc *child); void rctl_proc_exit(struct proc *p); From owner-p4-projects@FreeBSD.ORG Tue Jan 18 06:21:23 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 825071065675; Tue, 18 Jan 2011 06:21:23 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4351C106564A for ; Tue, 18 Jan 2011 06:21:23 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 2E5428FC12 for ; Tue, 18 Jan 2011 06:21:23 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0I6LNF3043163 for ; Tue, 18 Jan 2011 06:21:23 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0I6LLFg043158 for perforce@freebsd.org; Tue, 18 Jan 2011 06:21:21 GMT (envelope-from trasz@freebsd.org) Date: Tue, 18 Jan 2011 06:21:21 GMT Message-Id: <201101180621.p0I6LLFg043158@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187905 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jan 2011 06:21:23 -0000 http://p4web.freebsd.org/@@187905?ac=10 Change 187905 by trasz@trasz_victim on 2011/01/18 06:20:34 IFC. Affected files ... .. //depot/projects/soc2009/trasz_limits/Makefile#9 integrate .. //depot/projects/soc2009/trasz_limits/ObsoleteFiles.inc#33 integrate .. //depot/projects/soc2009/trasz_limits/UPDATING#32 integrate .. //depot/projects/soc2009/trasz_limits/bin/sh/sh.1#20 integrate .. //depot/projects/soc2009/trasz_limits/bin/sh/trap.c#8 integrate .. //depot/projects/soc2009/trasz_limits/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h#5 integrate .. //depot/projects/soc2009/trasz_limits/contrib/binutils/ld/emultempl/ppc64elf.em#2 integrate .. //depot/projects/soc2009/trasz_limits/contrib/binutils/ld/ldemul.h#2 integrate .. //depot/projects/soc2009/trasz_limits/contrib/dialog/CHANGES#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/COPYING#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/README#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/VERSION#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/aclocal.m4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/arrows.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/buttons.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/calendar.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/checklist.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/columns.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/config.guess#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/config.hin#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/config.sub#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/configure#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/configure.in#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dialog-config.in#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dialog.1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dialog.3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dialog.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dialog.h#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dialog.lsm#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dialog.pl#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dlg_colors.h#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dlg_keys.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/dlg_keys.h#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/editbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/formbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/fselect.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/guage.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/headers-sh.in#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/inputbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/inputstr.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/install-sh#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/makefile.in#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/menubox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/mixedform.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/mixedgauge.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/mouse.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/mousewget.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/msgbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/pause.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/POTFILES.in#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ar.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/bg.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ca.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/cs.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/cy.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/da.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/de.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/dialog.pot#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/el.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/eo.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/es.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/et.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/eu.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/fi.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/fr.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ga.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/gl.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/hi.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/hr.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/hu.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/id.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/is.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/it.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ja.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ku.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/lt.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/lv.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/makefile.inn#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/mg.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/mk.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ms.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/nb.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/nl.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/pl.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/pt.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/pt_BR.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/rm.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ro.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/ru.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/rw.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/sq.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/sr.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/sv.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/sw.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/th.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/tr.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/uk.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/vi.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/wa.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/zh_CN.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/po/zh_TW.po#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/progressbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/rc.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/README#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/calendar#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/calendar-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/calendar2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/calendar2-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/calendar3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/calendar3-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist-8bit#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist10#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist11#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist5#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist6#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist7#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist9#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/checklist9.txt#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/admin.funcs#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/common.funcs#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.funcs#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifman1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifman2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifmcfg2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifmcfg4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifmcfg5#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifpoll1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifpoll2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifreq1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.ifreq2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.rcnews#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.sendifm1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.sendifm2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.trnrc#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/copi.wheel#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copifuncs/ifpatch#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/copismall#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/debian.rc#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/dialog.py#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/dselect#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/editbox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/editbox-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/editbox2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/editbox3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/editbox4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form1-both#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form1-extra#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form1-help#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form1-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form5#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/form6#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/fselect#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/fselect-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/fselect1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/fselect1-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/fselect2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/fselect2-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/gauge#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/gauge0#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/gauge0-input-fd#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/gauge2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/infobox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/infobox1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/infobox2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/infobox3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/infobox4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/infobox5#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/infobox6#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox-both#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox-extra#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox-help#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox5#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox6-8bit#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox6-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputbox7#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputmenu#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputmenu-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputmenu1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputmenu2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputmenu3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/inputmenu4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/install/FDISK.TEST#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/install/makefile.in#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/install/setup.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/install/setup.help#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/killall#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/listing#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox-8bit#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox10#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox5#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox6#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox7#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/menubox9#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/mixedform#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/mixedform2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/mixedgauge#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox-help#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox4-8bit#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox4-eucjp#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox4-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox5#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox6#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/msgbox6a#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/password#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/password1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/password2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/passwordform1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/passwordform1-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/pause#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/pause-help#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/progress#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/progress2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/radiolist#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/radiolist1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/radiolist10#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/radiolist2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/radiolist3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/radiolist4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/report-button#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/report-edit#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/report-string#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/report-tempfile#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/report-yesno#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/rotated-data#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/setup-edit#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/setup-tempfile#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/setup-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/setup-vars#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/slackware.rc#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/sourcemage.rc#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/suse.rc#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/tailbox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/tailboxbg#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/tailboxbg1#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/tailboxbg2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/testdata-8bit#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/textbox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/textbox.txt#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/textbox2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/textbox3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/timebox#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/timebox-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/timebox2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/timebox2-stdout#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/wheel#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/whiptail.rc#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno-both#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno-extra#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno-help#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno-utf8#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno2#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno3#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/samples/yesno4#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/tailbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/textbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/timebox.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/trace.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/ui_getc.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/util.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/version.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/dialog/yesno.c#1 branch .. //depot/projects/soc2009/trasz_limits/contrib/gcc/config/rs6000/crtsavres.asm#2 integrate .. //depot/projects/soc2009/trasz_limits/contrib/gcc/config/rs6000/freebsd.h#4 integrate .. //depot/projects/soc2009/trasz_limits/contrib/gcc/config/rs6000/rs6000.c#2 integrate .. //depot/projects/soc2009/trasz_limits/contrib/gcc/config/rs6000/tramp.asm#2 integrate .. //depot/projects/soc2009/trasz_limits/etc/mtree/BSD.usr.dist#11 integrate .. //depot/projects/soc2009/trasz_limits/gnu/lib/Makefile#2 integrate .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/CHANGES#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/COPYING#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/Makefile#3 integrate .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/README#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/Makefile#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/check1.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/check2.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/check3.c#3 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/dselect.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/fselect.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/ftree1.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/ftree1.test#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/ftree2.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/ftree2.test#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/gauge.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/input1.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/input2.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/menu1.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/menu2.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/menu3.c#3 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/msg.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/prgbox.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/radio1.c#3 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/radio2.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/radio3.c#3 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/text.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/tree.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TESTS/yesno.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/TODO#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/checklist.c#3 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/colors.h#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/dialog.3#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/dialog.h#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/dialog.priv.h#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/dir.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/dir.h#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/dlg_config.h#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/fselect.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/gauge.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/help.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/inputbox.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/kernel.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/lineedit.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/menubox.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/msgbox.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/notify.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/prgbox.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/radiolist.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/raw_popen.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/rc.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/rc.h#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/textbox.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/tree.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/ui_objects.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/ui_objects.h#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libdialog/yesno.c#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/CHANGES#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/COPYING#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/Makefile#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/README#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/Makefile#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/check1.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/check2.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/check3.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/dselect.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/fselect.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/ftree1.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/ftree1.test#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/ftree2.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/ftree2.test#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/gauge.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/input1.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/input2.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/menu1.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/menu2.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/menu3.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/msg.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/prgbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/radio1.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/radio2.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/radio3.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/text.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/tree.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TESTS/yesno.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/TODO#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/checklist.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/colors.h#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/dialog.3#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/dialog.h#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/dialog.priv.h#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/dir.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/dir.h#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/fselect.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/gauge.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/help.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/inputbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/kernel.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/lineedit.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/menubox.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/msgbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/notify.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/prgbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/radiolist.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/raw_popen.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/rc.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/rc.h#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/textbox.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/tree.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/ui_objects.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/ui_objects.h#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/lib/libodialog/yesno.c#1 branch .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/COPYING#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/Makefile#2 integrate .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/README#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/README.lib#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/Makefile#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/README#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/checklist#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/ftreebox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/infobox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/inputbox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/menubox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/msgbox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/prgbox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/radiolist#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/textbox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/treebox#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/TESTS/yesno#2 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/dialog.1#3 delete .. //depot/projects/soc2009/trasz_limits/gnu/usr.bin/dialog/dialog.c#2 delete .. //depot/projects/soc2009/trasz_limits/lib/csu/amd64/Makefile#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/arm/Makefile#5 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/common/crtbrand.c#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/i386-elf/Makefile#5 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/i386-elf/crt1_s.S#5 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/ia64/Makefile#5 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/mips/Makefile#5 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/powerpc/Makefile#4 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/powerpc/crti.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/powerpc/crtn.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/powerpc64/Makefile#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/powerpc64/crti.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/csu/powerpc64/crtn.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/gen/_ctx_start.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/gen/_setjmp.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/gen/fabs.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/gen/setjmp.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/gen/sigsetjmp.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/sys/brk.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/sys/cerror.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/sys/exect.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/sys/pipe.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/sys/ptrace.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/sys/sbrk.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc/sys/setlogin.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/gen/_ctx_start.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/gen/_setjmp.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/gen/fabs.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/gen/setjmp.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/gen/sigsetjmp.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/sys/brk.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/sys/cerror.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/sys/exect.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/sys/pipe.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/sys/ptrace.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/sys/sbrk.S#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/powerpc64/sys/setlogin.S#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libc/sys/mknod.2#2 integrate .. //depot/projects/soc2009/trasz_limits/lib/libcompiler_rt/Makefile#4 integrate .. //depot/projects/soc2009/trasz_limits/lib/libfetch/ftp.c#3 integrate .. //depot/projects/soc2009/trasz_limits/lib/libthr/thread/thr_sig.c#7 integrate .. //depot/projects/soc2009/trasz_limits/lib/libthr/thread/thr_stack.c#4 integrate .. //depot/projects/soc2009/trasz_limits/libexec/rtld-elf/powerpc/rtld_start.S#3 integrate .. //depot/projects/soc2009/trasz_limits/libexec/rtld-elf/powerpc64/rtld_start.S#3 integrate .. //depot/projects/soc2009/trasz_limits/libexec/rtld-elf/rtld.c#16 integrate .. //depot/projects/soc2009/trasz_limits/release/amd64/boot_crunch.conf#5 integrate .. //depot/projects/soc2009/trasz_limits/release/i386/boot_crunch.conf#5 integrate .. //depot/projects/soc2009/trasz_limits/release/ia64/boot_crunch.conf#4 integrate .. //depot/projects/soc2009/trasz_limits/release/pc98/boot_crunch.conf#5 integrate .. //depot/projects/soc2009/trasz_limits/release/powerpc/boot_crunch.conf#6 integrate .. //depot/projects/soc2009/trasz_limits/release/sparc64/boot_crunch.conf#6 integrate .. //depot/projects/soc2009/trasz_limits/release/sun4v/boot_crunch.conf#5 integrate .. //depot/projects/soc2009/trasz_limits/sbin/geom/class/part/gpart.8#11 integrate .. //depot/projects/soc2009/trasz_limits/sbin/geom/class/raid3/geom_raid3.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sbin/geom/class/raid3/graid3.8#4 integrate .. //depot/projects/soc2009/trasz_limits/sbin/hastd/hastd.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sbin/hastd/hooks.c#5 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man3/queue.3#5 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/Makefile#29 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/axe.4#5 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/miibus.4#6 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/nfe.4#2 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/nve.4#3 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/re.4#6 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/rgephy.4#1 branch .. //depot/projects/soc2009/trasz_limits/share/man/man4/run.4#5 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/runfw.4#1 branch .. //depot/projects/soc2009/trasz_limits/share/man/man4/sge.4#3 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man4/uplcom.4#4 integrate .. //depot/projects/soc2009/trasz_limits/share/man/man5/xfs.5#3 integrate .. //depot/projects/soc2009/trasz_limits/share/mk/bsd.libnames.mk#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/amd64/acpica/acpi_machdep.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/amd64_mem.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/apic_vector.S#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/mp_machdep.c#16 integrate .. //depot/projects/soc2009/trasz_limits/sys/amd64/ia32/ia32_signal.c#13 integrate .. //depot/projects/soc2009/trasz_limits/sys/amd64/linux32/linux32_sysvec.c#13 integrate .. //depot/projects/soc2009/trasz_limits/sys/arm/econa/ehci_ebus.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/arm/econa/ohci_ec.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/arm/include/metadata.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/cam/ata/ata_xpt.c#13 integrate .. //depot/projects/soc2009/trasz_limits/sys/cam/cam_periph.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/cam/cam_xpt.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/cam/scsi/scsi_da.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c#16 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/conf/files#43 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/acpica_prep.sh#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/changes.txt#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/adfile.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/adisasm.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/adwalk.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/dmextern.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/dmrestag.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/dmtable.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/dmtbdump.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/dmtbinfo.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/common/getopt.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslanalyze.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslcodegen.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslcompile.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslcompiler.h#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslcompiler.l#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslcompiler.y#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asldefine.h#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslerror.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslfiles.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslfold.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslglobal.h#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asllength.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asllisting.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslload.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asllookup.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslmain.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslmap.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslmessages.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslopcodes.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asloperands.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslopt.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslpredef.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslresource.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslrestype1.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslrestype1i.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslrestype2.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslrestype2d.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslrestype2e.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslrestype2q.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslrestype2w.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslstartup.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslstubs.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asltransform.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asltree.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asltypes.h#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/aslutils.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/asluuid.c#1 branch .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dtcompile.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dtcompiler.h#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dtfield.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dtio.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dtsubtable.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dttable.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dttemplate.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dttemplate.h#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/compiler/dtutils.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbcmds.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbdisply.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbexec.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbfileio.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbhistry.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbinput.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbstats.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbutils.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/debugger/dbxface.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmbuffer.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmnames.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmobject.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmopcode.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmresrc.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmresrcl.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmresrcs.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmutils.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/disassembler/dmwalk.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dsfield.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dsinit.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dsmethod.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dsmthdat.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dsobject.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dsopcode.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dsutils.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dswexec.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dswload.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dswscope.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/dispatcher/dswstate.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evevent.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evgpe.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evgpeblk.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evgpeinit.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evgpeutil.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evmisc.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evregion.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evrgnini.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evsci.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evxface.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evxfevnt.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evxfgpe.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/events/evxfregn.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exconfig.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exconvrt.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/excreate.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exdebug.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exdump.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exfield.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exfldio.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exmisc.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exmutex.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exnames.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exoparg1.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exoparg2.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exoparg3.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exoparg6.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exprep.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exregion.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exresnte.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exresolv.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exresop.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exstore.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exstoren.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exstorob.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exsystem.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/executer/exutils.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwacpi.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwgpe.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwpci.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwregs.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwsleep.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwtimer.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwvalid.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/hardware/hwxface.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acapps.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/accommon.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acconfig.h#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acdebug.h#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acdisasm.h#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acdispat.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acevents.h#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acexcep.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acglobal.h#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/achware.h#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acinterp.h#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/aclocal.h#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acmacros.h#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acnames.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acnamesp.h#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acobject.h#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acopcode.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acoutput.h#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acparser.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acpi.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acpiosxf.h#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acpixf.h#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acpredef.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acresrc.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acrestyp.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acstruct.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/actables.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/actbl.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/actbl1.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/actbl2.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/actypes.h#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/acutils.h#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/amlcode.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/amlresrc.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/platform/acenv.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/platform/acfreebsd.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/include/platform/acgcc.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsaccess.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsalloc.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsdump.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsdumpdv.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nseval.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsinit.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsload.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsnames.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsobject.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsparse.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nspredef.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsrepair.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsrepair2.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nssearch.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsutils.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nswalk.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsxfeval.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsxfname.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/namespace/nsxfobj.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/osunixxf.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/psargs.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/psloop.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/psopcode.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/psparse.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/psscope.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/pstree.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/psutils.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/pswalk.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/parser/psxface.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsaddr.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rscalc.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rscreate.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsdump.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsinfo.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsio.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsirq.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rslist.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsmemory.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsmisc.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsutils.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/resources/rsxface.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/tables/tbfadt.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/tables/tbfind.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/tables/tbinstal.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/tables/tbutils.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/tables/tbxface.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/tables/tbxfroot.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/tools/acpiexec/aecommon.h#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utalloc.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utcache.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utcopy.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utdebug.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utdelete.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/uteval.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utglobal.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utids.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utinit.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utlock.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utmath.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utmisc.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utmutex.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utobject.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utosi.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utresrc.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utstate.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/uttrack.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utxface.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/dev/acpica/utilities/utxferror.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/contrib/pf/net/pf_osfp.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/ddb/db_capture.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/acpi_support/acpi_ibm.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/acpica/Osd/OsdInterrupt.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/acpica/Osd/OsdSchedule.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/acpica/acpi.c#20 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/acpica/acpivar.h#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ae/if_ae.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/age/if_age.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ahci/ahci.c#19 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/alc/if_alc.c#16 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/alc/if_alcvar.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ale/if_ale.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ath/if_ath.c#19 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/bce/if_bce.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/bge/if_bge.c#24 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/bwi/if_bwi.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/bwn/if_bwn.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/cxgb/cxgb_main.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/cxgb/cxgb_sge.c#15 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/dc/dcphy.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/dc/pnphy.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/e1000/if_em.c#22 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/e1000/if_igb.c#25 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/e1000/if_lem.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ed/if_ed.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/iicbus/max6690.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/iscsi/initiator/iscsi.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/iwi/if_iwi.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ixgbe/ixgbe.c#18 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/jme/if_jme.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/jme/if_jmevar.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/atphy.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/brgphy.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/ciphy.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/e1000phy.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/ip1000phy.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/jmphy.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/mii_physubr.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/rgephy.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mii/xmphy.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mmc/mmc.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mps/mps.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mpt/mpt.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/mpt/mpt_raid.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/nfe/if_nfe.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/pccbb/pccbb.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/re/if_re.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/sound/pcm/buffer.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/sound/pcm/sound.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/sound/usb/uaudio.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/ste/if_ste.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/txp/if_txp.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/at91dci.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/at91dci_atmelarm.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/atmegadci.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/atmegadci_atmelarm.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/avr32dci.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ehci.c#18 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ehci_ixp4xx.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ehci_mv.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ehci_pci.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/musb_otg.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/musb_otg_atmelarm.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ohci.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ohci_atmelarm.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ohci_pci.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ohci_s3c24x0.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/uhci.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/uhci_pci.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/usb_controller.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/uss820dci.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/uss820dci_atmelarm.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/xhci.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/xhci.h#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/xhci_pci.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/input/atp.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/input/uhid.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/input/ukbd.c#15 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/input/ums.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/misc/udbp.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/misc/ufm.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_aue.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_axe.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_cdce.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_cue.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_ipheth.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_kue.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_rue.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/if_udav.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/net/usb_ethernet.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/quirk/usb_quirk.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/u3g.c#19 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uark.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/ubsa.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/ubser.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uchcom.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/ucycom.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/ufoma.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uftdi.c#19 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/ugensa.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uipaq.c#13 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/ulpt.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/umct.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/umodem.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/umoscom.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uplcom.c#15 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/usb_serial.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uslcom.c#13 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uvisor.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/serial/uvscom.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/storage/umass.c#16 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/storage/urio.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/storage/ustorage_fs.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/template/usb_template.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/template/usb_template_cdce.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/template/usb_template_msc.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/template/usb_template_mtp.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_busdma.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_compat_linux.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_core.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_debug.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_dev.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_device.c#18 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_dynamic.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_error.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_generic.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_handle_request.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_hid.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_hub.c#15 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_lookup.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_mbuf.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_msctest.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_parse.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_process.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_process.h#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_request.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_transfer.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_util.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfs_var.h#15 integrate .. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdcache.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdkrpc.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdport.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdstate.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/geom/nop/g_nop.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/geom/raid3/g_raid3.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/geom/sched/g_sched.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/geom/sched/gs_rr.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/i386/i386/apic_vector.s#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/i386/i386/i686_mem.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/ia64/acpica/OsdEnvironment.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_clocksource.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_et.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_hhook.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_intr.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_lock.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_mib.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_ntptime.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_sx.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/sched_4bsd.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/sched_ule.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/subr_kobj.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/subr_lock.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/subr_pcpu.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/subr_sleepqueue.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/subr_smp.c#8 integrate .. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_subr.c#23 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/cavium/if_octm.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/cavium/octe/ethernet-tx.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/cavium/octeon_wdog.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/cavium/octopci.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/cavium/usb/octusb.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/cavium/usb/octusb_octeon.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/include/_types.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/include/cpufunc.h#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/include/md_var.h#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/include/param.h#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/include/pmap.h#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/include/proc.h#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/include/pte.h#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/mips/dump_machdep.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/mips/exception.S#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/mips/machdep.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/mips/pmap.c#23 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/mips/swtch.S#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/mips/trap.c#13 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/rmi/xlr_machdep.c#11 integrate .. //depot/projects/soc2009/trasz_limits/sys/mips/rmi/xls_ehci.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/net/if.c#25 integrate .. //depot/projects/soc2009/trasz_limits/sys/net/netisr.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/net/route.c#17 integrate .. //depot/projects/soc2009/trasz_limits/sys/net/vnet.c#14 integrate .. //depot/projects/soc2009/trasz_limits/sys/net80211/ieee80211_amrr.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/net80211/ieee80211_freebsd.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/common/ng_bluetooth.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/netgraph/ng_socket.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/cc/cc_htcp.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/if_ether.c#18 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/ipfw/ip_dn_io.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/ipfw/ip_dummynet.c#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/ipfw/ip_fw_dynamic.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/sctp_cc_functions.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/tcp_hostcache.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/tcp_subr.c#15 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/tcp_syncache.c#12 integrate .. //depot/projects/soc2009/trasz_limits/sys/netinet/tcp_var.h#16 integrate .. //depot/projects/soc2009/trasz_limits/sys/nfs/nfs_nfssvc.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/nfs/nfssvc.h#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/nlm/nlm_prot_impl.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/pci/if_rlreg.h#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/mmu_oea64.c#18 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/slb.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/trap.c#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/metadata.h#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/spr.h#10 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/vmparam.h#9 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/powermac/fcu.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/powerpc/elf32_machdep.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/powerpc/elf64_machdep.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/powerpc/exec_machdep.c#4 integrate .. //depot/projects/soc2009/trasz_limits/sys/powerpc/ps3/ehci_ps3.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/rpc/clnt_dg.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/rpc/clnt_vc.c#7 integrate .. //depot/projects/soc2009/trasz_limits/sys/rpc/svc.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/rpc/svc_vc.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/security/mac/mac_framework.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/security/mac_seeotheruids/mac_seeotheruids.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/sparc64/sparc64/db_trace.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/sparc64/sparc64/tlb.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/sparc64/sparc64/tsb.c#5 integrate .. //depot/projects/soc2009/trasz_limits/sys/sparc64/sparc64/vm_machdep.c#6 integrate .. //depot/projects/soc2009/trasz_limits/sys/sun4v/sun4v/db_interface.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/sun4v/sun4v/db_trace.c#2 integrate .. //depot/projects/soc2009/trasz_limits/sys/sun4v/sun4v/vm_machdep.c#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/sys/param.h#30 integrate .. //depot/projects/soc2009/trasz_limits/sys/sys/priority.h#3 integrate .. //depot/projects/soc2009/trasz_limits/sys/sys/sysctl.h#12 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jan 18 14:21:03 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1EF291065675; Tue, 18 Jan 2011 14:21:03 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D40F21065670 for ; Tue, 18 Jan 2011 14:21:02 +0000 (UTC) (envelope-from afiveg@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id C127B8FC14 for ; Tue, 18 Jan 2011 14:21:02 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0IEL2DC043923 for ; Tue, 18 Jan 2011 14:21:02 GMT (envelope-from afiveg@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0IEL2XE043919 for perforce@freebsd.org; Tue, 18 Jan 2011 14:21:02 GMT (envelope-from afiveg@FreeBSD.org) Date: Tue, 18 Jan 2011 14:21:02 GMT Message-Id: <201101181421.p0IEL2XE043919@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to afiveg@FreeBSD.org using -f From: Alexandre Fiveg To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187913 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jan 2011 14:21:03 -0000 http://p4web.freebsd.org/@@187913?ac=10 Change 187913 by afiveg@cottonmouth on 2011/01/18 14:19:59 deleting ringmap* files from -STABLE tree. I'll make a branch for these files from -CURRENT to -STABLE Affected files ... .. //depot/projects/soc2010/ringmap/current/sys/net/ringmap.c#56 edit .. //depot/projects/soc2010/ringmap/current/sys/net/ringmap.h#55 edit .. //depot/projects/soc2010/ringmap/current/sys/net/ringmap_kernel.h#24 edit .. //depot/projects/soc2010/ringmap/stable_8/contrib/libringmap/libringmap.c#2 edit .. //depot/projects/soc2010/ringmap/stable_8/contrib/libringmap/libringmap.h#2 edit .. //depot/projects/soc2010/ringmap/stable_8/sys/net/ringmap.c#5 delete .. //depot/projects/soc2010/ringmap/stable_8/sys/net/ringmap.h#4 delete .. //depot/projects/soc2010/ringmap/stable_8/sys/net/ringmap_kernel.h#4 delete Differences ... ==== //depot/projects/soc2010/ringmap/current/sys/net/ringmap.c#56 (text+ko) ==== @@ -61,7 +61,7 @@ .d_open = ringmap_open, .d_close = ringmap_close, .d_ioctl = ringmap_ioctl, - .d_read = ringmap_read, /* Tell to user ring physical addr */ + .d_read = ringmap_read, .d_name = "ringmap_cdev" }; @@ -70,9 +70,9 @@ /* - * The function should be called from the attach function of generic network - * driver. Here the ringmap structure is allocated and the character special - * device for the communication with user is created. Also default ringmap + * The function is called from the attach function of generic network + * driver. Here is the ringmap structure allocated and the character special + * device for the communication with user created. Also default ringmap * functions are set. */ struct ringmap * @@ -116,7 +116,7 @@ /* * Initialize the list of capturing objects. Each object represents the * thread that capture traffic and its ring. The objects werden created - * by open(2): see ringmap_open() further. + * by open(2): see ringmap_open(). */ SLIST_INIT(&rm->object_list); ==== //depot/projects/soc2010/ringmap/current/sys/net/ringmap.h#55 (text+ko) ==== ==== //depot/projects/soc2010/ringmap/current/sys/net/ringmap_kernel.h#24 (text+ko) ==== ==== //depot/projects/soc2010/ringmap/stable_8/contrib/libringmap/libringmap.c#2 (text+ko) ==== @@ -1,0 +1,45 @@ +#include "libringmap.h" + +struct ring_handle * get_ring_handle(ringhandle_t); + +struct ring_handle { + + ringhandle_t handle; + + /* String that specifies the network device */ + char *iface; + + /* + * File descriptor of character special device for communication with + * ringmap in the kernel + */ + int cdev_fd; + + /* Each ring is with an unique integer number associated */ + int ringnum; + + /* Type of ring (queue) RX or TX */ + int ringtype; + + /* + * The number of slot in the ring buffer that is currently taken for + * reading by userspace process + */ + unsigned int current_buffer; + + /* + * Pointer to the structure that represents the shared packet ring buffer + */ + struct ring *ring; + + /* not in use yet */ + int status; +}; + + +int +get_ring_size(ringhandle_t) +{ + + return (0); +} ==== //depot/projects/soc2010/ringmap/stable_8/contrib/libringmap/libringmap.h#2 (text+ko) ==== @@ -1,4 +1,3 @@ - #define TYPE_RX_RING 0x0001 #define TYPE_TX_RING 0x0002 @@ -6,38 +5,6 @@ struct ring; -struct ring_handle { - - /* String that specifies the network device */ - char *iface; - - /* - * File descriptor of character special device for communication with - * ringmap in the kernel - */ - int cdev_fd; - - /* Each ring is with an unique integer number associated */ - int ringnum; - - /* Type of ring (queue) RX or TX */ - int ringtype; - - /* - * The number of slot in the ring buffer that is currently taken for - * reading by userspace process - */ - unsigned int current_buffer; - - /* - * Pointer to the structure that represents the shared packet ring buffer - */ - struct ring *ring; - - /* not in use yet */ - int status; -}; - /* * This structure describes the conditions of an event during * reading the packet in the current_buffer. @@ -74,7 +41,7 @@ int pktfilter_accept; }; -/* The handle for a ring (or queue) */ +/* The handle for a ring (a.k.a queue) */ typedef int ringhandle_t; /* @@ -151,12 +118,12 @@ /* * Returns the number of packet buffers in the ring */ -int get_ring_size(void); +int get_ring_size(ringhandle_t); /* - * Returns the size of a packet buffer in bytes + * Returns the size of a packet buffer (a.k.a. Ring-Slot) in bytes. */ -unsigned int get_pktbuf_size(void); +unsigned int get_pktbuf_size(ringhandle_t); /* * Returns the number of available receive rings From owner-p4-projects@FreeBSD.ORG Tue Jan 18 14:54:59 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37CDE1065672; Tue, 18 Jan 2011 14:54:59 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E57C8106566C for ; Tue, 18 Jan 2011 14:54:58 +0000 (UTC) (envelope-from afiveg@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id B8A978FC0C for ; Tue, 18 Jan 2011 14:54:58 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0IEsw7g050152 for ; Tue, 18 Jan 2011 14:54:58 GMT (envelope-from afiveg@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0IEswmN050149 for perforce@freebsd.org; Tue, 18 Jan 2011 14:54:58 GMT (envelope-from afiveg@FreeBSD.org) Date: Tue, 18 Jan 2011 14:54:58 GMT Message-Id: <201101181454.p0IEswmN050149@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to afiveg@FreeBSD.org using -f From: Alexandre Fiveg To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187915 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jan 2011 14:54:59 -0000 http://p4web.freebsd.org/@@187915?ac=10 Change 187915 by afiveg@cottonmouth on 2011/01/18 14:53:54 ringmap files are branched Affected files ... .. //depot/projects/soc2010/ringmap/stable_8/sys/net/ringmap.c#6 branch .. //depot/projects/soc2010/ringmap/stable_8/sys/net/ringmap.h#5 branch .. //depot/projects/soc2010/ringmap/stable_8/sys/net/ringmap_kernel.h#5 branch Differences ... From owner-p4-projects@FreeBSD.ORG Tue Jan 18 15:58:42 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 316AF106566C; Tue, 18 Jan 2011 15:58:42 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E8322106564A for ; Tue, 18 Jan 2011 15:58:41 +0000 (UTC) (envelope-from afiveg@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id D54238FC1A for ; Tue, 18 Jan 2011 15:58:41 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0IFwfv0062517 for ; Tue, 18 Jan 2011 15:58:41 GMT (envelope-from afiveg@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0IFwfKe062514 for perforce@freebsd.org; Tue, 18 Jan 2011 15:58:41 GMT (envelope-from afiveg@FreeBSD.org) Date: Tue, 18 Jan 2011 15:58:41 GMT Message-Id: <201101181558.p0IFwfKe062514@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to afiveg@FreeBSD.org using -f From: Alexandre Fiveg To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187920 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jan 2011 15:58:42 -0000 http://p4web.freebsd.org/@@187920?ac=10 Change 187920 by afiveg@cottonmouth on 2011/01/18 15:58:37 The character special device is named now as ringmap_ Affected files ... .. //depot/projects/soc2010/ringmap/current/sys/net/ringmap.c#57 edit .. //depot/projects/soc2010/ringmap/current/sys/net/ringmap.h#56 edit Differences ... ==== //depot/projects/soc2010/ringmap/current/sys/net/ringmap.c#57 (text+ko) ==== @@ -100,7 +100,7 @@ */ rm->cdev = make_dev(&ringmap_devsw, device_get_unit(dev), UID_ROOT, GID_WHEEL, 0666, - device_get_nameunit(dev)); + RINGMAP_DEVICE(device_get_nameunit(dev))); if (rm->cdev == NULL) { RINGMAP_ERROR(Can not create character device); FREE(rm, M_DEVBUF); ==== //depot/projects/soc2010/ringmap/current/sys/net/ringmap.h#56 (text+ko) ==== @@ -12,7 +12,7 @@ * Prefix for name of device (for example /dev/ringmap_em0 will full name) * currently not used, but it will! */ -#define RINGMAP_DEVICE "ringmap" +#define RINGMAP_DEVICE(iface) "ringmap_"#iface /* * Default queue number. For multiqueue. Currently not used! @@ -309,18 +309,18 @@ #define PACKET_ADDR_DEB(ring, i) \ if (__RINGMAP_DEB) { \ - printf("=+= packet.user=0x%X, packet.phys=0x%X, packet.kern=0x%X\n",\ - (unsigned int)ring->slot[i].packet.user, \ - (unsigned int)ring->slot[i].packet.phys, \ - (unsigned int)ring->slot[i].packet.kern); \ + printf("=+= packet.user=%p, packet.phys=%p, packet.kern=%p\n",\ + (void *)ring->slot[i].packet.user, \ + (void *)ring->slot[i].packet.phys, \ + (void *)ring->slot[i].packet.kern); \ }; #define PRINT_MBUF_ADDR(ring, i) \ do { \ - printf("=+= mbuf.user=0x%X, mbuf.phys=0x%llX, mbuf.kern=0x%X\n", \ - (unsigned int)ring->slot[i].mbuf.user, \ - (long long unsigned int)ring->slot[i].mbuf.phys,\ - (unsigned int)ring->slot[i].mbuf.kern); \ + printf("=+= mbuf.user=%p, mbuf.phys=%p, mbuf.kern=%p\n", \ + (void *)ring->slot[i].mbuf.user, \ + (void *)ring->slot[i].mbuf.phys, \ + (void *)ring->slot[i].mbuf.kern); \ } while (0); #define PRINT_SLOT(ring, i) \ From owner-p4-projects@FreeBSD.ORG Wed Jan 19 07:23:57 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6B4C21065674; Wed, 19 Jan 2011 07:23:57 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 272F2106566B for ; Wed, 19 Jan 2011 07:23:57 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 14F0F8FC12 for ; Wed, 19 Jan 2011 07:23:57 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0J7NufA059469 for ; Wed, 19 Jan 2011 07:23:56 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0J7Nuug059466 for perforce@freebsd.org; Wed, 19 Jan 2011 07:23:56 GMT (envelope-from lz@FreeBSD.org) Date: Wed, 19 Jan 2011 07:23:56 GMT Message-Id: <201101190723.p0J7Nuug059466@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187944 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2011 07:23:57 -0000 http://p4web.freebsd.org/@@187944?ac=10 Change 187944 by lz@gnehzuil-freebsd on 2011/01/19 07:23:26 Make 'mount -t ext4fs -r' can work well. * Now we can use 'mount -t ext4fs -r /dev/XXX /YYY' to mount an ext4 file system in read-only mode. * Before using this command, You need to do the following steps to compile and install ext4 kernel module: 1. enter sys/modules/ext4fs/ 2. make && make install Then you can use it to mount an ext4 file system. * I don't create a new mount_ext4fs dir in sbin/ because external mount programs needs to get away. Affected files ... .. //depot/projects/soc2010/ext4fs/src/sys/fs/ext4fs/ext4_vfsops.c#3 edit Differences ... ==== //depot/projects/soc2010/ext4fs/src/sys/fs/ext4fs/ext4_vfsops.c#3 (text+ko) ==== @@ -92,7 +92,7 @@ .vfs_vget = ext2_vget, }; -VFS_SET(ext2fs_vfsops, ext2fs, 0); +VFS_SET(ext2fs_vfsops, ext4fs, 0); static int ext2_check_sb_compat(struct ext2fs *es, struct cdev *dev, int ronly); From owner-p4-projects@FreeBSD.ORG Wed Jan 19 15:50:22 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B428D10656A3; Wed, 19 Jan 2011 15:50:22 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 612BB1065673 for ; Wed, 19 Jan 2011 15:50:22 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 4F32A8FC2D for ; Wed, 19 Jan 2011 15:50:22 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0JFoMXM068743 for ; Wed, 19 Jan 2011 15:50:22 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0JFoMlT068739 for perforce@freebsd.org; Wed, 19 Jan 2011 15:50:22 GMT (envelope-from trasz@freebsd.org) Date: Wed, 19 Jan 2011 15:50:22 GMT Message-Id: <201101191550.p0JFoMlT068739@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187950 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2011 15:50:22 -0000 http://p4web.freebsd.org/@@187950?ac=10 Change 187950 by trasz@trasz_victim on 2011/01/19 15:49:16 Make humanized output the default for userstat(1) and jailstat(1). Affected files ... .. //depot/projects/soc2009/trasz_limits/usr.bin/userstat/userstat.sh#8 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/usr.bin/userstat/userstat.sh#8 (text+ko) ==== @@ -30,13 +30,15 @@ # $FreeBSD$ usage() { - echo "usage: `basename $0` [-h] [wait [count]]" + echo "usage: `basename $0` [-s] [wait [count]]" exit 1 } -while getopts 'h' cmd_arg; do +hflag="-h" + +while getopts 's' cmd_arg; do case "${cmd_arg}" in - h) hflag="-h" ;; + s) hflag="" ;; *) usage ;; esac done From owner-p4-projects@FreeBSD.ORG Wed Jan 19 17:21:26 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C6321065672; Wed, 19 Jan 2011 17:21:26 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0E82E106566B for ; Wed, 19 Jan 2011 17:21:26 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id EF9578FC0C for ; Wed, 19 Jan 2011 17:21:25 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0JHLP6h089539 for ; Wed, 19 Jan 2011 17:21:25 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0JHLP50089536 for perforce@freebsd.org; Wed, 19 Jan 2011 17:21:25 GMT (envelope-from trasz@freebsd.org) Date: Wed, 19 Jan 2011 17:21:25 GMT Message-Id: <201101191721.p0JHLP50089536@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187958 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2011 17:21:26 -0000 http://p4web.freebsd.org/@@187958?ac=10 Change 187958 by trasz@trasz_victim on 2011/01/19 17:20:43 Disable this piece of code; it's not really neccessary and might cause an ugly race condition. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/vm/vm_map.c#30 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/vm/vm_map.c#30 (text+ko) ==== @@ -3295,7 +3295,9 @@ rlim_t stacklim, vmemlim; int is_procstack, rv; struct ucred *cred; +#ifdef notyet uint64_t limit; +#endif int error; Retry: @@ -3409,9 +3411,11 @@ grow_amount = trunc_page((vm_size_t)stacklim) - ctob(vm->vm_ssize); } - limit = rusage_get_limit(p, RUSAGE_STACK); +#ifdef notyet + limit = rusage_get_available(p, RUSAGE_STACK); if (is_procstack && (ctob(vm->vm_ssize) + grow_amount > limit)) grow_amount = limit - ctob(vm->vm_ssize); +#endif /* If we would blow our VMEM resource limit, no go */ if (map->size + grow_amount > vmemlim) { From owner-p4-projects@FreeBSD.ORG Wed Jan 19 18:22:50 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B00A1065673; Wed, 19 Jan 2011 18:22:50 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1D96D106566B for ; Wed, 19 Jan 2011 18:22:50 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 0A7388FC1D for ; Wed, 19 Jan 2011 18:22:50 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0JIMnsK001907 for ; Wed, 19 Jan 2011 18:22:49 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0JIMnD6001904 for perforce@freebsd.org; Wed, 19 Jan 2011 18:22:49 GMT (envelope-from trasz@freebsd.org) Date: Wed, 19 Jan 2011 18:22:49 GMT Message-Id: <201101191822.p0JIMnD6001904@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187961 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2011 18:22:50 -0000 http://p4web.freebsd.org/@@187961?ac=10 Change 187961 by trasz@trasz_victim on 2011/01/19 18:22:01 Improve RSS enforcement. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#56 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#12 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/sysv_sem.c#10 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/container.h#22 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#6 edit .. //depot/projects/soc2009/trasz_limits/sys/vm/vm_pageout.c#23 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#56 (text+ko) ==== @@ -477,6 +477,23 @@ } /* + * Returns amount of 'resource' the process 'p' can keep allocated. + * Allocating more than that would be denied, unless the resource + * is marked undeniable. Amount of already allocated resource does + * matter. + */ +uint64_t +rusage_get_available(struct proc *p, int resource) +{ + +#ifdef RCTL + return (rctl_get_available(p, resource)); +#else + return (UINT64_MAX); +#endif +} + +/* * Decrease allocation of 'resource' by 'amount' for process 'p'. */ void @@ -616,6 +633,7 @@ rusage_set(p, RUSAGE_FSIZE, 0); rusage_set(p, RUSAGE_NPTS, 0); rusage_set(p, RUSAGE_NTHR, 0); + rusage_set(p, RUSAGE_RSS, 0); #ifdef RCTL rctl_proc_exit(p); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#12 (text+ko) ==== @@ -389,6 +389,45 @@ return (amount); } +uint64_t +rctl_get_available(struct proc *p, int resource) +{ + struct rctl_rule *rule; + struct rctl_rule_link *link; + int64_t available, minavailable, allocated; + + minavailable = INT64_MAX; + + rw_rlock(&rctl_lock); + + /* + * There may be more than one matching rule; go through all of them. + * Denial should be done last, after logging and sending signals. + */ + LIST_FOREACH(link, &p->p_container.c_rule_links, rrl_next) { + rule = link->rrl_rule; + if (rule->rr_resource != resource) + continue; + if (rule->rr_action != RCTL_ACTION_DENY) + continue; + available = rctl_available_resource(p, rule); + if (available < minavailable) + minavailable = available; + } + + rw_runlock(&rctl_lock); + + /* + * XXX: Think about this _hard_. + */ + allocated = p->p_container.c_resources[resource]; + if (minavailable < INT64_MAX - allocated) + minavailable += allocated; + if (minavailable < 0) + minavailable = 0; + return (minavailable); +} + static int rctl_rule_matches(const struct rctl_rule *rule, const struct rctl_rule *filter) { ==== //depot/projects/soc2009/trasz_limits/sys/kern/sysv_sem.c#10 (text+ko) ==== @@ -1018,7 +1018,7 @@ DPRINTF(("too many sops (max=%d, nsops=%d)\n", seminfo.semopm, nsops)); return (E2BIG); - } else if (nsops > rusage_get_limit(td->td_proc, RUSAGE_NSEMOP)) { + } else if (nsops > rusage_get_available(td->td_proc, RUSAGE_NSEMOP)) { return (E2BIG); } else sops = malloc(nsops * sizeof(*sops), M_TEMP, M_WAITOK); ==== //depot/projects/soc2009/trasz_limits/sys/sys/container.h#22 (text+ko) ==== @@ -102,6 +102,7 @@ void rusage_sub(struct proc *p, int resource, uint64_t amount); void rusage_sub_cred(struct ucred *cred, int resource, uint64_t amount); uint64_t rusage_get_limit(struct proc *p, int resource); +uint64_t rusage_get_available(struct proc *p, int resource); void container_create(struct container *container); void container_destroy(struct container *container); ==== //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#6 (text+ko) ==== @@ -121,6 +121,7 @@ int rctl_enforce(struct proc *p, int resource, uint64_t amount); uint64_t rctl_get_limit(struct proc *p, int resource); +uint64_t rctl_get_available(struct proc *p, int resource); const char *rctl_resource_name(int resource); int rctl_proc_fork(struct proc *parent, struct proc *child); void rctl_proc_exit(struct proc *p); ==== //depot/projects/soc2009/trasz_limits/sys/vm/vm_pageout.c#23 (text+ko) ==== @@ -1631,8 +1631,8 @@ struct proc *p; struct thread *td; struct vmspace *vm; - int breakout, swapout_flags; - uint64_t maxsize; + int breakout, swapout_flags, tryagain; + uint64_t rsize, ravailable; while (TRUE) { mtx_lock(&vm_daemon_mtx); @@ -1651,6 +1651,8 @@ * scan the processes for exceeding their rlimits or if * process is swapped out -- deactivate pages */ +again: + tryagain = 0; sx_slock(&allproc_lock); FOREACH_PROC_IN_SYSTEM(p) { vm_pindex_t limit, size; @@ -1708,29 +1710,39 @@ vm_pageout_map_deactivate_pages( &vm->vm_map, limit); } - rusage_set(p, RUSAGE_RSS, IDX_TO_OFF(size)); - maxsize = OFF_TO_IDX(rusage_get_limit(p, RUSAGE_RSS)); - if (size > maxsize) { + rsize = IDX_TO_OFF(size); + rusage_set(p, RUSAGE_RSS, rsize); + ravailable = rusage_get_available(p, RUSAGE_RSS); + if (rsize > ravailable) { /* * Don't be overly aggressive; this might be * an innocent process, and the limit could've * been exceeded by some memory hog. Don't - * try to deactivate more than half of process' + * try to deactivate more than 1/4th of process' * resident set size. * * XXX: Reconsider. */ - if (maxsize < size / 2) - maxsize = size / 2; + if (ravailable < rsize - (rsize / 4)) + ravailable = rsize - (rsize / 4); vm_pageout_map_deactivate_pages( - &vm->vm_map, maxsize); + &vm->vm_map, OFF_TO_IDX(ravailable)); /* Update RSS usage after paging out. */ size = vmspace_resident_count(vm); - rusage_set(p, RUSAGE_RSS, IDX_TO_OFF(size)); + rsize = IDX_TO_OFF(size); + rusage_set(p, RUSAGE_RSS, rsize); + if (rsize > ravailable) + tryagain++; + if (tryagain > 20) { + printf("still too much: rsize = %ld, ravailable = %zd\n", rsize, ravailable); + tryagain = 0; + } } vmspace_free(vm); } sx_sunlock(&allproc_lock); + if (tryagain != 0) + goto again; } } #endif /* !defined(NO_SWAPPING) */ From owner-p4-projects@FreeBSD.ORG Wed Jan 19 19:50:35 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A9EDB1065697; Wed, 19 Jan 2011 19:50:35 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 51A741065672 for ; Wed, 19 Jan 2011 19:50:35 +0000 (UTC) (envelope-from kibab@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 3F72A8FC19 for ; Wed, 19 Jan 2011 19:50:35 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0JJoZ5S018852 for ; Wed, 19 Jan 2011 19:50:35 GMT (envelope-from kibab@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0JJoZgQ018848 for perforce@freebsd.org; Wed, 19 Jan 2011 19:50:35 GMT (envelope-from kibab@FreeBSD.org) Date: Wed, 19 Jan 2011 19:50:35 GMT Message-Id: <201101191950.p0JJoZgQ018848@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to kibab@FreeBSD.org using -f From: Ilya Bakulin To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 187968 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2011 19:50:35 -0000 http://p4web.freebsd.org/@@187968?ac=10 Change 187968 by kibab@kibab_kibab-nb on 2011/01/19 19:50:20 Fixed typo. Affected files ... .. //depot/projects/soc2010/kibab_sysctlreg/src_sys/geom/geom_vol_ffs.c#3 edit Differences ... ==== //depot/projects/soc2010/kibab_sysctlreg/src_sys/geom/geom_vol_ffs.c#3 (text+ko) ==== @@ -43,7 +43,7 @@ #include #include -FEATURE(geom_vol, "Geom support for volume names from UFS superblok"); +FEATURE(geom_vol, "Geom support for volume names from UFS superblock"); #define VOL_FFS_CLASS_NAME "VOL_FFS" From owner-p4-projects@FreeBSD.ORG Fri Jan 21 03:21:35 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0D64A1065670; Fri, 21 Jan 2011 03:21:35 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BB849106566C for ; Fri, 21 Jan 2011 03:21:34 +0000 (UTC) (envelope-from lz@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 8ECDB8FC14 for ; Fri, 21 Jan 2011 03:21:34 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0L3LYSN018051 for ; Fri, 21 Jan 2011 03:21:34 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0L3LY5v018048 for perforce@freebsd.org; Fri, 21 Jan 2011 03:21:34 GMT (envelope-from lz@FreeBSD.org) Date: Fri, 21 Jan 2011 03:21:34 GMT Message-Id: <201101210321.p0L3LY5v018048@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to lz@FreeBSD.org using -f From: Zheng Liu To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188022 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 03:21:35 -0000 http://p4web.freebsd.org/@@188022?ac=10 Change 188022 by lz@gnehzuil-freebsd on 2011/01/21 03:20:55 Add two sysctl variables to control reservation window algorithm. Affected files ... .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#29 edit Differences ... ==== //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#29 (text+ko) ==== @@ -42,6 +42,7 @@ #include #include #include +#include #include #include @@ -91,6 +92,14 @@ * groups without preference. */ +SYSCTL_NODE(_vfs, OID_AUTO, ext2fs, CTLFLAG_RW, 0, "EXT2FS filesystem"); + +static int rsv = 1; +SYSCTL_INT(_vfs_ext2fs, OID_AUTO, rsv, CTLFLAG_RW, &rsv, 0, ""); + +static int rsv_winsize = 8; +SYSCTL_UINT(_vfs_ext2fs, OID_AUTO, rsv_winsize, CTLFLAG_RW, &rsv_winsize, 0, ""); + /* * Allocate a free block. * @@ -206,7 +215,10 @@ rp->rsv_start = EXT2_RSV_NOT_ALLOCATED; rp->rsv_end = EXT2_RSV_NOT_ALLOCATED; - rp->rsv_goal_size = EXT2_RSV_DEFAULT_RESERVE_BLKS; + if (rsv_winsize < EXT2_RSV_MAX_RESERVE_BLKS) + rp->rsv_goal_size = rsv_winsize; + else + rp->rsv_goal_size = EXT2_RSV_DEFAULT_RESERVE_BLKS; rp->rsv_alloc_hit = 0; ip->i_rsv = rp; @@ -236,7 +248,10 @@ EXT2_TREE_LOCK(ip->i_e2fs); ext2_remove_rsv_win(ip->i_e2fs, rp); EXT2_TREE_UNLOCK(ip->i_e2fs); - rp->rsv_goal_size = EXT2_RSV_DEFAULT_RESERVE_BLKS; + if (rsv_winsize < EXT2_RSV_MAX_RESERVE_BLKS) + rp->rsv_goal_size = rsv_winsize; + else + rp->rsv_goal_size = EXT2_RSV_DEFAULT_RESERVE_BLKS; } /* @@ -475,7 +490,7 @@ /* * Allocate a block using reservation window in ext2 file system. * - * NOTE: This function will replace the ext2_alloc() function. + * XXX: This function will replace the ext2_alloc() function. */ int ext2_alloc_rsv(struct inode *ip, int32_t lbn, int32_t bpref, @@ -505,6 +520,12 @@ else cg = dtog(fs, bpref); + if (rsv == 0) { + bno = (daddr_t)ext2_hashalloc(ip, cg, bpref, fs->e2fs_bsize, + ext2_alloccg); + goto allocated; + } + /* If cg has some free blocks, then try to allocate a free block from this cg */ if (fs->e2fs_gd[cg].ext2bgd_nbfree > 0) { /* Read block bitmap from buffer */ From owner-p4-projects@FreeBSD.ORG Fri Jan 21 13:39:03 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D818410656A9; Fri, 21 Jan 2011 13:39:02 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 99EBD10656A4 for ; Fri, 21 Jan 2011 13:39:02 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 427D28FC14 for ; Fri, 21 Jan 2011 13:39:02 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0LDd2VF039175 for ; Fri, 21 Jan 2011 13:39:02 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0LDd2Qk039172 for perforce@freebsd.org; Fri, 21 Jan 2011 13:39:02 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 21 Jan 2011 13:39:02 GMT Message-Id: <201101211339.p0LDd2Qk039172@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188031 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 13:39:03 -0000 http://p4web.freebsd.org/@@188031?ac=10 Change 188031 by rwatson@rwatson_cinnamon on 2011/01/21 13:38:23 The parts of Capsicum being merged to 9-CURRENT are believed only to break your computer system in known ways. Affected files ... .. //depot/projects/trustedbsd/capabilities/src/sys/kern/sys_capability.c#32 edit .. //depot/projects/trustedbsd/capabilities/src/sys/sys/capability.h#30 edit Differences ... ==== //depot/projects/trustedbsd/capabilities/src/sys/kern/sys_capability.c#32 (text+ko) ==== @@ -2,10 +2,6 @@ * Copyright (c) 2008-2009 Robert N. M. Watson * All rights reserved. * - * WARNING: THIS IS EXPERIMENTAL SECURITY SOFTWARE THAT MUST NOT BE RELIED - * ON IN PRODUCTION SYSTEMS. IT WILL BREAK YOUR SOFTWARE IN NEW AND - * UNEXPECTED WAYS. - * * This software was developed at the University of Cambridge Computer * Laboratory with support from a grant from Google, Inc. * @@ -50,7 +46,7 @@ #include "opt_capabilities.h" #include -__FBSDID("$P4: //depot/projects/trustedbsd/capabilities/src/sys/kern/sys_capability.c#31 $"); +__FBSDID("$P4: //depot/projects/trustedbsd/capabilities/src/sys/kern/sys_capability.c#32 $"); #include #include ==== //depot/projects/trustedbsd/capabilities/src/sys/sys/capability.h#30 (text+ko) ==== @@ -1,10 +1,6 @@ /*- * Copyright (c) 2008-2009 Robert N. M. Watson * All rights reserved. - * - * WARNING: THIS IS EXPERIMENTAL SECURITY SOFTWARE THAT MUST NOT BE RELIED - * ON IN PRODUCTION SYSTEMS. IT WILL BREAK YOUR SOFTWARE IN NEW AND - * UNEXPECTED WAYS. * * This software was developed at the University of Cambridge Computer * Laboratory with support from a grant from Google, Inc. @@ -30,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/capabilities/src/sys/sys/capability.h#29 $ + * $P4: //depot/projects/trustedbsd/capabilities/src/sys/sys/capability.h#30 $ */ /* From owner-p4-projects@FreeBSD.ORG Fri Jan 21 16:23:11 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D9E21065674; Fri, 21 Jan 2011 16:23:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 403931065672 for ; Fri, 21 Jan 2011 16:23:11 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 12FD28FC14 for ; Fri, 21 Jan 2011 16:23:11 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0LGNAOa074523 for ; Fri, 21 Jan 2011 16:23:10 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0LGNAqi074520 for perforce@freebsd.org; Fri, 21 Jan 2011 16:23:10 GMT (envelope-from trasz@freebsd.org) Date: Fri, 21 Jan 2011 16:23:10 GMT Message-Id: <201101211623.p0LGNAqi074520@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188033 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 16:23:11 -0000 http://p4web.freebsd.org/@@188033?ac=10 Change 188033 by trasz@trasz_victim on 2011/01/21 16:22:37 Add manual page for userstat(8). Affected files ... .. //depot/projects/soc2009/trasz_limits/usr.bin/rctl/rctl.8#2 edit .. //depot/projects/soc2009/trasz_limits/usr.bin/userstat/Makefile#2 edit .. //depot/projects/soc2009/trasz_limits/usr.bin/userstat/userstat.8#1 add Differences ... ==== //depot/projects/soc2009/trasz_limits/usr.bin/rctl/rctl.8#2 (text+ko) ==== @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 3, 2009 +.Dd February 13, 2011 .Dt RCTL 8 .Os .Sh NAME @@ -98,17 +98,17 @@ the defined action triggers. .Pp The per field defines what entity the limit gets accounted for. -For example, rule "loginclass:users:memoryuse:deny=100M/process" means -that each process of any user belonging to login class "users" may use up to 100MB -of memory. -Rule "loginclass:users:memoryuse:deny=100M/user" would mean that the sum of -memory used by all processes of any user belonging to the login class "users" -will not exceed 100MB. -Rule "loginclass:users:memoryuse:deny=100M/loginclass" would mean that the sum of -memory used by all processes of all users belonging to that login class will -not exceed 100MB. +For example, rule "loginclass:users:vmem:deny=100M/process" means +that each process of any user belonging to login class "users" may allocate +up to 100MB of virtual memory. +Rule "loginclass:users:vmem:deny=100M/user" would mean that for each +user belonging to the login class "users", the sum of virtual memory allocated +by all the processes of a that user will not exceed 100MB. +Rule "loginclass:users:vmem:deny=100M/loginclass" would mean that the sum of +virtual memory allocated by all processes of all users belonging to that login +class will not exceed 100MB. .Pp -Valid rule has all of these fields specified, except for the per, which defaults +Valid rule has all those fields specified, except for the per, which defaults to the value of subject. .Pp A filter is a rule for which one of more fields other than per is left empty. @@ -119,8 +119,8 @@ .Sh EXIT STATUS .Ex -std .Sh SEE ALSO -.Xr id 1 , -.Xr limits 1 +.Xr jailstat 8 , +.Xr userstat 8 .Sh HISTORY The .Nm ==== //depot/projects/soc2009/trasz_limits/usr.bin/userstat/Makefile#2 (text+ko) ==== @@ -3,8 +3,7 @@ SCRIPTS= userstat.sh LINKS= ${BINDIR}/userstat ${BINDIR}/jailstat -#MAN= userstat.1 -#MLINKS= jailstat.1 -MAN= +MAN= userstat.8 +MLINKS= userstat.8 jailstat.8 .include From owner-p4-projects@FreeBSD.ORG Fri Jan 21 16:28:41 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E65A1065674; Fri, 21 Jan 2011 16:28:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E552D1065672 for ; Fri, 21 Jan 2011 16:28:40 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id D2F228FC1D for ; Fri, 21 Jan 2011 16:28:40 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0LGSeFj074581 for ; Fri, 21 Jan 2011 16:28:40 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0LGSes1074578 for perforce@freebsd.org; Fri, 21 Jan 2011 16:28:40 GMT (envelope-from trasz@freebsd.org) Date: Fri, 21 Jan 2011 16:28:40 GMT Message-Id: <201101211628.p0LGSes1074578@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188034 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 16:28:41 -0000 http://p4web.freebsd.org/@@188034?ac=10 Change 188034 by trasz@trasz_victim on 2011/01/21 16:27:49 Rename userstat/userstat.sh to jailstat/jailstat.sh. Affected files ... .. //depot/projects/soc2009/trasz_limits/usr.bin/Makefile#16 edit .. //depot/projects/soc2009/trasz_limits/usr.bin/jailstat/Makefile#1 add .. //depot/projects/soc2009/trasz_limits/usr.bin/jailstat/jailstat.8#1 add .. //depot/projects/soc2009/trasz_limits/usr.bin/jailstat/jailstat.sh#1 branch .. //depot/projects/soc2009/trasz_limits/usr.bin/userstat/Makefile#3 delete .. //depot/projects/soc2009/trasz_limits/usr.bin/userstat/userstat.8#2 delete .. //depot/projects/soc2009/trasz_limits/usr.bin/userstat/userstat.sh#9 delete Differences ... ==== //depot/projects/soc2009/trasz_limits/usr.bin/Makefile#16 (text+ko) ==== @@ -64,6 +64,7 @@ id \ ipcrm \ ipcs \ + jailstat \ join \ jot \ kdump \ From owner-p4-projects@FreeBSD.ORG Fri Jan 21 16:53:54 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7754C1065696; Fri, 21 Jan 2011 16:53:54 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 39A8E106566B for ; Fri, 21 Jan 2011 16:53:54 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 25D868FC20 for ; Fri, 21 Jan 2011 16:53:54 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0LGrskn081134 for ; Fri, 21 Jan 2011 16:53:54 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0LGrrLC081131 for perforce@freebsd.org; Fri, 21 Jan 2011 16:53:53 GMT (envelope-from trasz@freebsd.org) Date: Fri, 21 Jan 2011 16:53:53 GMT Message-Id: <201101211653.p0LGrrLC081131@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188035 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 16:53:54 -0000 http://p4web.freebsd.org/@@188035?ac=10 Change 188035 by trasz@trasz_victim on 2011/01/21 16:53:15 Update TODO, expand manual page. Affected files ... .. //depot/projects/soc2009/trasz_limits/TODO#40 edit .. //depot/projects/soc2009/trasz_limits/usr.bin/rctl/rctl.8#3 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/TODO#40 (text+ko) ==== @@ -1,44 +1,29 @@ -Limits done: +TODO: - - CPU time (RUSAGE_CPU), in microseconds - - data size (RUSAGE_DATA), in megabytes - - maximum file size (RUSAGE_FSIZE), in megabytes - - number of processes (RUSAGE_NPROC) - - virtual memory usage (address space limit) (RUSAGE_VMEM), in megabytes - - maximum core size (RUSAGE_CORE), in megabytes (core, as in ELF program state dump) - - locked memory usage (RUSAGE_MEMLOCK), in megabytes - - resident set size (physical memory usage) (RUSAGE_RSS), in megabytes - - stack size (RUSAGE_STACK), in megabytes, - - number of file descriptors (RUSAGE_NOFILE) - - swap usage (RUSAGE_SWAP), in megabytes - - amount of memory consumed by socket buffers (RUSAGE_SBSIZE), in megabytes - - number of kernel-visible threads (RUSAGE_NTHR) - - wallclock time (RUSAGE_WALLCLOCK) - - %cpu time (RUSAGE_PCTCPU) - - number of SysV shared memory segments (RUSAGE_NSHM) - - SysV shared memory size, in megabytes (RUSAGE_SHMSIZE) - - number of SysV semaphores modified in a single semop(2) call (RUSAGE_NSEMOP) - - number of SysV semaphores (RUSAGE_NSEM) - - number of SysV queues (RUSAGE_NMSGQ) - - number of queued SysV messages (RUSAGE_MSGQQUEUED) - - SysV message queue size, in megabytes (RUSAGE_MSGQSIZE) + - Fix %CPU limits for shortly living processes. -Milestone 3: + - Consider replacing proc pointer with thread pointer in rusage_add(9) et al. + In most cases caller uses 'td->td_proc' anyway, and passing thread would + allow the HRL code to send a signal to the offending thread instead of the + offending process. It would also mean that these the functions would + no longer need to be called with proc lock held, because we could use + td->td_ucred, which is stable across the syscall. - - Fix %CPU limits for shortly living processes. - - Get rid of container_lock. Atomic instructions would be nice, but we really need 64 bits (per-process counters could be 32 bit, I guess, but the higher level containers could overflow), and atomic(9) doesn't support 64 bit values on 32 bit platforms. - - Consider replacing proc pointer with thread pointer in rusage_add(9) et al. - In most cases caller uses 'td->td_proc' anyway, and passing thread would - allow the HRL code to send a signal to the offending thread instead of the - offending process. + - Don't account resources for system processes. It's not as easy as checking + for P_SYSTEM flag, as the flag will be set for AIO kernel processes. + + Also, try to figure out what's going on with 'intr' p_flag - checking for P_SYSTEM + didn't really work for that process. Issues: + - Setting RSS limit too low can make the system thrash to death. + - We enforce limits when a process allocates a resource, and when it forks. We don't enforce limits when process changes its credentials, though. This might be either a bug or feature, depending on point of view. @@ -66,24 +51,6 @@ container mechanism. This is a part of HRL, and it's outside the scope of the containers project. This means the code is full of "#ifdef CONTAINERS". - - Don't account resources for system processes. It's not as easy as checking - for P_SYSTEM flag, as the flag will be set for AIO kernel processes. - - Also, try to figure out what's going on with 'intr' p_flag - checking for P_SYSTEM - didn't really work for that process. - - - Right now, the whole containers stuff is under a single mutex. This is internal - to containers, i.e. the API consumers don't need to care, thus it's easy to change. - - I'd need to run benchmarks first, but two strategies come to mind: - - 1. Replace container_lock with rmlock, protecting the container hierarchy. The lock - would be acquired for write in operations changing the hierarchy, and for read - for all other operations. When locked for read, the counters would be accessed - using atomic instructions. - - 2. Replace single container_lock with individual per-container mutexes. - - RUSAGE_NOFILE accounts for size of file descriptor table, rather than the number of file descriptors. This shouldn't be a problem, but might be worth keeping in mind. ==== //depot/projects/soc2009/trasz_limits/usr.bin/rctl/rctl.8#3 (text+ko) ==== @@ -116,6 +116,34 @@ or, in short, ":". A filter that matches all the login classes would be "loginclass:". A filter that matches all defined limits for maxprocesses resource would be "::maxprocesses". +.Pp +.Sh RESOURCES +.Bl -column -offset 3n "msgqqueued" +.It cpu CPU time, in microseconds +.It fsize maximum file size, in megabytes +.It data data size, in megabytes +.It stack stack size, in megabytes +.It core core dump size, in megabytes +.It rss resident set size, in megabytes +.It memlock locked memory, in megabytes +.It nproc number of processes +.It nofile file descriptor table size +.It sbsize memory consumed by socket buffers, in megabytes +.It vmem address space limit, in megabytes +.It npts number of PTYs +.It swap swap usage, in megabytes +.It nthr number of threads +.It msgqqueued number of queued SysV messages +.It msgqsize SysV message queue size, in megabytes +.It nmsgq number of SysV message queues +.It nsem number of SysV semaphores +.It nsemop number of SysV semaphores modified in a single semop(2) call +.It nshm number of SysV shared memory segments +.It shmsize SysV shared memory size, in megabytes +.It wallclock wallclock time +.It pctcpu %cpu time +.El +.Pp .Sh EXIT STATUS .Ex -std .Sh SEE ALSO From owner-p4-projects@FreeBSD.ORG Fri Jan 21 17:11:29 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C29011065784; Fri, 21 Jan 2011 17:11:28 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 82A53106574B for ; Fri, 21 Jan 2011 17:11:28 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 6E0C98FC14 for ; Fri, 21 Jan 2011 17:11:28 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0LHBSAC086163 for ; Fri, 21 Jan 2011 17:11:28 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0LHBSRp086159 for perforce@freebsd.org; Fri, 21 Jan 2011 17:11:28 GMT (envelope-from trasz@freebsd.org) Date: Fri, 21 Jan 2011 17:11:28 GMT Message-Id: <201101211711.p0LHBSRp086159@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188036 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 17:11:29 -0000 http://p4web.freebsd.org/@@188036?ac=10 Change 188036 by trasz@trasz_victim on 2011/01/21 17:11:09 Since rusage_{add,sub,set} functions dereference p_ucred, we need to keep proc lock held when calling them. In the future I'll probably move to using thread pointers instead of proc pointers, and I'll be able to use td_ucred, which is stable; for now, this will have to do. It's not _that_ ugly. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/imgact_elf.c#23 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/init_main.c#36 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#57 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_descrip.c#19 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_exit.c#30 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_fork.c#31 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#13 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_sig.c#20 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_thr.c#13 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/sysv_msg.c#10 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/sysv_sem.c#11 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/sysv_shm.c#12 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/tty_pts.c#24 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/uipc_sockbuf.c#8 edit .. //depot/projects/soc2009/trasz_limits/sys/vm/swap_pager.c#18 edit .. //depot/projects/soc2009/trasz_limits/sys/vm/vm_glue.c#13 edit .. //depot/projects/soc2009/trasz_limits/sys/vm/vm_map.c#31 edit .. //depot/projects/soc2009/trasz_limits/sys/vm/vm_mmap.c#23 edit .. //depot/projects/soc2009/trasz_limits/sys/vm/vm_pageout.c#24 edit .. //depot/projects/soc2009/trasz_limits/sys/vm/vm_unix.c#14 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/imgact_elf.c#23 (text+ko) ==== @@ -1105,7 +1105,10 @@ hdrsize = 0; __elfN(puthdr)(td, (void *)NULL, &hdrsize, seginfo.count); - if (rusage_add(td->td_proc, RUSAGE_CORE, hdrsize + seginfo.size)) { + PROC_LOCK(td->td_proc); + error = rusage_add(td->td_proc, RUSAGE_CORE, hdrsize + seginfo.size); + PROC_UNLOCK(td->td_proc); + if (error != 0) { error = EFAULT; goto done; } ==== //depot/projects/soc2009/trasz_limits/sys/kern/init_main.c#36 (text+ko) ==== @@ -553,7 +553,9 @@ * Charge root for one process. */ (void)chgproccnt(p->p_ucred->cr_ruidinfo, 1, 0); + PROC_LOCK(p); rusage_add_force(p, RUSAGE_NPROC, 1); + PROC_UNLOCK(p); } SYSINIT(p0init, SI_SUB_INTRINSIC, SI_ORDER_FIRST, proc0_init, NULL); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#57 (text+ko) ==== @@ -306,6 +306,10 @@ SDT_PROBE(container, kernel, rusage, add, p, resource, amount, 0, 0); + /* + * We need proc lock to dereference p->p_ucred. + */ + PROC_LOCK_ASSERT(p, MA_OWNED); KASSERT(amount >= 0, ("rusage_add: invalid amount for resource %d: %ju", resource, amount)); @@ -369,6 +373,10 @@ SDT_PROBE(container, kernel, rusage, add_force, p, resource, amount, 0, 0); + /* + * We need proc lock to dereference p->p_ucred. + */ + PROC_LOCK_ASSERT(p, MA_OWNED); KASSERT(amount >= 0, ("rusage_add_force: invalid amount for resource %d: %ju", resource, amount)); @@ -391,6 +399,10 @@ SDT_PROBE(container, kernel, rusage, set, p, resource, amount, 0, 0); + /* + * We need proc lock to dereference p->p_ucred. + */ + PROC_LOCK_ASSERT(p, MA_OWNED); KASSERT(amount >= 0, ("rusage_set: invalid amount for resource %d: %ju", resource, amount)); @@ -446,6 +458,10 @@ SDT_PROBE(container, kernel, rusage, set, p, resource, amount, 0, 0); + /* + * We need proc lock to dereference p->p_ucred. + */ + PROC_LOCK_ASSERT(p, MA_OWNED); KASSERT(amount >= 0, ("rusage_set: invalid amount for resource %d: %ju", resource, amount)); @@ -505,6 +521,10 @@ SDT_PROBE(container, kernel, rusage, sub, p, resource, amount, 0, 0); + /* + * We need proc lock to dereference p->p_ucred. + */ + PROC_LOCK_ASSERT(p, MA_OWNED); KASSERT(amount >= 0, ("rusage_sub: invalid amount for resource %d: %ju", resource, amount)); KASSERT(container_resource_reclaimable(resource), @@ -600,15 +620,10 @@ } out: - mtx_unlock(&container_lock); - PROC_UNLOCK(child); - PROC_UNLOCK(parent); - #ifdef RCTL if (error == 0) { error = rctl_proc_fork(parent, child); if (error != 0) { - mtx_lock(&container_lock); /* * XXX: The only purpose of these two lines is to prevent from * tripping checks in container_destroy(). @@ -616,11 +631,14 @@ for (i = 0; i <= RUSAGE_MAX; i++) rusage_set_locked(child, i, 0); container_destroy_locked(&child->p_container); - mtx_unlock(&container_lock); } } #endif + mtx_unlock(&container_lock); + PROC_UNLOCK(child); + PROC_UNLOCK(parent); + return (error); } @@ -630,10 +648,12 @@ /* * XXX: Free this some other way. */ + PROC_LOCK(p); rusage_set(p, RUSAGE_FSIZE, 0); rusage_set(p, RUSAGE_NPTS, 0); rusage_set(p, RUSAGE_NTHR, 0); rusage_set(p, RUSAGE_RSS, 0); + PROC_UNLOCK(p); #ifdef RCTL rctl_proc_exit(p); @@ -774,11 +794,13 @@ else rusage_throttle(p, 0); PROC_SUNLOCK(p); - rusage_set(p, RUSAGE_CPU, cputick2usec(p->p_rux.rux_runtime)); microuptime(&wallclock); timevalsub(&wallclock, &p->p_stats->p_start); + PROC_LOCK(p); rusage_set(p, RUSAGE_WALLCLOCK, wallclock.tv_sec * 1000000 + wallclock.tv_usec); rusage_set(p, RUSAGE_PCTCPU, pctcpu); + rusage_set(p, RUSAGE_CPU, cputick2usec(p->p_rux.rux_runtime)); + PROC_UNLOCK(p); } sx_sunlock(&allproc_lock); pause("-", hz); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_descrip.c#19 (text+ko) ==== @@ -279,8 +279,8 @@ PROC_LOCK(p); td->td_retval[0] = min((int)lim_cur(p, RLIMIT_NOFILE), maxfilesperproc); + lim = rusage_get_limit(td->td_proc, RUSAGE_NOFILE); PROC_UNLOCK(p); - lim = rusage_get_limit(td->td_proc, RUSAGE_NOFILE); if (lim < td->td_retval[0]) td->td_retval[0] = lim; return (0); @@ -804,7 +804,10 @@ * descriptors, just put the limit on the size of the file * descriptor table. */ - if (rusage_set(p, RUSAGE_NOFILE, new + 1)) { + PROC_LOCK(p); + error = rusage_set(p, RUSAGE_NOFILE, new + 1); + PROC_UNLOCK(p); + if (error != 0) { FILEDESC_XUNLOCK(fdp); fdrop(fp, td); return (EMFILE); @@ -1456,7 +1459,7 @@ { struct proc *p = td->td_proc; struct filedesc *fdp = p->p_fd; - int fd = -1, maxfd; + int fd = -1, maxfd, error; FILEDESC_XLOCK_ASSERT(fdp); @@ -1479,7 +1482,10 @@ return (EMFILE); if (fd < fdp->fd_nfiles) break; - if (rusage_set(p, RUSAGE_NOFILE, min(fdp->fd_nfiles * 2, maxfd))) + PROC_LOCK(p); + error = rusage_set(p, RUSAGE_NOFILE, min(fdp->fd_nfiles * 2, maxfd)); + PROC_UNLOCK(p); + if (error != 0) return (EMFILE); fdgrowtable(fdp, min(fdp->fd_nfiles * 2, maxfd)); } @@ -1763,7 +1769,9 @@ if (fdp == NULL) return; + PROC_LOCK(td->td_proc); rusage_set(td->td_proc, RUSAGE_NOFILE, 0); + PROC_UNLOCK(td->td_proc); /* Check for special need to clear POSIX style locks */ fdtol = td->td_proc->p_fdtol; ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_exit.c#30 (text+ko) ==== @@ -741,13 +741,17 @@ * Decrement the count of procs running with this uid. */ (void)chgproccnt(p->p_ucred->cr_ruidinfo, -1, 0); - rusage_set(p, RUSAGE_CPU, cputick2usec(p->p_rux.rux_runtime)); - rusage_sub(p->p_pptr, RUSAGE_NPROC, 1); /* * Destroy resource container associated with the process. */ + PROC_LOCK(p); + rusage_set(p, RUSAGE_CPU, cputick2usec(p->p_rux.rux_runtime)); + PROC_UNLOCK(p); container_proc_exit(p); + PROC_LOCK(p->p_pptr); + rusage_sub(p->p_pptr, RUSAGE_NPROC, 1); + PROC_UNLOCK(p->p_pptr); /* * Free credentials, arguments, and sigacts. @@ -908,10 +912,11 @@ if (child->p_pptr == parent) return; - rusage_sub(child->p_pptr, RUSAGE_NPROC, 1); + PROC_LOCK(parent); rusage_add_force(parent, RUSAGE_NPROC, 1); - + PROC_UNLOCK(parent); PROC_LOCK(child->p_pptr); + rusage_sub(child->p_pptr, RUSAGE_NPROC, 1); sigqueue_take(child->p_ksi); PROC_UNLOCK(child->p_pptr); LIST_REMOVE(child, p_sibling); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_fork.c#31 (text+ko) ==== @@ -712,7 +712,9 @@ return (fork_norfproc(td, flags)); } + PROC_LOCK(p1); error = rusage_add(p1, RUSAGE_NPROC, 1); + PROC_UNLOCK(p1); if (error != 0) return (error); @@ -801,7 +803,9 @@ /* * After fork, there is exactly one thread running. */ + PROC_LOCK(newproc); error = rusage_set(newproc, RUSAGE_NTHR, 1); + PROC_UNLOCK(newproc); if (error != 0) { error = EAGAIN; goto fail; @@ -848,7 +852,9 @@ vmspace_free(vm2); uma_zfree(proc_zone, newproc); pause("fork", hz / 2); + PROC_LOCK(p1); rusage_sub(p1, RUSAGE_NPROC, 1); + PROC_UNLOCK(p1); return (error); } ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#13 (text+ko) ==== @@ -185,24 +185,6 @@ panic("rctl_resource_name: unknown resource %d", resource); } -static void -rctl_deferred_psignal(struct proc *p, int signum) -{ - int need_lock; - - /* - * XXX: This is ugly. Either turn it into a real taskqueue, - * or think about the locking and don't lock proc here. - */ - need_lock = !PROC_LOCKED(p); - - if (need_lock) - PROC_LOCK(p); - psignal(p, signum); - if (need_lock) - PROC_UNLOCK(p); -} - /* * Return the amount of resource that can be allocated by 'p' before * hitting 'rule'. @@ -325,22 +307,22 @@ free(buf, M_RCTL); continue; case RCTL_ACTION_SIGHUP: - rctl_deferred_psignal(p, SIGHUP); + psignal(p, SIGHUP); continue; case RCTL_ACTION_SIGINT: - rctl_deferred_psignal(p, SIGINT); + psignal(p, SIGINT); continue; case RCTL_ACTION_SIGKILL: - rctl_deferred_psignal(p, SIGKILL); + psignal(p, SIGKILL); continue; case RCTL_ACTION_SIGSEGV: - rctl_deferred_psignal(p, SIGSEGV); + psignal(p, SIGSEGV); continue; case RCTL_ACTION_SIGXCPU: - rctl_deferred_psignal(p, SIGXCPU); + psignal(p, SIGXCPU); continue; case RCTL_ACTION_SIGXFSZ: - rctl_deferred_psignal(p, SIGXFSZ); + psignal(p, SIGXFSZ); continue; default: panic("rctl_enforce: unknown action %d", ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_sig.c#20 (text+ko) ==== @@ -3169,15 +3169,15 @@ * if it is larger than the limit. */ limit = (off_t)lim_cur(p, RLIMIT_CORE); - PROC_UNLOCK(p); - if (limit == 0 && rusage_add(td->td_proc, RUSAGE_CORE, 1) == 0) { - rusage_sub(td->td_proc, RUSAGE_CORE, 1); + if (limit == 0 && rusage_get_available(p, RUSAGE_CORE) == 0) { + PROC_UNLOCK(p); #ifdef AUDIT audit_proc_coredump(td, name, EFBIG); #endif free(name, M_TEMP); return (EFBIG); } + PROC_UNLOCK(p); restart: NDINIT(&nd, LOOKUP, NOFOLLOW | MPSAFE, UIO_SYSSPACE, name, td); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_thr.c#13 (text+ko) ==== @@ -176,7 +176,11 @@ return (EINVAL); } } - if (rusage_add(p, RUSAGE_NTHR, 1)) + + PROC_LOCK(td->td_proc); + error = rusage_add(p, RUSAGE_NTHR, 1); + PROC_UNLOCK(td->td_proc); + if (error != 0) return (EPROCLIM); /* Initialize our td */ @@ -265,7 +269,9 @@ return (0); fail: + PROC_LOCK(p); rusage_sub(p, RUSAGE_NTHR, 1); + PROC_UNLOCK(p); return (error); } @@ -297,9 +303,9 @@ rw_wlock(&tidhash_lock); + PROC_LOCK(p); rusage_sub(p, RUSAGE_NTHR, 1); - PROC_LOCK(p); /* * Shutting down last thread in the proc. This will actually * call exit() in the trampoline when it returns. ==== //depot/projects/soc2009/trasz_limits/sys/kern/sysv_msg.c#10 (text+ko) ==== @@ -618,7 +618,10 @@ error = ENOSPC; goto done2; } - if (rusage_add(td->td_proc, RUSAGE_NMSGQ, 1)) { + PROC_LOCK(td->td_proc); + error = rusage_add(td->td_proc, RUSAGE_NMSGQ, 1); + PROC_UNLOCK(td->td_proc); + if (error != 0) { error = ENOSPC; goto done2; } @@ -719,16 +722,20 @@ goto done2; #endif + PROC_LOCK(td->td_proc); if (rusage_add(td->td_proc, RUSAGE_MSGQQUEUED, 1)) { + PROC_UNLOCK(td->td_proc); error = EAGAIN; goto done2; } saved_msgsz = msgsz; if (rusage_add(td->td_proc, RUSAGE_MSGQSIZE, msgsz)) { rusage_sub(td->td_proc, RUSAGE_MSGQQUEUED, 1); + PROC_UNLOCK(td->td_proc); error = EAGAIN; goto done2; } + PROC_UNLOCK(td->td_proc); segs_needed = (msgsz + msginfo.msgssz - 1) / msginfo.msgssz; DPRINTF(("msgsz=%zu, msgssz=%d, segs_needed=%d\n", msgsz, @@ -984,8 +991,10 @@ td->td_retval[0] = 0; done3: if (error != 0) { + PROC_LOCK(td->td_proc); rusage_sub(td->td_proc, RUSAGE_MSGQQUEUED, 1); rusage_sub(td->td_proc, RUSAGE_MSGQSIZE, saved_msgsz); + PROC_UNLOCK(td->td_proc); } done2: mtx_unlock(&msq_mtx); ==== //depot/projects/soc2009/trasz_limits/sys/kern/sysv_sem.c#11 (text+ko) ==== @@ -929,7 +929,10 @@ error = ENOSPC; goto done2; } - if (rusage_add(td->td_proc, RUSAGE_NSEM, nsems)) { + PROC_LOCK(td->td_proc); + error = rusage_add(td->td_proc, RUSAGE_NSEM, nsems); + PROC_UNLOCK(td->td_proc); + if (error != 0) { error = ENOSPC; goto done2; } @@ -1018,10 +1021,16 @@ DPRINTF(("too many sops (max=%d, nsops=%d)\n", seminfo.semopm, nsops)); return (E2BIG); - } else if (nsops > rusage_get_available(td->td_proc, RUSAGE_NSEMOP)) { - return (E2BIG); - } else + } else { + PROC_LOCK(td->td_proc); + if (nsops > rusage_get_available(td->td_proc, RUSAGE_NSEMOP)) { + PROC_UNLOCK(td->td_proc); + return (E2BIG); + } + PROC_UNLOCK(td->td_proc); + sops = malloc(nsops * sizeof(*sops), M_TEMP, M_WAITOK); + } if ((error = copyin(uap->sops, sops, nsops * sizeof(sops[0]))) != 0) { DPRINTF(("error = %d from copyin(%p, %p, %d)\n", error, uap->sops, sops, nsops * sizeof(sops[0]))); ==== //depot/projects/soc2009/trasz_limits/sys/kern/sysv_shm.c#12 (text+ko) ==== @@ -670,12 +670,17 @@ shm_last_free = -1; } shmseg = &shmsegs[segnum]; - if (rusage_add(td->td_proc, RUSAGE_NSHM, 1)) + PROC_LOCK(td->td_proc); + if (rusage_add(td->td_proc, RUSAGE_NSHM, 1)) { + PROC_UNLOCK(td->td_proc); return (ENOSPC); + } if (rusage_add(td->td_proc, RUSAGE_SHMSIZE, size)) { rusage_sub(td->td_proc, RUSAGE_NSHM, 1); + PROC_UNLOCK(td->td_proc); return (ENOMEM); } + PROC_UNLOCK(td->td_proc); /* * In case we sleep in malloc(), mark the segment present but deleted * so that noone else tries to create the same key. @@ -692,8 +697,10 @@ shm_object = vm_pager_allocate(shm_use_phys ? OBJT_PHYS : OBJT_SWAP, 0, size, VM_PROT_DEFAULT, 0, cred); if (shm_object == NULL) { + PROC_LOCK(td->td_proc); rusage_sub(td->td_proc, RUSAGE_NSHM, 1); rusage_sub(td->td_proc, RUSAGE_SHMSIZE, size); + PROC_UNLOCK(td->td_proc); return (ENOMEM); } VM_OBJECT_LOCK(shm_object); ==== //depot/projects/soc2009/trasz_limits/sys/kern/tty_pts.c#24 (text+ko) ==== @@ -721,16 +721,19 @@ struct ucred *cred = td->td_ucred; /* Resource limiting. */ + PROC_LOCK(p); error = rusage_add(p, RUSAGE_NPTS, 1); - if (error != 0) + if (error != 0) { + PROC_UNLOCK(p); return (EAGAIN); - PROC_LOCK(p); + } ok = chgptscnt(cred->cr_ruidinfo, 1, lim_cur(p, RLIMIT_NPTS)); - PROC_UNLOCK(p); if (!ok) { rusage_sub(p, RUSAGE_NPTS, 1); + PROC_UNLOCK(p); return (EAGAIN); } + PROC_UNLOCK(p); /* Try to allocate a new pts unit number. */ unit = alloc_unr(pts_pool); @@ -772,16 +775,19 @@ struct ucred *cred = td->td_ucred; /* Resource limiting. */ + PROC_LOCK(p); error = rusage_add(p, RUSAGE_NPTS, 1); - if (error != 0) + if (error != 0) { + PROC_UNLOCK(p); return (EAGAIN); - PROC_LOCK(p); + } ok = chgptscnt(cred->cr_ruidinfo, 1, lim_cur(p, RLIMIT_NPTS)); - PROC_UNLOCK(p); if (!ok) { rusage_sub(p, RUSAGE_NPTS, 1); + PROC_UNLOCK(p); return (EAGAIN); } + PROC_UNLOCK(p); /* Allocate TTY and softc. */ psc = malloc(sizeof(struct pts_softc), M_PTS, M_WAITOK|M_ZERO); ==== //depot/projects/soc2009/trasz_limits/sys/kern/uipc_sockbuf.c#8 (text+ko) ==== @@ -307,8 +307,8 @@ if (td != NULL) { PROC_LOCK(td->td_proc); sbsize_limit = lim_cur(td->td_proc, RLIMIT_SBSIZE); + error = rusage_add(td->td_proc, RUSAGE_SBSIZE, cc); PROC_UNLOCK(td->td_proc); - error = rusage_add(td->td_proc, RUSAGE_SBSIZE, cc); if (error != 0) return (0); } else { ==== //depot/projects/soc2009/trasz_limits/sys/vm/swap_pager.c#18 (text+ko) ==== @@ -192,7 +192,10 @@ if (incr & PAGE_MASK) panic("swap_reserve: & PAGE_MASK"); - if (rusage_add(curproc, RUSAGE_SWAP, incr)) + PROC_LOCK(curproc); + error = rusage_add(curproc, RUSAGE_SWAP, incr); + PROC_UNLOCK(curproc); + if (error != 0) return (0); res = 0; @@ -233,8 +236,11 @@ curproc->p_pid, uip->ui_uid, incr); } - if (!res) + if (!res) { + PROC_LOCK(curproc); rusage_sub(curproc, RUSAGE_SWAP, incr); + PROC_UNLOCK(curproc); + } return (res); } @@ -248,7 +254,9 @@ swap_reserved += incr; mtx_unlock(&sw_dev_mtx); + PROC_LOCK(curproc); rusage_add_force(curproc, RUSAGE_SWAP, incr); + PROC_UNLOCK(curproc); uip = curthread->td_ucred->cr_ruidinfo; PROC_LOCK(curproc); ==== //depot/projects/soc2009/trasz_limits/sys/vm/vm_glue.c#13 (text+ko) ==== @@ -202,6 +202,10 @@ PROC_UNLOCK(curproc); return (ENOMEM); } + if (rusage_set(curproc, RUSAGE_MEMLOCK, nsize)) { + PROC_UNLOCK(curproc); + return (ENOMEM); + } PROC_UNLOCK(curproc); #if 0 /* @@ -216,13 +220,14 @@ if (npages + cnt.v_wire_count > vm_page_max_wired) return (EAGAIN); #endif - if (rusage_set(curproc, RUSAGE_MEMLOCK, nsize)) - return (ENOMEM); error = vm_map_wire(&curproc->p_vmspace->vm_map, start, end, VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES); - if (error != KERN_SUCCESS) + if (error != KERN_SUCCESS) { + PROC_LOCK(curproc); rusage_set(curproc, RUSAGE_MEMLOCK, ptoa(pmap_wired_count(vm_map_pmap(&curproc->p_vmspace->vm_map)))); + PROC_UNLOCK(curproc); + } /* * Return EFAULT on error to match copy{in,out}() behaviour * rather than returning ENOMEM like mlock() would. @@ -239,8 +244,10 @@ trunc_page((vm_offset_t)addr), round_page((vm_offset_t)addr + len), VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES); + PROC_LOCK(curproc); rusage_set(curproc, RUSAGE_MEMLOCK, ptoa(pmap_wired_count(vm_map_pmap(&curproc->p_vmspace->vm_map)))); + PROC_UNLOCK(curproc); } /* ==== //depot/projects/soc2009/trasz_limits/sys/vm/vm_map.c#31 (text+ko) ==== @@ -318,11 +318,13 @@ vmspace_container_reset(struct proc *p) { + PROC_LOCK(p); rusage_set(p, RUSAGE_DATA, 0); rusage_set(p, RUSAGE_STACK, 0); rusage_set(p, RUSAGE_RSS, 0); rusage_set(p, RUSAGE_MEMLOCK, 0); rusage_set(p, RUSAGE_VMEM, 0); + PROC_UNLOCK(p); } static inline void @@ -3397,11 +3399,14 @@ vm_map_unlock_read(map); return (KERN_NO_SPACE); } + PROC_LOCK(p); if (is_procstack && rusage_set(p, RUSAGE_STACK, ctob(vm->vm_ssize) + grow_amount)) { + PROC_UNLOCK(p); vm_map_unlock_read(map); return (KERN_NO_SPACE); } + PROC_UNLOCK(p); /* Round up the grow amount modulo SGROWSIZ */ grow_amount = roundup (grow_amount, sgrowsiz); @@ -3412,7 +3417,9 @@ ctob(vm->vm_ssize); } #ifdef notyet + PROC_LOCK(p); limit = rusage_get_available(p, RUSAGE_STACK); + PROC_UNLOCK(p); if (is_procstack && (ctob(vm->vm_ssize) + grow_amount > limit)) grow_amount = limit - ctob(vm->vm_ssize); #endif @@ -3423,11 +3430,14 @@ rv = KERN_NO_SPACE; goto out; } + PROC_LOCK(p); if (rusage_set(p, RUSAGE_VMEM, map->size + grow_amount)) { + PROC_UNLOCK(p); vm_map_unlock_read(map); rv = KERN_NO_SPACE; goto out; } + PROC_UNLOCK(p); if (vm_map_lock_upgrade(map)) goto Retry; @@ -3528,10 +3538,12 @@ out: if (rv != KERN_SUCCESS) { + PROC_LOCK(p); error = rusage_set(p, RUSAGE_VMEM, map->size); KASSERT(error == 0, ("decreasing RUSAGE_VMEM failed")); error = rusage_set(p, RUSAGE_STACK, ctob(vm->vm_ssize)); KASSERT(error == 0, ("decreasing RUSAGE_STACK failed")); + PROC_UNLOCK(p); } return (rv); ==== //depot/projects/soc2009/trasz_limits/sys/vm/vm_mmap.c#23 (text+ko) ==== @@ -1058,13 +1058,19 @@ PROC_UNLOCK(proc); if (npages + cnt.v_wire_count > vm_page_max_wired) return (EAGAIN); - if (rusage_set(proc, RUSAGE_MEMLOCK, nsize)) + PROC_LOCK(proc); + error = rusage_set(proc, RUSAGE_MEMLOCK, nsize); + PROC_UNLOCK(proc); + if (error != 0) return (ENOMEM); error = vm_map_wire(&proc->p_vmspace->vm_map, start, end, VM_MAP_WIRE_USER | VM_MAP_WIRE_NOHOLES); - if (error != KERN_SUCCESS) + if (error != KERN_SUCCESS) { + PROC_LOCK(proc); rusage_set(proc, RUSAGE_MEMLOCK, ptoa(pmap_wired_count(vm_map_pmap(&proc->p_vmspace->vm_map)))); + PROC_UNLOCK(proc); + } return (error == KERN_SUCCESS ? 0 : ENOMEM); } @@ -1107,7 +1113,10 @@ if (error) return (error); #endif - if (rusage_set(td->td_proc, RUSAGE_MEMLOCK, map->size)) + PROC_LOCK(td->td_proc); + error = rusage_set(td->td_proc, RUSAGE_MEMLOCK, map->size); + PROC_UNLOCK(td->td_proc); + if (error != 0) return (ENOMEM); if (uap->how & MCL_FUTURE) { @@ -1128,9 +1137,12 @@ VM_MAP_WIRE_USER|VM_MAP_WIRE_HOLESOK); error = (error == KERN_SUCCESS ? 0 : EAGAIN); } - if (error != KERN_SUCCESS) + if (error != KERN_SUCCESS) { + PROC_LOCK(td->td_proc); rusage_set(td->td_proc, RUSAGE_MEMLOCK, ptoa(pmap_wired_count(vm_map_pmap(&td->td_proc->p_vmspace->vm_map)))); + PROC_UNLOCK(td->td_proc); + } return (error); } @@ -1165,8 +1177,11 @@ /* Forcibly unwire all pages. */ error = vm_map_unwire(map, vm_map_min(map), vm_map_max(map), VM_MAP_WIRE_USER|VM_MAP_WIRE_HOLESOK); - if (error == KERN_SUCCESS) + if (error == KERN_SUCCESS) { + PROC_LOCK(td->td_proc); rusage_set(td->td_proc, RUSAGE_MEMLOCK, 0); + PROC_UNLOCK(td->td_proc); + } return (error); } @@ -1201,8 +1216,11 @@ return (EINVAL); error = vm_map_unwire(&td->td_proc->p_vmspace->vm_map, start, end, VM_MAP_WIRE_USER | VM_MAP_WIRE_NOHOLES); - if (error == KERN_SUCCESS) + if (error == KERN_SUCCESS) { + PROC_LOCK(td->td_proc); rusage_sub(td->td_proc, RUSAGE_MEMLOCK, ptoa(end - start)); + PROC_UNLOCK(td->td_proc); + } return (error == KERN_SUCCESS ? 0 : ENOMEM); } @@ -1435,10 +1453,12 @@ PROC_UNLOCK(td->td_proc); return(ENOMEM); } - PROC_UNLOCK(td->td_proc); if (rusage_set(td->td_proc, RUSAGE_VMEM, - td->td_proc->p_vmspace->vm_map.size + size)) + td->td_proc->p_vmspace->vm_map.size + size)) { + PROC_UNLOCK(td->td_proc); return (ENOMEM); + } + PROC_UNLOCK(td->td_proc); /* * We currently can only deal with page aligned file offsets. ==== //depot/projects/soc2009/trasz_limits/sys/vm/vm_pageout.c#24 (text+ko) ==== @@ -1711,8 +1711,10 @@ &vm->vm_map, limit); } rsize = IDX_TO_OFF(size); + PROC_LOCK(p); rusage_set(p, RUSAGE_RSS, rsize); ravailable = rusage_get_available(p, RUSAGE_RSS); + PROC_UNLOCK(p); if (rsize > ravailable) { /* * Don't be overly aggressive; this might be @@ -1730,7 +1732,9 @@ /* Update RSS usage after paging out. */ size = vmspace_resident_count(vm); rsize = IDX_TO_OFF(size); + PROC_LOCK(p); rusage_set(p, RUSAGE_RSS, rsize); + PROC_UNLOCK(p); if (rsize > ravailable) tryagain++; if (tryagain > 20) { ==== //depot/projects/soc2009/trasz_limits/sys/vm/vm_unix.c#14 (text+ko) ==== @@ -117,8 +117,10 @@ error = ENOMEM; goto done; } + PROC_LOCK(td->td_proc); error = rusage_set(td->td_proc, RUSAGE_DATA, new - base); if (error != 0) { + PROC_UNLOCK(td->td_proc); error = ENOMEM; goto done; } @@ -126,14 +128,18 @@ vm->vm_map.size + (new - old)); if (error != 0) { rusage_set_force(td->td_proc, RUSAGE_DATA, old - base); + PROC_UNLOCK(td->td_proc); error = ENOMEM; goto done; } + PROC_UNLOCK(td->td_proc); rv = vm_map_insert(&vm->vm_map, NULL, 0, old, new, VM_PROT_RW, VM_PROT_ALL, 0); if (rv != KERN_SUCCESS) { + PROC_LOCK(td->td_proc); rusage_set_force(td->td_proc, RUSAGE_DATA, old - base); rusage_set_force(td->td_proc, RUSAGE_VMEM, vm->vm_map.size); + PROC_UNLOCK(td->td_proc); error = ENOMEM; goto done; } @@ -159,8 +165,10 @@ goto done; } vm->vm_dsize -= btoc(old - new); + PROC_LOCK(td->td_proc); rusage_set_force(td->td_proc, RUSAGE_DATA, new - base); rusage_set_force(td->td_proc, RUSAGE_VMEM, vm->vm_map.size); + PROC_UNLOCK(td->td_proc); } done: vm_map_unlock(&vm->vm_map); From owner-p4-projects@FreeBSD.ORG Fri Jan 21 18:50:09 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 747AD1065675; Fri, 21 Jan 2011 18:50:09 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 371841065672 for ; Fri, 21 Jan 2011 18:50:09 +0000 (UTC) (envelope-from trasz@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 245B68FC13 for ; Fri, 21 Jan 2011 18:50:09 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0LIo9MU010546 for ; Fri, 21 Jan 2011 18:50:09 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0LIo9iD010543 for perforce@freebsd.org; Fri, 21 Jan 2011 18:50:09 GMT (envelope-from trasz@freebsd.org) Date: Fri, 21 Jan 2011 18:50:09 GMT Message-Id: <201101211850.p0LIo9iD010543@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to trasz@freebsd.org using -f From: Edward Tomasz Napierala To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188039 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 18:50:09 -0000 http://p4web.freebsd.org/@@188039?ac=10 Change 188039 by trasz@trasz_victim on 2011/01/21 18:49:42 We need proc lock to use FOREACH_THREAD_IN_PROC(). Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#58 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#58 (text+ko) ==== @@ -712,6 +712,8 @@ u_char newpri; int type; + PROC_LOCK_ASSERT(p, MA_OWNED); + if (throttle) { p->p_flag |= P_THROTTLED; newpri = PRI_MIN_IDLE; @@ -781,6 +783,7 @@ FOREACH_PROC_IN_SYSTEM(p) { pctcpu_limit = rusage_get_limit(p, RUSAGE_PCTCPU); pctcpu = 0; + PROC_LOCK(p); PROC_SLOCK(p); FOREACH_THREAD_IN_PROC(p, td) { ruxagg(p, td); @@ -788,15 +791,14 @@ pctcpu += sched_pctcpu(td); thread_unlock(td); } + PROC_SUNLOCK(p); pctcpu = ((pctcpu * 10000 + FSCALE / 2) >> FSHIFT) / 100; if (pctcpu > pctcpu_limit) rusage_throttle(p, 1); else rusage_throttle(p, 0); - PROC_SUNLOCK(p); microuptime(&wallclock); timevalsub(&wallclock, &p->p_stats->p_start); - PROC_LOCK(p); rusage_set(p, RUSAGE_WALLCLOCK, wallclock.tv_sec * 1000000 + wallclock.tv_usec); rusage_set(p, RUSAGE_PCTCPU, pctcpu); rusage_set(p, RUSAGE_CPU, cputick2usec(p->p_rux.rux_runtime)); From owner-p4-projects@FreeBSD.ORG Fri Jan 21 22:19:51 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 311F4106566C; Fri, 21 Jan 2011 22:19:51 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E4DB71065675 for ; Fri, 21 Jan 2011 22:19:50 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id C9C0F8FC08 for ; Fri, 21 Jan 2011 22:19:50 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0LMJo6f056311 for ; Fri, 21 Jan 2011 22:19:50 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0LMJZxJ056308 for perforce@freebsd.org; Fri, 21 Jan 2011 22:19:35 GMT (envelope-from mjacob@freebsd.org) Date: Fri, 21 Jan 2011 22:19:35 GMT Message-Id: <201101212219.p0LMJZxJ056308@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188045 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jan 2011 22:19:51 -0000 http://p4web.freebsd.org/@@188045?ac=10 Change 188045 by mjacob@mjacob-sandbox on 2011/01/21 22:18:42 Integrate from Vendor Affected files ... .. //depot/projects/mjacob-dev/COPYRIGHT#2 integrate .. //depot/projects/mjacob-dev/Makefile#2 integrate .. //depot/projects/mjacob-dev/Makefile.inc1#2 integrate .. //depot/projects/mjacob-dev/Makefile.mips#2 integrate .. //depot/projects/mjacob-dev/ObsoleteFiles.inc#2 integrate .. //depot/projects/mjacob-dev/UPDATING#2 integrate .. //depot/projects/mjacob-dev/bin/csh/USD.doc/csh.1#2 delete .. //depot/projects/mjacob-dev/bin/csh/USD.doc/csh.2#2 delete .. //depot/projects/mjacob-dev/bin/csh/USD.doc/csh.3#2 delete .. //depot/projects/mjacob-dev/bin/csh/USD.doc/csh.4#2 delete .. //depot/projects/mjacob-dev/bin/csh/USD.doc/csh.a#2 delete .. //depot/projects/mjacob-dev/bin/csh/USD.doc/csh.g#2 delete .. //depot/projects/mjacob-dev/bin/csh/USD.doc/tabs#2 delete .. //depot/projects/mjacob-dev/bin/kill/kill.1#2 integrate .. //depot/projects/mjacob-dev/bin/kill/kill.c#2 integrate .. //depot/projects/mjacob-dev/bin/ps/print.c#2 integrate .. //depot/projects/mjacob-dev/bin/setfacl/setfacl.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/Makefile#2 integrate .. //depot/projects/mjacob-dev/bin/sh/alias.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/arith_lex.l#2 integrate .. //depot/projects/mjacob-dev/bin/sh/bltin/bltin.h#2 integrate .. //depot/projects/mjacob-dev/bin/sh/builtins.def#2 integrate .. //depot/projects/mjacob-dev/bin/sh/cd.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/error.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/error.h#2 integrate .. //depot/projects/mjacob-dev/bin/sh/eval.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/exec.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/expand.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/expand.h#2 integrate .. //depot/projects/mjacob-dev/bin/sh/histedit.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/jobs.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/main.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/memalloc.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/memalloc.h#2 integrate .. //depot/projects/mjacob-dev/bin/sh/output.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/parser.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/redir.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/sh.1#2 integrate .. //depot/projects/mjacob-dev/bin/sh/trap.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/trap.h#2 integrate .. //depot/projects/mjacob-dev/bin/sh/var.c#2 integrate .. //depot/projects/mjacob-dev/bin/sh/var.h#2 integrate .. //depot/projects/mjacob-dev/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_pool.c#2 integrate .. //depot/projects/mjacob-dev/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/CHANGES#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/RELEASE-NOTES-BIND-9.6-ESV.html#1 branch .. //depot/projects/mjacob-dev/contrib/bind9/RELEASE-NOTES-BIND-9.6-ESV.pdf#1 branch .. //depot/projects/mjacob-dev/contrib/bind9/RELEASE-NOTES-BIND-9.6-ESV.txt#1 branch .. //depot/projects/mjacob-dev/contrib/bind9/bin/check/check-tool.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/check/check-tool.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/check/named-checkconf.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/check/named-checkzone.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/dig/host.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/named/client.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/named/include/named/query.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/named/query.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/bin/named/server.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/dns/api#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/dns/include/dns/view.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/dns/journal.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/dns/rbtdb.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/dns/validator.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/dns/view.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/isc/api#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/lib/isc/print.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bind9/release-notes.css#1 branch .. //depot/projects/mjacob-dev/contrib/bind9/version#2 integrate .. //depot/projects/mjacob-dev/contrib/binutils/ld/emultempl/ppc64elf.em#2 integrate .. //depot/projects/mjacob-dev/contrib/binutils/ld/ldemul.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/asn1.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/asn1.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/bsnmpclient.3#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/bsnmplib.3#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/snmp.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/snmp.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/snmpagent.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/snmpclient.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/snmpclient.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/snmpcrypto.c#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/snmppriv.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/lib/tc.def#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_target/snmp_target.3#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_target/target_snmp.c#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_target/target_tree.def#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_usm/snmp_usm.3#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_usm/usm_snmp.c#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_usm/usm_tree.def#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_vacm/snmp_vacm.3#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_vacm/vacm_snmp.c#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmp_vacm/vacm_tree.def#1 branch .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/BEGEMOT-SNMPD.txt#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/action.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/bsnmpd.1#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/config.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/export.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/main.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/snmpd.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/snmpmod.3#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/snmpmod.h#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/trans_lsock.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/trans_udp.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/trap.c#2 integrate .. //depot/projects/mjacob-dev/contrib/bsnmp/snmpd/tree.def#2 integrate .. //depot/projects/mjacob-dev/contrib/dialog/CHANGES#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/COPYING#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/README#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/VERSION#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/aclocal.m4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/arrows.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/buttons.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/calendar.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/checklist.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/columns.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/config.guess#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/config.hin#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/config.sub#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/configure#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/configure.in#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dialog-config.in#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dialog.1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dialog.3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dialog.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dialog.h#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dialog.lsm#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dialog.pl#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dlg_colors.h#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dlg_keys.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/dlg_keys.h#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/editbox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/formbox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/fselect.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/guage.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/headers-sh.in#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/inputbox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/inputstr.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/install-sh#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/makefile.in#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/menubox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/mixedform.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/mixedgauge.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/mouse.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/mousewget.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/msgbox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/pause.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/POTFILES.in#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ar.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/bg.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ca.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/cs.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/cy.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/da.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/de.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/dialog.pot#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/el.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/eo.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/es.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/et.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/eu.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/fi.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/fr.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ga.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/gl.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/hi.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/hr.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/hu.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/id.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/is.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/it.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ja.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ku.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/lt.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/lv.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/makefile.inn#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/mg.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/mk.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ms.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/nb.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/nl.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/pl.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/pt.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/pt_BR.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/rm.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ro.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/ru.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/rw.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/sq.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/sr.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/sv.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/sw.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/th.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/tr.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/uk.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/vi.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/wa.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/zh_CN.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/po/zh_TW.po#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/progressbox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/rc.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/README#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/calendar#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/calendar-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/calendar2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/calendar2-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/calendar3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/calendar3-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist-8bit#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist10#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist11#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist5#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist6#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist7#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist9#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/checklist9.txt#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/admin.funcs#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/common.funcs#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.funcs#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifman1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifman2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifmcfg2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifmcfg4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifmcfg5#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifpoll1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifpoll2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifreq1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.ifreq2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.rcnews#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.sendifm1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.sendifm2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.trnrc#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/copi.wheel#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copifuncs/ifpatch#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/copismall#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/debian.rc#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/dialog.py#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/dselect#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/editbox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/editbox-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/editbox2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/editbox3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/editbox4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form1-both#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form1-extra#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form1-help#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form1-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form5#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/form6#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/fselect#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/fselect-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/fselect1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/fselect1-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/fselect2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/fselect2-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/gauge#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/gauge0#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/gauge0-input-fd#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/gauge2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/infobox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/infobox1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/infobox2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/infobox3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/infobox4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/infobox5#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/infobox6#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox-both#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox-extra#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox-help#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox5#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox6-8bit#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox6-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputbox7#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputmenu#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputmenu-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputmenu1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputmenu2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputmenu3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/inputmenu4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/install/FDISK.TEST#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/install/makefile.in#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/install/setup.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/install/setup.help#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/killall#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/listing#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox-8bit#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox10#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox5#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox6#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox7#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/menubox9#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/mixedform#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/mixedform2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/mixedgauge#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox-help#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox4-8bit#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox4-eucjp#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox4-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox5#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox6#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/msgbox6a#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/password#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/password1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/password2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/passwordform1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/passwordform1-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/pause#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/pause-help#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/progress#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/progress2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/radiolist#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/radiolist1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/radiolist10#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/radiolist2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/radiolist3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/radiolist4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/report-button#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/report-edit#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/report-string#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/report-tempfile#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/report-yesno#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/rotated-data#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/setup-edit#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/setup-tempfile#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/setup-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/setup-vars#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/slackware.rc#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/sourcemage.rc#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/suse.rc#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/tailbox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/tailboxbg#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/tailboxbg1#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/tailboxbg2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/testdata-8bit#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/textbox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/textbox.txt#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/textbox2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/textbox3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/timebox#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/timebox-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/timebox2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/timebox2-stdout#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/wheel#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/whiptail.rc#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno-both#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno-extra#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno-help#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno-utf8#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno2#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno3#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/samples/yesno4#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/tailbox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/textbox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/timebox.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/trace.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/ui_getc.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/util.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/version.c#1 branch .. //depot/projects/mjacob-dev/contrib/dialog/yesno.c#1 branch .. //depot/projects/mjacob-dev/contrib/gcc/config/i386/freebsd.h#2 integrate .. //depot/projects/mjacob-dev/contrib/gcc/config/rs6000/crtsavres.asm#2 integrate .. //depot/projects/mjacob-dev/contrib/gcc/config/rs6000/freebsd.h#2 integrate .. //depot/projects/mjacob-dev/contrib/gcc/config/rs6000/rs6000.c#2 integrate .. //depot/projects/mjacob-dev/contrib/gcc/config/rs6000/tramp.asm#2 integrate .. //depot/projects/mjacob-dev/contrib/groff/tmac/doc-common#2 integrate .. //depot/projects/mjacob-dev/contrib/groff/tmac/doc-syms#2 integrate .. //depot/projects/mjacob-dev/contrib/groff/tmac/groff_mdoc.man#2 integrate .. //depot/projects/mjacob-dev/contrib/traceroute/as.c#2 integrate .. //depot/projects/mjacob-dev/contrib/traceroute/as.h#2 integrate .. //depot/projects/mjacob-dev/contrib/traceroute/ifaddrlist.c#2 integrate .. //depot/projects/mjacob-dev/contrib/traceroute/traceroute.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/ACKNOWLEDGMENTS#1 branch .. //depot/projects/mjacob-dev/crypto/openssl/CHANGES#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/FAQ#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/Makefile#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/NEWS#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/README#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/crypto/evp/p_sign.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/crypto/evp/p_verify.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/crypto/jpake/jpake.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/crypto/jpake/jpake.h#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/crypto/jpake/jpake_err.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/crypto/opensslv.h#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/crypto/stack/safestack.h#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/doc/ssl/SSL_CTX_set_options.pod#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/openssl.spec#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/ssl/s3_clnt.c#2 integrate .. //depot/projects/mjacob-dev/crypto/openssl/ssl/s3_srvr.c#2 integrate .. //depot/projects/mjacob-dev/etc/defaults/rc.conf#2 integrate .. //depot/projects/mjacob-dev/etc/devd.conf#2 integrate .. //depot/projects/mjacob-dev/etc/mtree/BSD.usr.dist#2 integrate .. //depot/projects/mjacob-dev/etc/mtree/README#2 integrate .. //depot/projects/mjacob-dev/etc/portsnap.conf#2 integrate .. //depot/projects/mjacob-dev/etc/rc.d/devd#2 integrate .. //depot/projects/mjacob-dev/etc/rc.d/ldconfig#2 integrate .. //depot/projects/mjacob-dev/etc/rc.d/pf#2 integrate .. //depot/projects/mjacob-dev/etc/rc.subr#2 integrate .. //depot/projects/mjacob-dev/etc/snmpd.config#2 integrate .. //depot/projects/mjacob-dev/games/bcd/bcd.6#2 integrate .. //depot/projects/mjacob-dev/games/caesar/caesar.6#2 integrate .. //depot/projects/mjacob-dev/games/caesar/rot13.sh#2 integrate .. //depot/projects/mjacob-dev/games/factor/factor.6#2 integrate .. //depot/projects/mjacob-dev/games/factor/factor.c#2 integrate .. //depot/projects/mjacob-dev/games/morse/morse.6#2 integrate .. //depot/projects/mjacob-dev/games/number/number.6#2 integrate .. //depot/projects/mjacob-dev/games/pom/pom.6#2 integrate .. //depot/projects/mjacob-dev/games/random/random.6#2 integrate .. //depot/projects/mjacob-dev/gnu/lib/Makefile#2 integrate .. //depot/projects/mjacob-dev/gnu/lib/libdialog/CHANGES#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/COPYING#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/Makefile#2 integrate .. //depot/projects/mjacob-dev/gnu/lib/libdialog/README#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/Makefile#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/check1.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/check2.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/check3.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/dselect.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/fselect.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/ftree1.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/ftree1.test#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/ftree2.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/ftree2.test#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/gauge.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/input1.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/input2.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/menu1.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/menu2.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/menu3.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/msg.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/prgbox.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/radio1.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/radio2.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/radio3.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/text.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/tree.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TESTS/yesno.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/TODO#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/checklist.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/colors.h#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/dialog.3#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/dialog.h#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/dialog.priv.h#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/dir.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/dir.h#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/dlg_config.h#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libdialog/fselect.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/gauge.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/help.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/inputbox.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/kernel.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/lineedit.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/menubox.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/msgbox.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/notify.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/prgbox.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/radiolist.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/raw_popen.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/rc.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/rc.h#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/textbox.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/tree.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/ui_objects.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/ui_objects.h#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libdialog/yesno.c#2 delete .. //depot/projects/mjacob-dev/gnu/lib/libgcc/Makefile#2 integrate .. //depot/projects/mjacob-dev/gnu/lib/libgomp/Makefile#2 integrate .. //depot/projects/mjacob-dev/gnu/lib/libodialog/CHANGES#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/COPYING#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/Makefile#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/README#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/Makefile#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/check1.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/check2.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/check3.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/dselect.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/fselect.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/ftree1.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/ftree1.test#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/ftree2.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/ftree2.test#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/gauge.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/input1.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/input2.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/menu1.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/menu2.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/menu3.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/msg.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/prgbox.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/radio1.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/radio2.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/radio3.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/text.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/tree.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TESTS/yesno.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/TODO#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/checklist.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/colors.h#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/dialog.3#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/dialog.h#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/dialog.priv.h#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/dir.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/dir.h#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/fselect.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/gauge.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/help.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/inputbox.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/kernel.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/lineedit.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/menubox.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/msgbox.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/notify.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/prgbox.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/radiolist.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/raw_popen.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/rc.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/rc.h#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/textbox.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/tree.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/ui_objects.c#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/ui_objects.h#1 branch .. //depot/projects/mjacob-dev/gnu/lib/libodialog/yesno.c#1 branch .. //depot/projects/mjacob-dev/gnu/usr.bin/binutils/Makefile.inc0#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/binutils/ld/Makefile.mips#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/binutils/libbfd/Makefile.mips#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/cc/Makefile.fe#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/cc/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/cc/Makefile.tgt#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/COPYING#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/Makefile#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/README#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/README.lib#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/Makefile#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/README#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/checklist#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/ftreebox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/infobox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/inputbox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/menubox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/msgbox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/prgbox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/radiolist#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/textbox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/treebox#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/TESTS/yesno#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/dialog.1#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/dialog/dialog.c#2 delete .. //depot/projects/mjacob-dev/gnu/usr.bin/gdb/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/gdb/libgdb/Makefile#2 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/groff/tmac/mdoc.local#2 integrate .. //depot/projects/mjacob-dev/include/assert.h#2 integrate .. //depot/projects/mjacob-dev/include/pthread.h#2 integrate .. //depot/projects/mjacob-dev/include/unistd.h#2 integrate .. //depot/projects/mjacob-dev/lib/bind/config.mk#2 integrate .. //depot/projects/mjacob-dev/lib/csu/amd64/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/csu/amd64/crt1.c#2 integrate .. //depot/projects/mjacob-dev/lib/csu/amd64/crti.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/amd64/crtn.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/arm/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/csu/arm/crt1.c#2 integrate .. //depot/projects/mjacob-dev/lib/csu/arm/crtn.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/common/crtbrand.c#2 integrate .. //depot/projects/mjacob-dev/lib/csu/i386-elf/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/csu/i386-elf/crt1_c.c#2 integrate .. //depot/projects/mjacob-dev/lib/csu/i386-elf/crt1_s.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/i386-elf/crti.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/i386-elf/crtn.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/ia64/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/csu/ia64/crt1.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/ia64/crti.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/ia64/crtn.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/mips/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc/crt1.c#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc/crti.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc/crtn.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc64/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc64/crt1.c#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc64/crti.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/powerpc64/crtn.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/sparc64/crt1.c#2 integrate .. //depot/projects/mjacob-dev/lib/csu/sparc64/crti.S#2 integrate .. //depot/projects/mjacob-dev/lib/csu/sparc64/crtn.S#2 integrate .. //depot/projects/mjacob-dev/lib/libarchive/archive_read_extract.c#2 integrate .. //depot/projects/mjacob-dev/lib/libarchive/test/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/libarchive/test/test_acl_freebsd.c#2 integrate .. //depot/projects/mjacob-dev/lib/libbsnmp/libbsnmp/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/libc/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/gen/_setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/gen/fabs.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/gen/modf.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/gen/rfork_thread.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/gen/setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/gen/sigsetjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/stdlib/div.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/stdlib/ldiv.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/stdlib/lldiv.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/bcmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/bcopy.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/bzero.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/memcmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/memmove.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/memset.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/strcat.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/strcmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/string/strcpy.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/brk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/cerror.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/exect.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/getcontext.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/pipe.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/ptrace.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/reboot.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/sbrk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/setlogin.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/sigreturn.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/amd64/sys/vfork.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/gen/Symbol.map#2 integrate .. //depot/projects/mjacob-dev/lib/libc/gen/dlfcn.c#2 integrate .. //depot/projects/mjacob-dev/lib/libc/gen/elf_utils.c#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/gen/_ctx_start.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/gen/_setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/gen/fabs.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/gen/modf.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/gen/rfork_thread.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/gen/setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/gen/sigsetjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/stdlib/div.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/stdlib/ldiv.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/bcmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/bcopy.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/bzero.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/ffs.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/index.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/memchr.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/memcmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/memcpy.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/memmove.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/memset.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/rindex.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/strcat.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/strchr.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/strcmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/strcpy.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/strncmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/strrchr.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/swab.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/wcschr.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/wcscmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/wcslen.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/string/wmemchr.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/Ovfork.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/brk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/cerror.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/exect.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/getcontext.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/pipe.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/ptrace.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/reboot.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/sbrk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/setlogin.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/sigreturn.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/i386/sys/syscall.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/locale/mbrtowc.3#2 integrate .. //depot/projects/mjacob-dev/lib/libc/net/hesiod.c#2 integrate .. //depot/projects/mjacob-dev/lib/libc/posix1e/acl_is_trivial_np.3#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/gen/_ctx_start.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/gen/_setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/gen/fabs.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/gen/setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/gen/sigsetjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/sys/brk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/sys/cerror.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/sys/exect.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/sys/pipe.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/sys/ptrace.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/sys/sbrk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc/sys/setlogin.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/gen/_ctx_start.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/gen/_setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/gen/fabs.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/gen/setjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/gen/sigsetjmp.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/sys/brk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/sys/cerror.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/sys/exect.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/sys/pipe.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/sys/ptrace.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/sys/sbrk.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/powerpc64/sys/setlogin.S#2 integrate .. //depot/projects/mjacob-dev/lib/libc/rpc/PSD.doc/nfs.rfc.ms#2 delete .. //depot/projects/mjacob-dev/lib/libc/rpc/PSD.doc/rpc.prog.ms#2 delete .. //depot/projects/mjacob-dev/lib/libc/rpc/PSD.doc/rpc.rfc.ms#2 delete .. //depot/projects/mjacob-dev/lib/libc/rpc/PSD.doc/rpcgen.ms#2 delete .. //depot/projects/mjacob-dev/lib/libc/rpc/PSD.doc/stubs#2 delete .. //depot/projects/mjacob-dev/lib/libc/rpc/PSD.doc/xdr.nts.ms#2 delete .. //depot/projects/mjacob-dev/lib/libc/rpc/PSD.doc/xdr.rfc.ms#2 delete .. //depot/projects/mjacob-dev/lib/libc/rpc/publickey.3#2 integrate .. //depot/projects/mjacob-dev/lib/libc/stdio/freopen.c#2 integrate .. //depot/projects/mjacob-dev/lib/libc/stdio/getline.3#2 integrate .. //depot/projects/mjacob-dev/lib/libc/stdio/printf-pos.c#2 integrate .. //depot/projects/mjacob-dev/lib/libc/stdlib/realpath.c#2 integrate .. //depot/projects/mjacob-dev/lib/libc/sys/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/lib/libc/sys/mknod.2#2 integrate .. //depot/projects/mjacob-dev/lib/libc/sys/shmat.2#2 integrate .. //depot/projects/mjacob-dev/lib/libc/sys/shmctl.2#2 integrate .. //depot/projects/mjacob-dev/lib/libc/sys/shmget.2#2 integrate .. //depot/projects/mjacob-dev/lib/libcam/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/libcompiler_rt/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/libfetch/ftp.c#2 integrate .. //depot/projects/mjacob-dev/lib/libgeom/libgeom.3#2 integrate .. //depot/projects/mjacob-dev/lib/libipsec/ipsec_dump_policy.c#2 integrate .. //depot/projects/mjacob-dev/lib/libjail/jail.c#2 integrate .. //depot/projects/mjacob-dev/lib/libkvm/kvm_getloadavg.3#2 integrate .. //depot/projects/mjacob-dev/lib/libproc/proc_create.c#2 integrate .. //depot/projects/mjacob-dev/lib/libstand/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/arch/amd64/amd64/_umtx_op_err.S#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/arch/i386/i386/_umtx_op_err.S#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/pthread.map#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_cond.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_create.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_init.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_kern.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_list.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_mutex.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_private.h#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_rtld.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_sig.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_sleepq.c#1 branch .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_stack.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_umtx.c#2 integrate .. //depot/projects/mjacob-dev/lib/libthr/thread/thr_umtx.h#2 integrate .. //depot/projects/mjacob-dev/lib/libugidfw/ugidfw.c#2 integrate .. //depot/projects/mjacob-dev/lib/libusb/libusb20_compat01.c#2 integrate .. //depot/projects/mjacob-dev/lib/msun/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/msun/Symbol.map#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/e_remainder.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/e_remainderf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/e_remainderl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/e_sqrt.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/e_sqrtf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/e_sqrtl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_llrint.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_llrintf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_llrintl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_logbl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_lrint.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_lrintf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_lrintl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_remquo.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_remquof.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_remquol.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_rintl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_scalbn.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_scalbnf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/amd64/s_scalbnl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_exp.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_fmod.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_log.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_log10.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_log10f.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_logf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_remainder.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_remainderf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_remainderl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_sqrt.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_sqrtf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/e_sqrtl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_ceil.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_ceilf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_ceill.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_copysign.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_copysignf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_copysignl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_cos.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_finite.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_floor.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_floorf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_floorl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_llrint.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_llrintf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_llrintl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_logb.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_logbf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_logbl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_lrint.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_lrintf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_lrintl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_remquo.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_remquof.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_remquol.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_rint.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_rintf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_rintl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_scalbn.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_scalbnf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_scalbnl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_significand.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_significandf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_sin.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_tan.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_trunc.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_truncf.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/i387/s_truncl.S#2 integrate .. //depot/projects/mjacob-dev/lib/msun/man/log.3#2 integrate .. //depot/projects/mjacob-dev/lib/msun/man/math.3#2 integrate .. //depot/projects/mjacob-dev/lib/msun/src/e_log2.c#1 branch .. //depot/projects/mjacob-dev/lib/msun/src/e_log2f.c#1 branch .. //depot/projects/mjacob-dev/lib/msun/src/k_log.h#1 branch .. //depot/projects/mjacob-dev/lib/msun/src/k_logf.h#1 branch .. //depot/projects/mjacob-dev/lib/msun/src/math.h#2 integrate .. //depot/projects/mjacob-dev/lib/msun/src/math_private.h#2 integrate .. //depot/projects/mjacob-dev/libexec/bootpd/rtmsg.c#2 integrate .. //depot/projects/mjacob-dev/libexec/ftpd/ftpd.c#2 integrate .. //depot/projects/mjacob-dev/libexec/getty/chat.c#2 integrate .. //depot/projects/mjacob-dev/libexec/getty/main.c#2 integrate .. //depot/projects/mjacob-dev/libexec/mknetid/parse_group.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rbootd/rbootd.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rlogind/rlogind.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rpc.rwalld/rwalld.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/Makefile#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/Symbol.map#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/amd64/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/amd64/reloc.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/amd64/rtld_start.S#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/arm/reloc.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/i386/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/i386/reloc.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/i386/rtld_start.S#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/ia64/reloc.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/map_object.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/mips/reloc.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/powerpc/reloc.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/powerpc/rtld_start.S#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/powerpc64/reloc.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/powerpc64/rtld_start.S#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/rtld.1#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/rtld.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/rtld.h#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/rtld_lock.c#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/rtld_lock.h#2 integrate .. //depot/projects/mjacob-dev/libexec/rtld-elf/sparc64/reloc.c#2 integrate .. //depot/projects/mjacob-dev/release/amd64/boot_crunch.conf#2 integrate .. //depot/projects/mjacob-dev/release/i386/boot_crunch.conf#2 integrate .. //depot/projects/mjacob-dev/release/ia64/boot_crunch.conf#2 integrate .. //depot/projects/mjacob-dev/release/pc98/boot_crunch.conf#2 integrate .. //depot/projects/mjacob-dev/release/powerpc/boot_crunch.conf#2 integrate .. //depot/projects/mjacob-dev/release/powerpc/mkisoimages.sh#2 integrate .. //depot/projects/mjacob-dev/release/sparc64/boot_crunch.conf#2 integrate .. //depot/projects/mjacob-dev/release/sun4v/boot_crunch.conf#2 integrate .. //depot/projects/mjacob-dev/sbin/bsdlabel/bsdlabel.c#2 integrate .. //depot/projects/mjacob-dev/sbin/camcontrol/camcontrol.8#2 integrate .. //depot/projects/mjacob-dev/sbin/camcontrol/camcontrol.c#2 integrate .. //depot/projects/mjacob-dev/sbin/dumpfs/dumpfs.c#2 integrate .. //depot/projects/mjacob-dev/sbin/fsck_ffs/SMM.doc/0.t#2 delete .. //depot/projects/mjacob-dev/sbin/fsck_ffs/SMM.doc/1.t#2 delete .. //depot/projects/mjacob-dev/sbin/fsck_ffs/SMM.doc/2.t#2 delete .. //depot/projects/mjacob-dev/sbin/fsck_ffs/SMM.doc/3.t#2 delete .. //depot/projects/mjacob-dev/sbin/fsck_ffs/SMM.doc/4.t#2 delete .. //depot/projects/mjacob-dev/sbin/fsck_ffs/SMM.doc/Makefile#2 delete .. //depot/projects/mjacob-dev/sbin/geom/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/cache/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/concat/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/eli/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/eli/geli.8#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/journal/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/label/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/mirror/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/mountver/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/multipath/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/nop/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/part/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/part/geom_part.c#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/part/gpart.8#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/raid3/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/raid3/geom_raid3.c#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/raid3/graid3.8#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/sched/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/shsec/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/stripe/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/class/virstor/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/core/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/geom/core/geom.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/hastd.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/hooks.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/parse.y#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/primary.c#2 integrate .. //depot/projects/mjacob-dev/sbin/ifconfig/ifconfig.c#2 integrate .. //depot/projects/mjacob-dev/sbin/ifconfig/ifmedia.c#2 integrate .. //depot/projects/mjacob-dev/sbin/mount/mount_fs.c#2 integrate .. //depot/projects/mjacob-dev/sbin/mount_nfs/mount_nfs.c#2 integrate .. //depot/projects/mjacob-dev/sbin/newfs/mkfs.c#2 integrate .. //depot/projects/mjacob-dev/sbin/newfs/newfs.8#2 integrate .. //depot/projects/mjacob-dev/sbin/newfs/newfs.c#2 integrate .. //depot/projects/mjacob-dev/sbin/newfs/newfs.h#2 integrate .. //depot/projects/mjacob-dev/sbin/ping6/ping6.c#2 integrate .. //depot/projects/mjacob-dev/sbin/route/route.c#2 integrate .. //depot/projects/mjacob-dev/sbin/savecore/savecore.c#2 integrate .. //depot/projects/mjacob-dev/sbin/shutdown/Makefile#2 integrate .. //depot/projects/mjacob-dev/sbin/shutdown/shutdown.8#2 integrate .. //depot/projects/mjacob-dev/sbin/shutdown/shutdown.c#2 integrate .. //depot/projects/mjacob-dev/sbin/sysctl/sysctl.8#2 integrate .. //depot/projects/mjacob-dev/sbin/sysctl/sysctl.c#2 integrate .. //depot/projects/mjacob-dev/sbin/tunefs/tunefs.8#2 integrate .. //depot/projects/mjacob-dev/sbin/tunefs/tunefs.c#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/Makefile.inc#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/ASN1_OBJECT_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/ASN1_STRING_length.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/ASN1_STRING_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/ASN1_generate_nconf.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_ctrl.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_f_base64.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_f_buffer.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_f_cipher.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_f_md.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_f_null.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_f_ssl.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_find_type.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_push.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_read.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_accept.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_bio.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_connect.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_fd.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_file.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_mem.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_null.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_s_socket.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_set_callback.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BIO_should_retry.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_BLINDING_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_CTX_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_CTX_start.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_add.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_add_word.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_bn2bin.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_cmp.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_copy.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_generate_prime.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_mod_inverse.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_mod_mul_montgomery.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_mod_mul_reciprocal.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_num_bytes.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_rand.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_set_bit.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_swap.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/BN_zero.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/CONF_modules_free.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/CONF_modules_load_file.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/CRYPTO_set_ex_data.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DH_generate_key.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DH_generate_parameters.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DH_get_ex_new_index.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DH_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DH_set_method.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DH_size.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_SIG_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_do_sign.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_dup_DH.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_generate_key.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_generate_parameters.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_get_ex_new_index.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_new.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_set_method.3#2 integrate .. //depot/projects/mjacob-dev/secure/lib/libcrypto/man/DSA_sign.3#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jan 22 13:33:28 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 689141065673; Sat, 22 Jan 2011 13:33:28 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 28D1F1065670 for ; Sat, 22 Jan 2011 13:33:28 +0000 (UTC) (envelope-from rene@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 1451D8FC14 for ; Sat, 22 Jan 2011 13:33:28 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p0MDXREj045966 for ; Sat, 22 Jan 2011 13:33:27 GMT (envelope-from rene@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p0MDXR6b045963 for perforce@freebsd.org; Sat, 22 Jan 2011 13:33:27 GMT (envelope-from rene@FreeBSD.org) Date: Sat, 22 Jan 2011 13:33:27 GMT Message-Id: <201101221333.p0MDXR6b045963@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to rene@FreeBSD.org using -f From: Rene Ladan To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 188061 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jan 2011 13:33:28 -0000 http://p4web.freebsd.org/@@188061?ac=10 Change 188061 by rene@rene_acer on 2011/01/22 13:33:03 IFC Affected files ... .. //depot/projects/docproj_nl/en_US.ISO8859-1/articles/releng/article.sgml#7 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/arch-handbook/locking/chapter.sgml#2 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/faq/book.sgml#32 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/eresources/chapter.sgml#19 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/vinum/chapter.sgml#7 integrate .. //depot/projects/docproj_nl/en_US.ISO8859-1/share/sgml/mailing-lists.ent#18 integrate .. //depot/projects/docproj_nl/share/pgpkeys/novel.key#2 integrate .. //depot/projects/docproj_nl/www/en/copyright/freebsd-doc-license.sgml#4 integrate .. //depot/projects/docproj_nl/www/en/copyright/freebsd-license.sgml#4 integrate .. //depot/projects/docproj_nl/www/en/search/search.sgml#8 integrate .. //depot/projects/docproj_nl/www/en/security/security.sgml#17 integrate .. //depot/projects/docproj_nl/www/share/sgml/news.xml#98 integrate .. //depot/projects/docproj_nl/www/share/sgml/release.ent#31 integrate Differences ... ==== //depot/projects/docproj_nl/en_US.ISO8859-1/articles/releng/article.sgml#7 (text+ko) ==== @@ -37,7 +37,7 @@ - $FreeBSD: doc/en_US.ISO8859-1/articles/releng/article.sgml,v 1.85 2009/11/28 19:55:51 hrs Exp $ + $FreeBSD: doc/en_US.ISO8859-1/articles/releng/article.sgml,v 1.86 2011/01/15 12:51:40 jkois Exp $ &tm-attrib.freebsd; @@ -119,10 +119,7 @@ GNATS[8] database through email, the &man.send-pr.1; application, or via the web interface provided at . - In addition to the multitude of different technical mailing lists - about &os;, the &a.qa; provides a forum for discussing the finer - points of release-polishing. + url="http://www.FreeBSD.org/send-pr.html">. To service our most conservative users, individual release branches were introduced with &os; 4.3. ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/arch-handbook/locking/chapter.sgml#2 (text+ko) ==== @@ -2,7 +2,7 @@ The FreeBSD Documentation Project The FreeBSD SMP Next Generation Project - $FreeBSD: doc/en_US.ISO8859-1/books/arch-handbook/locking/chapter.sgml,v 1.11 2006/01/22 16:20:37 delphij Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/arch-handbook/locking/chapter.sgml,v 1.12 2011/01/15 12:51:40 jkois Exp $ --> @@ -10,9 +10,7 @@ SMP Next Generation Project This chapter is maintained by the FreeBSD SMP Next - Generation Project. Please direct any comments or suggestions - to its &a.smp;. - + Generation Project. locking multi-processing ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/faq/book.sgml#32 (text+ko) ==== @@ -12,7 +12,7 @@ The &os; Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/faq/book.sgml,v 1.1131 2010/10/18 12:43:51 gjb Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/faq/book.sgml,v 1.1132 2011/01/15 12:51:40 jkois Exp $ 1995 @@ -2253,8 +2253,7 @@ Symmetric multi-processor (SMP) systems are generally supported by &os;, although in some cases, BIOS or - motherboard bugs may generate some problems. Perusing the - &a.smp; may yield some clues. + motherboard bugs may generate some problems. &os; will take advantage of HyperThreading (HTT) support on Intel CPUs that support this feature. A kernel ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/eresources/chapter.sgml#19 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -113,6 +113,11 @@ + &a.chromium.name; + FreeBSD-specific Chromium issues + + + &a.current.name; Discussion concerning the use of &os.current; @@ -192,11 +197,6 @@ - &a.alpha.name; - Porting FreeBSD to the Alpha - - - &a.amd64.name; Porting FreeBSD to AMD64 systems @@ -461,11 +461,6 @@ - &a.qa.name; - Discussion of Quality Assurance, usually pending a release - - - &a.rc.name; Discussion related to the rc.d system and its development @@ -497,12 +492,6 @@ - &a.smp.name; - Design discussions for [A]Symmetric - MultiProcessing - - - &a.sparc.name; Porting FreeBSD to &sparc; based systems @@ -1037,6 +1026,18 @@ + &a.chromium.name; + + + FreeBSD-specific Chromium issues + + This is a list for the discussion of Chromium + support for FreeBSD. This is a technical list to discuss + development and installation of Chromium. + + + + &a.core.name; ==== //depot/projects/docproj_nl/en_US.ISO8859-1/books/handbook/vinum/chapter.sgml#7 (text+ko) ==== @@ -6,7 +6,7 @@ and Tom Rhodes For the FreeBSD Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/handbook/vinum/chapter.sgml,v 1.48 2010/12/01 20:37:05 rene Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/handbook/vinum/chapter.sgml,v 1.49 2011/01/19 09:41:34 ryusuke Exp $ --> @@ -848,12 +848,6 @@ /dev/gvinum/concat, a name which has no relationship with a partition name. - Normally, &man.newfs.8; interprets the name of the disk and - complains if it cannot understand it. For example: - - &prompt.root; newfs /dev/gvinum/concat -newfs: /dev/gvinum/concat: can't figure out file system partition - In order to create a file system on this volume, use &man.newfs.8;: ==== //depot/projects/docproj_nl/en_US.ISO8859-1/share/sgml/mailing-lists.ent#18 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -24,10 +24,6 @@ FreeBSD Adaptec AIC7xxx discussions mailing list"> freebsd-aic7xxx"> - -FreeBSD Alpha porting mailing list"> -freebsd-alpha"> - Porting FreeBSD to AMD64 systems"> freebsd-amd64"> @@ -76,6 +72,10 @@ FreeBSD chat mailing list"> freebsd-chat"> + +FreeBSD-specific Chromium issues"> +freebsd-chromium"> + FreeBSD clustering mailing list"> freebsd-cluster"> @@ -357,10 +357,6 @@ FreeBSD Python mailing list"> freebsd-python"> - -FreeBSD Quality Assurance mailing list"> -freebsd-qa"> - FreeBSD general questions mailing list"> freebsd-questions"> @@ -393,10 +389,6 @@ FreeBSD-small mailing list"> freebsd-small"> - -FreeBSD symmetric multiprocessing mailing list"> -freebsd-smp"> - FreeBSD SPARC porting mailing list"> freebsd-sparc64"> @@ -542,3 +534,20 @@ majordomo@FreeBSD.org"> + + + + +FreeBSD Alpha porting mailing list"> +freebsd-alpha"> + + +FreeBSD Quality Assurance mailing list"> +freebsd-qa"> + + +FreeBSD symmetric multiprocessing mailing list"> +freebsd-smp"> ==== //depot/projects/docproj_nl/share/pgpkeys/novel.key#2 (text+ko) ==== @@ -1,44 +1,67 @@ - + uid Roman Bogorodskiy -uid Roman Bogorodskiy -uid Roman Bogorodskiy -uid Roman Bogorodskiy +uid Roman Bogorodskiy +uid Roman Bogorodskiy +sub 2048R/EC4ED237 2010-12-03 ]]> ==== //depot/projects/docproj_nl/www/en/copyright/freebsd-doc-license.sgml#4 (text+ko) ==== @@ -1,6 +1,6 @@ - + ]> @@ -8,7 +8,7 @@ &header; -

Copyright 1994-2010 +

Copyright 1994-2011 The FreeBSD Project. All rights reserved.

==== //depot/projects/docproj_nl/www/en/copyright/freebsd-license.sgml#4 (text+ko) ==== @@ -1,6 +1,6 @@ - + ]> @@ -8,7 +8,7 @@ &header; -

Copyright 1992-2010 +

Copyright 1992-2011 The FreeBSD Project. All rights reserved.

==== //depot/projects/docproj_nl/www/en/search/search.sgml#8 (text+ko) ==== @@ -1,6 +1,6 @@ - + ]> @@ -309,6 +309,12 @@ Chromium + FreeBSD-specific Chromium issues + + + + Bugbusters Coordination of the Problem Report handling effort ==== //depot/projects/docproj_nl/www/en/security/security.sgml#17 (text+ko) ==== @@ -1,11 +1,11 @@ - + %developers; ]> - + &header; @@ -24,6 +24,7 @@
  • Information about the FreeBSD Security Officer
  • Information handling policies
  • Supported FreeBSD Releases
  • +
  • Unsupported FreeBSD Releases
  • Other Security Links

    ==== //depot/projects/docproj_nl/www/share/sgml/news.xml#98 (text+ko) ==== @@ -25,11 +25,35 @@ - $FreeBSD: www/share/sgml/news.xml,v 1.358 2010/12/27 15:24:23 jkois Exp $ + $FreeBSD: www/share/sgml/news.xml,v 1.359 2011/01/16 22:49:49 danger Exp $ + 2011 + + + 1 + + + 16 + + + &os; 8.2-RC2 Available + +

    The second Release Candidate build for the &os;-8.2 + release cycle is now available. ISO images for Tier-1 + architectures can be downloaded from most of the &os; + mirror sites. Please see the official announcement + for further details about this release.

    +
    +
    +
    +
    + + 2010 ==== //depot/projects/docproj_nl/www/share/sgml/release.ent#31 (text+ko) ==== @@ -1,4 +1,4 @@ - +