From owner-p4-projects@FreeBSD.ORG Thu Feb 10 15:53:33 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 33A5D1065675; Thu, 10 Feb 2011 15:53:33 +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 EA9531065673 for ; Thu, 10 Feb 2011 15:53:32 +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 BE1838FC18 for ; Thu, 10 Feb 2011 15:53:32 +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 p1AFrWo6085200 for ; Thu, 10 Feb 2011 15:53:32 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1AFrWO5085197 for perforce@freebsd.org; Thu, 10 Feb 2011 15:53:32 GMT (envelope-from trasz@freebsd.org) Date: Thu, 10 Feb 2011 15:53:32 GMT Message-Id: <201102101553.p1AFrWO5085197@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 188687 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: Thu, 10 Feb 2011 15:53:33 -0000 http://p4web.freebsd.org/@@188687?ac=10 Change 188687 by trasz@trasz_victim on 2011/02/10 15:52:47 Remove duplicated include. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/imgact_elf.c#24 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/imgact_elf.c#24 (text+ko) ==== @@ -37,7 +37,6 @@ #include #include #include -#include #include #include #include From owner-p4-projects@FreeBSD.ORG Thu Feb 10 17:19:39 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F42321065672; Thu, 10 Feb 2011 17:19:38 +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 B6BE9106566C for ; Thu, 10 Feb 2011 17:19:38 +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 A40A68FC0A for ; Thu, 10 Feb 2011 17:19:38 +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 p1AHJcOS002358 for ; Thu, 10 Feb 2011 17:19:38 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1AHJc9q002355 for perforce@freebsd.org; Thu, 10 Feb 2011 17:19:38 GMT (envelope-from trasz@freebsd.org) Date: Thu, 10 Feb 2011 17:19:38 GMT Message-Id: <201102101719.p1AHJc9q002355@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 188689 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: Thu, 10 Feb 2011 17:19:39 -0000 http://p4web.freebsd.org/@@188689?ac=10 Change 188689 by trasz@trasz_victim on 2011/02/10 17:19:24 Replace signal(3) with sigaction(3). Affected files ... .. //depot/projects/soc2009/trasz_limits/lib/libutil/login_class.c#8 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/lib/libutil/login_class.c#8 (text+ko) ==== @@ -40,6 +40,7 @@ #include #include #include +#include #include #include #include @@ -425,7 +426,7 @@ quad_t p; mode_t mymask; login_cap_t *llc = NULL; - sig_t prevsig; + struct sigaction sa, prevsa; struct rtprio rtp; int error; @@ -519,9 +520,12 @@ * XXX: This is a workaround to fail gracefully in case the kernel * does not support setloginclass(2). */ - prevsig = signal(SIGSYS, SIG_IGN); + bzero(&sa, sizeof(sa)); + sa.sa_handler = SIG_IGN; + sigfillset(&sa.sa_mask); + sigaction(SIGSYS, &sa, &prevsa); error = setloginclass(lc->lc_class); - signal(SIGSYS, prevsig); + sigaction(SIGSYS, &prevsa, NULL); if (error != 0) { syslog(LOG_ERR, "setloginclass(%s): %m", lc->lc_class); #ifdef notyet From owner-p4-projects@FreeBSD.ORG Thu Feb 10 17:21:50 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1682F1065679; Thu, 10 Feb 2011 17:21: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 CD7B2106564A for ; Thu, 10 Feb 2011 17:21:49 +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 BAEA78FC08 for ; Thu, 10 Feb 2011 17:21:49 +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 p1AHLn4Q004201 for ; Thu, 10 Feb 2011 17:21:49 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1AHLnWQ004198 for perforce@freebsd.org; Thu, 10 Feb 2011 17:21:49 GMT (envelope-from trasz@freebsd.org) Date: Thu, 10 Feb 2011 17:21:49 GMT Message-Id: <201102101721.p1AHLnWQ004198@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 188690 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: Thu, 10 Feb 2011 17:21:50 -0000 http://p4web.freebsd.org/@@188690?ac=10 Change 188690 by trasz@trasz_victim on 2011/02/10 17:21:46 Fix indent. Affected files ... .. //depot/projects/soc2009/trasz_limits/lib/libutil/login_class.c#9 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/lib/libutil/login_class.c#9 (text+ko) ==== @@ -514,8 +514,8 @@ return (-1); } + /* Inform the kernel about current login class */ if (lc != NULL && lc->lc_class != NULL && (flags & LOGIN_SETLOGINCLASS)) { - /* Inform the kernel about current login class */ /* * XXX: This is a workaround to fail gracefully in case the kernel * does not support setloginclass(2). @@ -526,13 +526,13 @@ sigaction(SIGSYS, &sa, &prevsa); error = setloginclass(lc->lc_class); sigaction(SIGSYS, &prevsa, NULL); - if (error != 0) { + if (error != 0) { syslog(LOG_ERR, "setloginclass(%s): %m", lc->lc_class); #ifdef notyet login_close(llc); return (-1); #endif - } + } } mymask = (flags & LOGIN_SETUMASK) ? umask(LOGIN_DEFUMASK) : 0; From owner-p4-projects@FreeBSD.ORG Thu Feb 10 19:41:09 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D2F1D1065674; Thu, 10 Feb 2011 19:41: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 94FAB1065672 for ; Thu, 10 Feb 2011 19:41:08 +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 811158FC21 for ; Thu, 10 Feb 2011 19:41:08 +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 p1AJf8Uf033065 for ; Thu, 10 Feb 2011 19:41:08 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1AJf8rE033058 for perforce@freebsd.org; Thu, 10 Feb 2011 19:41:08 GMT (envelope-from trasz@freebsd.org) Date: Thu, 10 Feb 2011 19:41:08 GMT Message-Id: <201102101941.p1AJf8rE033058@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 188692 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: Thu, 10 Feb 2011 19:41:09 -0000 http://p4web.freebsd.org/@@188692?ac=10 Change 188692 by trasz@trasz_victim on 2011/02/10 19:40:25 Jails are not like uidinfo structures - we can't just increase their refcount when rules get linked to them, because it would leave them hanging in "dead" state after all the jailed processes died. Instead, treat them like we do with processes - instead of bumping their reference counts, just hold allprison_lock. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#73 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_jail.c#36 edit .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#28 edit .. //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#12 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_container.c#73 (text+ko) ==== @@ -615,7 +615,7 @@ PROC_UNLOCK(p); #ifdef RCTL - rctl_proc_exit(p); + rctl_container_release(p->p_container); #endif container_destroy(&p->p_container); } ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_jail.c#36 (text+ko) ==== @@ -50,6 +50,7 @@ #include #include #include +#include #include #include #include @@ -2532,6 +2533,9 @@ if (pr->pr_cpuset != NULL) cpuset_rel(pr->pr_cpuset); osd_jail_exit(pr); +#ifdef RCTL + rctl_container_release(pr->pr_container); +#endif container_destroy(&pr->pr_container); free(pr, M_PRISON); ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#28 (text+ko) ==== @@ -607,6 +607,7 @@ switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_UNDEFINED: case RCTL_SUBJECT_TYPE_PROCESS: + case RCTL_SUBJECT_TYPE_JAIL: break; case RCTL_SUBJECT_TYPE_USER: if (rule->rr_subject.rs_uip != NULL) @@ -616,10 +617,6 @@ if (rule->rr_subject.hr_loginclass != NULL) loginclass_acquire(rule->rr_subject.hr_loginclass); break; - case RCTL_SUBJECT_TYPE_JAIL: - 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->rr_subject_type); @@ -633,6 +630,7 @@ switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_UNDEFINED: case RCTL_SUBJECT_TYPE_PROCESS: + case RCTL_SUBJECT_TYPE_JAIL: break; case RCTL_SUBJECT_TYPE_USER: if (rule->rr_subject.rs_uip != NULL) @@ -642,10 +640,6 @@ if (rule->rr_subject.hr_loginclass != NULL) loginclass_release(rule->rr_subject.hr_loginclass); break; - case RCTL_SUBJECT_TYPE_JAIL: - 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->rr_subject_type); @@ -842,17 +836,13 @@ rule->rr_subject.hr_loginclass = loginclass_find(subject_idstr); break; case RCTL_SUBJECT_TYPE_JAIL: - sx_slock(&allprison_lock); 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->rr_subject.rs_prison); /* prison_find() returns with mutex held. */ mtx_unlock(&rule->rr_subject.rs_prison->pr_mtx); - sx_sunlock(&allprison_lock); break; default: panic("rctl_rule_from_string: unknown subject type %d", @@ -1222,9 +1212,11 @@ return (error); sx_slock(&allproc_lock); + sx_slock(&allprison_lock); filter = rctl_rule_from_string(inputstr); free(inputstr, M_RCTL); if (filter == NULL) { + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EINVAL); } @@ -1271,6 +1263,7 @@ } out: rctl_rule_release(filter); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); if (error != 0) return (error); @@ -1317,9 +1310,11 @@ return (error); sx_slock(&allproc_lock); + sx_slock(&allprison_lock); filter = rctl_rule_from_string(inputstr); free(inputstr, M_RCTL); if (filter == NULL) { + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EINVAL); } @@ -1366,6 +1361,7 @@ error = rctl_write_outbuf(sb, uap->outbufp, uap->outbuflen); rctl_rule_release(filter); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); free(buf, M_RCTL); return (error); @@ -1390,25 +1386,30 @@ return (error); sx_slock(&allproc_lock); + sx_slock(&allprison_lock); filter = rctl_rule_from_string(inputstr); free(inputstr, M_RCTL); if (filter == NULL) { + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EINVAL); } if (filter->rr_subject_type == RCTL_SUBJECT_TYPE_UNDEFINED) { rctl_rule_release(filter); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EINVAL); } if (filter->rr_subject_type != RCTL_SUBJECT_TYPE_PROCESS) { rctl_rule_release(filter); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EOPNOTSUPP); } if (filter->rr_subject.rs_proc == NULL) { rctl_rule_release(filter); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EINVAL); } @@ -1439,6 +1440,7 @@ error = rctl_write_outbuf(sb, uap->outbufp, uap->outbuflen); rctl_rule_release(filter); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); free(buf, M_RCTL); return (error); @@ -1460,9 +1462,11 @@ return (error); sx_slock(&allproc_lock); + sx_slock(&allprison_lock); rule = rctl_rule_from_string(inputstr); free(inputstr, M_RCTL); if (rule == NULL) { + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EINVAL); } @@ -1482,6 +1486,7 @@ out: rctl_rule_release(rule); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (error); } @@ -1502,15 +1507,18 @@ return (error); sx_slock(&allproc_lock); + sx_slock(&allprison_lock); filter = rctl_rule_from_string(inputstr); free(inputstr, M_RCTL); if (filter == NULL) { + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (EINVAL); } error = rctl_rule_remove(filter); rctl_rule_release(filter); + sx_sunlock(&allprison_lock); sx_sunlock(&allproc_lock); return (error); @@ -1725,16 +1733,16 @@ } /* - * Go through the process' limits, freeing them. + * Release rules attached to the container. */ void -rctl_proc_exit(struct proc *p) +rctl_container_release(struct container *container) { struct rctl_rule_link *link; rw_wlock(&rctl_lock); - while (!LIST_EMPTY(&p->p_container->c_rule_links)) { - link = LIST_FIRST(&p->p_container->c_rule_links); + while (!LIST_EMPTY(&container->c_rule_links)) { + link = LIST_FIRST(&container->c_rule_links); LIST_REMOVE(link, rrl_next); rctl_rule_release(link->rrl_rule); uma_zfree(rctl_rule_link_zone, link); ==== //depot/projects/soc2009/trasz_limits/sys/sys/rctl.h#12 (text+ko) ==== @@ -132,7 +132,6 @@ #define RCTL_AMOUNT_UNDEFINED -1 -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); void rctl_rule_acquire(struct rctl_rule *rule); @@ -144,8 +143,9 @@ 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); +void rctl_proc_ucred_changed(struct proc *p, struct ucred *newcred); int rctl_proc_fork(struct proc *parent, struct proc *child); -void rctl_proc_exit(struct proc *p); +void rctl_container_release(struct container *container); #else /* !_KERNEL */ /* From owner-p4-projects@FreeBSD.ORG Thu Feb 10 20:25:01 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 578F81065672; Thu, 10 Feb 2011 20:25: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 1A2FD106564A for ; Thu, 10 Feb 2011 20:25: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 DD5E28FC13 for ; Thu, 10 Feb 2011 20:25:00 +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 p1AKP0hG041712 for ; Thu, 10 Feb 2011 20:25:00 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1AKP073041709 for perforce@freebsd.org; Thu, 10 Feb 2011 20:25:00 GMT (envelope-from trasz@freebsd.org) Date: Thu, 10 Feb 2011 20:25:00 GMT Message-Id: <201102102025.p1AKP073041709@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 188693 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: Thu, 10 Feb 2011 20:25:01 -0000 http://p4web.freebsd.org/@@188693?ac=10 Change 188693 by trasz@trasz_victim on 2011/02/10 20:24:38 Use jail names instead of jail IDs. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#29 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#29 (text+ko) ==== @@ -807,20 +807,14 @@ rule->rr_subject.hr_loginclass = NULL; rule->rr_subject.rs_prison = NULL; } else { - - /* - * Loginclasses don't have any numerical ID's. - */ - if (rule->rr_subject_type != RCTL_SUBJECT_TYPE_LOGINCLASS) { - error = str2id(subject_idstr, &id); - if (error != 0) - goto out; - } switch (rule->rr_subject_type) { case RCTL_SUBJECT_TYPE_UNDEFINED: error = EINVAL; goto out; case RCTL_SUBJECT_TYPE_PROCESS: + error = str2id(subject_idstr, &id); + if (error != 0) + goto out; sx_assert(&allproc_lock, SA_LOCKED); rule->rr_subject.rs_proc = pfind(id); if (rule->rr_subject.rs_proc == NULL) { @@ -830,16 +824,30 @@ PROC_UNLOCK(rule->rr_subject.rs_proc); break; case RCTL_SUBJECT_TYPE_USER: + error = str2id(subject_idstr, &id); + if (error != 0) + goto out; rule->rr_subject.rs_uip = uifind(id); break; case RCTL_SUBJECT_TYPE_LOGINCLASS: - rule->rr_subject.hr_loginclass = loginclass_find(subject_idstr); + rule->rr_subject.hr_loginclass = + loginclass_find(subject_idstr); break; case RCTL_SUBJECT_TYPE_JAIL: - rule->rr_subject.rs_prison = prison_find(id); + rule->rr_subject.rs_prison = + prison_find_name(&prison0, subject_idstr); if (rule->rr_subject.rs_prison == NULL) { - error = ESRCH; - goto out; + /* + * No jail with that name; try with the JID. + */ + error = str2id(subject_idstr, &id); + if (error != 0) + goto out; + rule->rr_subject.rs_prison = prison_find(id); + if (rule->rr_subject.rs_prison == NULL) { + error = ESRCH; + goto out; + } } /* prison_find() returns with mutex held. */ mtx_unlock(&rule->rr_subject.rs_prison->pr_mtx); @@ -1104,7 +1112,7 @@ if (rule->rr_subject.rs_prison == NULL) sbuf_printf(sb, ":"); else - sbuf_printf(sb, "%d:", rule->rr_subject.rs_prison->pr_id); + sbuf_printf(sb, "%s:", rule->rr_subject.rs_prison->pr_name); break; default: panic("rctl_rule_to_sbuf: unknown subject type %d", From owner-p4-projects@FreeBSD.ORG Thu Feb 10 20:52:28 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 55A3710656A8; Thu, 10 Feb 2011 20:52: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 17976106566B for ; Thu, 10 Feb 2011 20:52: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 04A7E8FC1B for ; Thu, 10 Feb 2011 20:52: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 p1AKqRt7047382 for ; Thu, 10 Feb 2011 20:52:27 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1AKqRpw047379 for perforce@freebsd.org; Thu, 10 Feb 2011 20:52:27 GMT (envelope-from trasz@freebsd.org) Date: Thu, 10 Feb 2011 20:52:27 GMT Message-Id: <201102102052.p1AKqRpw047379@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 188695 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: Thu, 10 Feb 2011 20:52:28 -0000 http://p4web.freebsd.org/@@188695?ac=10 Change 188695 by trasz@trasz_victim on 2011/02/10 20:52:13 Simplify. Affected files ... .. //depot/projects/soc2009/trasz_limits/usr.bin/jailstat/jailstat.sh#4 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/usr.bin/jailstat/jailstat.sh#4 (text+ko) ==== @@ -70,9 +70,8 @@ n=0 while :; do if [ "`basename $0`" = "jailstat" ]; then - jails="`ps ax -o jid= | sort -u | sed 1d`" printf "JID\t%%CPU\tLIMIT\tRSS\tLIMIT\tVMEM\tLIMIT\tSWAP\tLIMIT\n" - for jail in $jails; do + jls jid | while read jail; do # Put resource=value pairs into environment variables. eval `rctl $hflag -u j:$jail` @@ -85,9 +84,8 @@ done else - users="`ps ax -o user= | sort -u`" printf "USER\t%%CPU\tLIMIT\tRSS\tLIMIT\tVMEM\tLIMIT\tSWAP\tLIMIT\n" - for user in $users; do + ps ax -o user= | sort -u | while read user; do # Put resource=value pairs into environment variables. eval `rctl $hflag -u u:$user` From owner-p4-projects@FreeBSD.ORG Sat Feb 12 08:13:09 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 780AB1065673; Sat, 12 Feb 2011 08:13: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 2E8951065670 for ; Sat, 12 Feb 2011 08:13:09 +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 192AF8FC0C for ; Sat, 12 Feb 2011 08:13: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 p1C8D81Z082798 for ; Sat, 12 Feb 2011 08:13:08 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1C8D5u7082795 for perforce@freebsd.org; Sat, 12 Feb 2011 08:13:05 GMT (envelope-from lz@FreeBSD.org) Date: Sat, 12 Feb 2011 08:13:05 GMT Message-Id: <201102120813.p1C8D5u7082795@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 188743 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, 12 Feb 2011 08:13:09 -0000 http://p4web.freebsd.org/@@188743?ac=10 Change 188743 by lz@gnehzuil-freebsd on 2011/02/12 08:12:55 IFC. Affected files ... .. //depot/projects/soc2010/extfs/src/sys/amd64/amd64/machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/amd64/amd64/uio_machdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/amd64/amd64/vm_machdep.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/amd64/ia32/ia32_signal.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/amd64/linux32/linux.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/amd64/linux32/linux32_machdep.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/arm/locore.S#2 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/arm/sys_machdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/arm/uio_machdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/arm/vm_machdep.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/include/fdt.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/include/pmap.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/include/proc.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/mv/gpio.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/mv/ic.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/mv/mv_pci.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/mv/timer.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/arm/s3c2xx0/std.ln2410sbc#2 integrate .. //depot/projects/soc2010/extfs/src/sys/boot/fdt/dts/db78100.dts#2 integrate .. //depot/projects/soc2010/extfs/src/sys/boot/pc98/Makefile#2 integrate .. //depot/projects/soc2010/extfs/src/sys/boot/pc98/pc98boot/Makefile#1 branch .. //depot/projects/soc2010/extfs/src/sys/cam/ata/ata_xpt.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/cddl/compat/opensolaris/sys/atomic.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/cddl/compat/opensolaris/sys/types.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/compat/linprocfs/linprocfs.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/compat/linux/linux_futex.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/compat/linux/linux_futex.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/compat/linux/linux_misc.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/compat/linux/linux_misc.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/compat/linux/linux_stats.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/conf/NOTES#3 integrate .. //depot/projects/soc2010/extfs/src/sys/conf/files#5 integrate .. //depot/projects/soc2010/extfs/src/sys/conf/kern.pre.mk#3 integrate .. //depot/projects/soc2010/extfs/src/sys/conf/options#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/changes.txt#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/common/dmtable.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/common/dmtbdump.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/common/dmtbinfo.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslanalyze.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslbtypes.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslcompile.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslcompiler.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslcompiler.l#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslcompiler.y#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslmessages.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslpredef.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/asltree.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/aslwalks.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/dtcompile.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/dtcompiler.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/dtexpress.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/dtfield.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/dtio.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/dttable.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/compiler/dtutils.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/debugger/dbcmds.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/debugger/dbdisply.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/debugger/dbinput.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/debugger/dbmethod.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/debugger/dbnames.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/dispatcher/dsargs.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/dispatcher/dscontrol.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/dispatcher/dsopcode.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/dispatcher/dswload.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/dispatcher/dswload2.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/events/evgpe.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/events/evregion.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/events/evxfregn.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/executer/exfldio.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/acdebug.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/acdisasm.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/acdispat.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/acglobal.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/aclocal.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/acoutput.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/acpixf.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/include/actbl.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/tables/tbfadt.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/tools/acpiexec/aecommon.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/utilities/utdecode.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/contrib/dev/acpica/utilities/utglobal.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/aac/aac.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/aac/aacvar.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ahci/ahci.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/alc/if_alc.c#5 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ata/ata-pci.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ata/chipsets/ata-intel.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah_debug.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah_eeprom_v14.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah_eeprom_v14.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah_eeprom_v4k.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah_eeprom_v4k.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ah_internal.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5212/ar5212.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5212/ar5212_keycache.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar2133.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416_ani.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416phy.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar5416/ar5416reg.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar9001/ar9160_attach.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar9002/ar9280.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar9002/ar9280.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar9002/ar9285.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_hal/ar9002/ar9285v2.ini#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_rate/amrr/amrr.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_rate/onoe/onoe.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_rate/sample/sample.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_rate/sample/sample.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/ath_rate/sample/tx_schedules.h#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath_debug.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath_debug.h#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath_misc.h#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath_tx.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath_tx.h#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath_tx_ht.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_ath_tx_ht.h#1 branch .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_athioctl.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_athrate.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ath/if_athvar.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/bce/if_bce.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/bce/if_bcefw.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/bce/if_bcereg.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/cs/if_cs.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/cs/if_csreg.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/cs/if_csvar.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/cxgb/cxgb_sge.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_80003es2lan.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_80003es2lan.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_82540.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_82541.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_82542.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_82543.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_82571.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_82575.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_82575.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_api.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_api.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_defines.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_hw.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_ich8lan.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_ich8lan.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_mac.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_mac.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_manage.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_manage.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_mbx.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_nvm.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_nvm.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_osdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_phy.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_phy.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_regs.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_vf.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/e1000_vf.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/if_igb.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/e1000/if_igb.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/fdt/fdt_common.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/fdt/fdt_pci.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/fdt/fdtbus.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/flash/mx25l.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ichsmb/ichsmb_pci.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ichwd/ichwd.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/ichwd/ichwd.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/md/md.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/mii/miidevs#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/mii/rlphy.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/re/if_re.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/siis/siis.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/siis/siis.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/sio/sio.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/sound/pci/emu10k1.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/sound/pci/emu10kx.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/sound/pci/hda/hdac.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/tsec/if_tsec_fdt.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/controller/ehci_mv.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/controller/usb_controller.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/quirk/usb_quirk.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/serial/u3g.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/serial/umodem.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/template/usb_template.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/usb_pf.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/usb_pf.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/usb_transfer.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/usbdevs#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/wlan/if_run.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/usb/wlan/if_runvar.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/dev/xen/netfront/netfront.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_alloc.c#32 edit .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_mount.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2_vfsops.c#9 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/ext2fs/ext2fs.h#6 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/nfs/nfsport.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/nfsserver/nfs_nfsdport.c#5 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/procfs/procfs_dbregs.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/procfs/procfs_fpregs.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/procfs/procfs_map.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/fs/procfs/procfs_regs.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/geom_disk.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/journal/g_journal.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/part/g_part.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/part/g_part.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/part/g_part_bsd.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/part/g_part_ebr.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/part/g_part_gpt.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/part/g_part_mbr.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/geom/part/g_part_pc98.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/i386/i386/machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/i386/i386/uio_machdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/i386/linux/imgact_linux.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/soc2010/extfs/src/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/soc2010/extfs/src/sys/ia64/ia64/uio_machdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/imgact_elf.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_context.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_descrip.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_fork.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_jail.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_malloc.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_proc.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_sig.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_synch.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/kern_sysctl.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_lock.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_module.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_sleepqueue.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_smp.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_trap.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_turnstile.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_uio.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/subr_witness.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/sys_process.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/uipc_socket.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/uipc_syscalls.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/uipc_usrreq.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/vfs_bio.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/vfs_mount.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/vfs_subr.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/kern/vfs_vnops.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/cavium/if_octm.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/cavium/octe/ethernet-common.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/cavium/octeon_mp.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/include/_inttypes.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/include/_limits.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/include/_stdint.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/include/_types.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/include/cpufunc.h#5 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/include/hwfunc.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/include/sf_buf.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/mips/mp_machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/mips/uio_machdep.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/mips/vm_machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/rmi/xlr_machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/mips/sibyte/sb_scd.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/modules/acpi/acpi/Makefile#3 integrate .. //depot/projects/soc2010/extfs/src/sys/modules/ath/Makefile#3 integrate .. //depot/projects/soc2010/extfs/src/sys/modules/cc/Makefile#2 integrate .. //depot/projects/soc2010/extfs/src/sys/modules/cc/cc_chd/Makefile#1 branch .. //depot/projects/soc2010/extfs/src/sys/modules/cc/cc_hd/Makefile#1 branch .. //depot/projects/soc2010/extfs/src/sys/modules/cc/cc_vegas/Makefile#1 branch .. //depot/projects/soc2010/extfs/src/sys/net/if.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/net/netisr.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/net/rtsock.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/net/vnet.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/net80211/ieee80211_ioctl.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/net80211/ieee80211_scan.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/cc.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/cc/cc_chd.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/netinet/cc/cc_hd.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/netinet/cc/cc_newreno.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/cc/cc_vegas.c#1 branch .. //depot/projects/soc2010/extfs/src/sys/netinet/if_ether.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/in_pcb.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/ipfw/ip_dn_io.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_asconf.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_asconf.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_auth.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_auth.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_bsd_addr.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_bsd_addr.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_cc_functions.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_constants.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_crc32.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_crc32.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_dtrace_declare.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_dtrace_define.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_header.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_indata.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_indata.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_input.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_input.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_lock_bsd.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_os.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_os_bsd.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_output.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_output.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_pcb.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_pcb.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_peeloff.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_peeloff.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_ss_functions.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_structs.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_sysctl.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_sysctl.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_timer.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_timer.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_uio.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_usrreq.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctp_var.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctputil.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/sctputil.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet/tcp_usrreq.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet6/sctp6_usrreq.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/netinet6/sctp6_var.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/nfsserver/nfs_serv.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/pc98/cbus/sio.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/pc98/pc98/machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/pci/if_rlreg.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/aim/trap.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/include/fdt.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/include/intr_machdep.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/include/openpicvar.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/mambo/mambo_openpic.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/mpc85xx/atpic.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/mpc85xx/isa.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/mpc85xx/nexus.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/mpc85xx/openpic_fdt.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/mpc85xx/pci_fdt.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/ofw/ofw_pcib_pci.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/ofw/ofw_pcibus.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/cpcht.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/grackle.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/hrowpic.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/macgpio.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/macio.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/openpic_macio.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/uninorth.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powermac/uninorthpci.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powerpc/exec_machdep.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powerpc/intr_machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powerpc/openpic.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powerpc/pic_if.m#3 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/powerpc/uio_machdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/ps3/ps3pic.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/powerpc/psim/openpic_iobus.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/security/mac/mac_process.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/sparc64/sparc64/machdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/sparc64/sparc64/pmap.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/sparc64/sparc64/uio_machdep.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/sun4v/sun4v/uio_machdep.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/diskmbr.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/gpt.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/linker.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/param.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/proc.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/ptrace.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/sysctl.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/sysent.h#4 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/taskqueue.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/uio.h#2 integrate .. //depot/projects/soc2010/extfs/src/sys/sys/vnode.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/ufs/ffs/ffs_rawread.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/ufs/ffs/ffs_snapshot.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/ufs/ffs/ffs_softdep.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/ufs/ufs/ufs_acl.c#2 integrate .. //depot/projects/soc2010/extfs/src/sys/ufs/ufs/ufs_vnops.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/uma_core.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/vm_map.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/vm_meter.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/vm_object.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/vm_object.h#3 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/vm_page.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/vm_phys.c#4 integrate .. //depot/projects/soc2010/extfs/src/sys/vm/vm_reserv.c#3 integrate .. //depot/projects/soc2010/extfs/src/sys/x86/x86/mca.c#2 integrate Differences ... ==== //depot/projects/soc2010/extfs/src/sys/amd64/amd64/machdep.c#4 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.739 2011/01/21 10:26:26 pluknet Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.741 2011/02/05 15:10:27 kib Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -331,6 +331,9 @@ fpstate_drop(td); sf.sf_uc.uc_mcontext.mc_fsbase = pcb->pcb_fsbase; sf.sf_uc.uc_mcontext.mc_gsbase = pcb->pcb_gsbase; + bzero(sf.sf_uc.uc_mcontext.mc_spare, + sizeof(sf.sf_uc.uc_mcontext.mc_spare)); + bzero(sf.sf_uc.__spare__, sizeof(sf.sf_uc.__spare__)); /* Allocate space for the signal handler context. */ if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack && @@ -352,6 +355,7 @@ /* Build the argument list for the signal handler. */ regs->tf_rdi = sig; /* arg 1 in %rdi */ regs->tf_rdx = (register_t)&sfp->sf_uc; /* arg 3 in %rdx */ + bzero(&sf.sf_si, sizeof(sf.sf_si)); if (SIGISMEMBER(psp->ps_siginfo, sig)) { /* Signal handler installed with SA_SIGINFO. */ regs->tf_rsi = (register_t)&sfp->sf_si; /* arg 2 in %rsi */ @@ -1527,12 +1531,14 @@ struct nmi_pcpu *np; u_int64_t msr; char *env; + size_t kstack0_sz; thread0.td_kstack = physfree + KERNBASE; - bzero((void *)thread0.td_kstack, KSTACK_PAGES * PAGE_SIZE); - physfree += KSTACK_PAGES * PAGE_SIZE; - thread0.td_pcb = (struct pcb *) - (thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1; + thread0.td_kstack_pages = KSTACK_PAGES; + kstack0_sz = thread0.td_kstack_pages * PAGE_SIZE; + bzero((void *)thread0.td_kstack, kstack0_sz); + physfree += kstack0_sz; + thread0.td_pcb = (struct pcb *)(thread0.td_kstack + kstack0_sz) - 1; /* * This may be done better later if it gets more high level @@ -1674,8 +1680,8 @@ initializecpucache(); /* make an initial tss so cpu can get interrupt stack on syscall! */ - common_tss[0].tss_rsp0 = thread0.td_kstack + \ - KSTACK_PAGES * PAGE_SIZE - sizeof(struct pcb); + common_tss[0].tss_rsp0 = thread0.td_kstack + + kstack0_sz - sizeof(struct pcb); /* Ensure the stack is aligned to 16 bytes */ common_tss[0].tss_rsp0 &= ~0xFul; PCPU_SET(rsp0, common_tss[0].tss_rsp0); @@ -2041,6 +2047,7 @@ get_fpcontext(td, mcp); mcp->mc_fsbase = pcb->pcb_fsbase; mcp->mc_gsbase = pcb->pcb_gsbase; + bzero(mcp->mc_spare, sizeof(mcp->mc_spare)); return (0); } ==== //depot/projects/soc2010/extfs/src/sys/amd64/amd64/uio_machdep.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/uio_machdep.c,v 1.6 2005/01/05 20:17:20 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/uio_machdep.c,v 1.7 2011/02/02 16:35:10 mdf Exp $"); #include #include @@ -88,8 +88,7 @@ page_offset; switch (uio->uio_segflg) { case UIO_USERSPACE: - if (ticks - PCPU_GET(switchticks) >= hogticks) - uio_yield(); + maybe_yield(); if (uio->uio_rw == UIO_READ) error = copyout(cp, iov->iov_base, cnt); else ==== //depot/projects/soc2010/extfs/src/sys/amd64/amd64/vm_machdep.c#3 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.274 2010/12/22 00:18:42 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.275 2011/01/26 20:03:58 dchagin Exp $"); #include "opt_isa.h" #include "opt_cpu.h" @@ -445,7 +445,7 @@ cpu_thread_clean(td); #ifdef COMPAT_FREEBSD32 - if (td->td_proc->p_sysent->sv_flags & SV_ILP32) { + if (SV_PROC_FLAG(td->td_proc, SV_ILP32)) { /* * Set the trap frame to point at the beginning of the uts * function. @@ -498,7 +498,7 @@ pcb = td->td_pcb; #ifdef COMPAT_FREEBSD32 - if (td->td_proc->p_sysent->sv_flags & SV_ILP32) { + if (SV_PROC_FLAG(td->td_proc, SV_ILP32)) { pcb->pcb_gsbase = (register_t)tls_base; return (0); } ==== //depot/projects/soc2010/extfs/src/sys/amd64/ia32/ia32_signal.c#4 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.36 2011/01/14 21:09:01 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.37 2011/02/05 15:10:27 kib Exp $"); #include "opt_compat.h" @@ -167,6 +167,8 @@ ia32_get_fpcontext(td, mcp); mcp->mc_fsbase = pcb->pcb_fsbase; mcp->mc_gsbase = pcb->pcb_gsbase; + bzero(mcp->mc_spare1, sizeof(mcp->mc_spare1)); + bzero(mcp->mc_spare2, sizeof(mcp->mc_spare2)); set_pcb_flags(pcb, PCB_FULL_IRET); return (0); } @@ -233,6 +235,7 @@ PROC_LOCK(td->td_proc); uc.uc_sigmask = td->td_sigmask; PROC_UNLOCK(td->td_proc); + bzero(&uc.__spare__, sizeof(uc.__spare__)); ret = copyout(&uc, uap->ucp, UC_COPY_SIZE); } return (ret); @@ -348,6 +351,11 @@ sf.sf_uc.uc_mcontext.mc_es = regs->tf_es; sf.sf_uc.uc_mcontext.mc_fs = regs->tf_fs; sf.sf_uc.uc_mcontext.mc_gs = regs->tf_gs; + bzero(sf.sf_uc.uc_mcontext.mc_fpregs, + sizeof(sf.sf_uc.uc_mcontext.mc_fpregs)); + bzero(sf.sf_uc.uc_mcontext.__spare__, + sizeof(sf.sf_uc.uc_mcontext.__spare__)); + bzero(sf.sf_uc.__spare__, sizeof(sf.sf_uc.__spare__)); /* Allocate space for the signal handler context. */ if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack && @@ -365,6 +373,7 @@ /* Build the argument list for the signal handler. */ sf.sf_signum = sig; sf.sf_ucontext = (register_t)&sfp->sf_uc; + bzero(&sf.sf_si, sizeof(sf.sf_si)); if (SIGISMEMBER(psp->ps_siginfo, sig)) { /* Signal handler installed with SA_SIGINFO. */ sf.sf_siginfo = (u_int32_t)(uintptr_t)&sfp->sf_si; @@ -468,6 +477,7 @@ fpstate_drop(td); sf.sf_uc.uc_mcontext.mc_fsbase = td->td_pcb->pcb_fsbase; sf.sf_uc.uc_mcontext.mc_gsbase = td->td_pcb->pcb_gsbase; + bzero(sf.sf_uc.__spare__, sizeof(sf.sf_uc.__spare__)); /* Allocate space for the signal handler context. */ if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack && @@ -487,6 +497,7 @@ /* Build the argument list for the signal handler. */ sf.sf_signum = sig; sf.sf_ucontext = (register_t)&sfp->sf_uc; + bzero(&sf.sf_si, sizeof(sf.sf_si)); if (SIGISMEMBER(psp->ps_siginfo, sig)) { /* Signal handler installed with SA_SIGINFO. */ sf.sf_siginfo = (u_int32_t)(uintptr_t)&sfp->sf_si; ==== //depot/projects/soc2010/extfs/src/sys/amd64/linux32/linux.h#2 (text+ko) ==== @@ -27,7 +27,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.30 2010/03/28 13:13:22 ed Exp $ + * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.31 2011/01/27 21:45:38 kib Exp $ */ #ifndef _AMD64_LINUX_H_ @@ -370,28 +370,28 @@ /* The Linux sigcontext, pretty much a standard 386 trapframe. */ struct l_sigcontext { - l_int sc_gs; - l_int sc_fs; - l_int sc_es; - l_int sc_ds; - l_int sc_edi; - l_int sc_esi; - l_int sc_ebp; - l_int sc_esp; - l_int sc_ebx; - l_int sc_edx; - l_int sc_ecx; - l_int sc_eax; - l_int sc_trapno; - l_int sc_err; - l_int sc_eip; - l_int sc_cs; - l_int sc_eflags; - l_int sc_esp_at_signal; - l_int sc_ss; - l_int sc_387; - l_int sc_mask; - l_int sc_cr2; + l_uint sc_gs; + l_uint sc_fs; + l_uint sc_es; + l_uint sc_ds; + l_uint sc_edi; + l_uint sc_esi; + l_uint sc_ebp; + l_uint sc_esp; + l_uint sc_ebx; + l_uint sc_edx; + l_uint sc_ecx; + l_uint sc_eax; + l_uint sc_trapno; + l_uint sc_err; + l_uint sc_eip; + l_uint sc_cs; + l_uint sc_eflags; + l_uint sc_esp_at_signal; + l_uint sc_ss; + l_uint sc_387; + l_uint sc_mask; + l_uint sc_cr2; } __packed; struct l_ucontext { ==== //depot/projects/soc2010/extfs/src/sys/amd64/linux32/linux32_machdep.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.59 2010/12/22 00:18:42 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.64 2011/01/30 18:17:38 dchagin Exp $"); #include #include @@ -51,6 +51,7 @@ #include #include #include +#include #include #include @@ -66,6 +67,7 @@ #include #include #include +#include #include #include #include @@ -106,6 +108,30 @@ return (lsa); } +static void +bsd_to_linux_rusage(struct rusage *ru, struct l_rusage *lru) +{ + + lru->ru_utime.tv_sec = ru->ru_utime.tv_sec; + lru->ru_utime.tv_usec = ru->ru_utime.tv_usec; + lru->ru_stime.tv_sec = ru->ru_stime.tv_sec; + lru->ru_stime.tv_usec = ru->ru_stime.tv_usec; + lru->ru_maxrss = ru->ru_maxrss; + lru->ru_ixrss = ru->ru_ixrss; + lru->ru_idrss = ru->ru_idrss; + lru->ru_isrss = ru->ru_isrss; + lru->ru_minflt = ru->ru_minflt; + lru->ru_majflt = ru->ru_majflt; + lru->ru_nswap = ru->ru_nswap; + lru->ru_inblock = ru->ru_inblock; + lru->ru_oublock = ru->ru_oublock; + lru->ru_msgsnd = ru->ru_msgsnd; + lru->ru_msgrcv = ru->ru_msgrcv; + lru->ru_nsignals = ru->ru_nsignals; + lru->ru_nvcsw = ru->ru_nvcsw; + lru->ru_nivcsw = ru->ru_nivcsw; +} + int linux_execve(struct thread *td, struct linux_execve_args *args) { @@ -131,7 +157,7 @@ * linux_proc_init, this leads to a panic on KASSERT * because such process has p->p_emuldata == NULL. */ - if (td->td_proc->p_sysent == &elf_linux_sysvec) + if (SV_PROC_ABI(td->td_proc) == SV_ABI_LINUX) error = linux_proc_init(td, 0, 0); return (error); } @@ -1126,24 +1152,7 @@ if (error != 0) return (error); if (uap->rusage != NULL) { - s32.ru_utime.tv_sec = s.ru_utime.tv_sec; - s32.ru_utime.tv_usec = s.ru_utime.tv_usec; - s32.ru_stime.tv_sec = s.ru_stime.tv_sec; - s32.ru_stime.tv_usec = s.ru_stime.tv_usec; - s32.ru_maxrss = s.ru_maxrss; - s32.ru_ixrss = s.ru_ixrss; - s32.ru_idrss = s.ru_idrss; - s32.ru_isrss = s.ru_isrss; - s32.ru_minflt = s.ru_minflt; - s32.ru_majflt = s.ru_majflt; - s32.ru_nswap = s.ru_nswap; - s32.ru_inblock = s.ru_inblock; - s32.ru_oublock = s.ru_oublock; - s32.ru_msgsnd = s.ru_msgsnd; - s32.ru_msgrcv = s.ru_msgrcv; - s32.ru_nsignals = s.ru_nsignals; - s32.ru_nvcsw = s.ru_nvcsw; - s32.ru_nivcsw = s.ru_nivcsw; + bsd_to_linux_rusage(&s, &s32); error = copyout(&s32, uap->rusage, sizeof(s32)); } return (error); @@ -1267,3 +1276,37 @@ return (0); } + +int +linux_wait4(struct thread *td, struct linux_wait4_args *args) +{ + int error, options; + struct rusage ru, *rup; + struct l_rusage lru; + +#ifdef DEBUG + if (ldebug(wait4)) + printf(ARGS(wait4, "%d, %p, %d, %p"), + args->pid, (void *)args->status, args->options, + (void *)args->rusage); +#endif + + options = (args->options & (WNOHANG | WUNTRACED)); + /* WLINUXCLONE should be equal to __WCLONE, but we make sure */ + if (args->options & __WCLONE) + options |= WLINUXCLONE; + + if (args->rusage != NULL) + rup = &ru; + else + rup = NULL; + error = linux_common_wait(td, args->pid, args->status, options, rup); + if (error) + return (error); + if (args->rusage != NULL) { + bsd_to_linux_rusage(rup, &lru); + error = copyout(&lru, args->rusage, sizeof(lru)); + } + + return (error); +} ==== //depot/projects/soc2010/extfs/src/sys/amd64/linux32/linux32_proto.h#3 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.42 2010/10/08 07:19:05 kib Exp $ + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.43 2011/01/30 20:38:26 dchagin Exp $ * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 213544 2010-10-08 07:18:44Z kib */ @@ -734,10 +734,10 @@ struct linux_sys_futex_args { char uaddr_l_[PADL_(void *)]; void * uaddr; char uaddr_r_[PADR_(void *)]; char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; - char val_l_[PADL_(int)]; int val; char val_r_[PADR_(int)]; + char val_l_[PADL_(uint32_t)]; uint32_t val; char val_r_[PADR_(uint32_t)]; char timeout_l_[PADL_(struct l_timespec *)]; struct l_timespec * timeout; char timeout_r_[PADR_(struct l_timespec *)]; - char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)]; - char val3_l_[PADL_(int)]; int val3; char val3_r_[PADR_(int)]; + char uaddr2_l_[PADL_(uint32_t *)]; uint32_t * uaddr2; char uaddr2_r_[PADR_(uint32_t *)]; + char val3_l_[PADL_(uint32_t)]; uint32_t val3; char val3_r_[PADR_(uint32_t)]; }; struct linux_sched_setaffinity_args { char pid_l_[PADL_(l_pid_t)]; l_pid_t pid; char pid_r_[PADR_(l_pid_t)]; ==== //depot/projects/soc2010/extfs/src/sys/amd64/linux32/syscalls.master#3 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.38 2010/10/08 07:18:44 kib Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.39 2011/01/30 20:31:43 dchagin Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -405,8 +405,8 @@ 237 AUE_NULL STD { int linux_fremovexattr(void); } 238 AUE_NULL STD { int linux_tkill(int tid, int sig); } 239 AUE_SENDFILE UNIMPL linux_sendfile64 -240 AUE_NULL STD { int linux_sys_futex(void *uaddr, int op, int val, \ - struct l_timespec *timeout, void *uaddr2, int val3); } +240 AUE_NULL STD { int linux_sys_futex(void *uaddr, int op, uint32_t val, \ + struct l_timespec *timeout, uint32_t *uaddr2, uint32_t val3); } 241 AUE_NULL STD { int linux_sched_setaffinity(l_pid_t pid, l_uint len, \ l_ulong *user_mask_ptr); } 242 AUE_NULL STD { int linux_sched_getaffinity(l_pid_t pid, l_uint len, \ ==== //depot/projects/soc2010/extfs/src/sys/arm/arm/locore.S#2 (text+ko) ==== @@ -37,7 +37,7 @@ #include #include #include -__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.23 2009/06/09 17:21:47 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.24 2011/02/03 17:35:16 marcel Exp $"); /* What size should this really be ? It is only used by initarm() */ #define INIT_ARM_STACK_SIZE 2048 @@ -65,14 +65,20 @@ ENTRY_NP(btext) -ASENTRY_NP(_start) - /* - * Move metadata ptr to r12 (ip) + * On entry: + * r0 - metadata pointer or 0 + * r1 - if (r0 == 0) then metadata pointer */ +ASENTRY_NP(_start) + /* Move metadata ptr to r12 (ip) */ mov ip, r0 - + ldr r0, =0 + cmp ip, r0 + bne 1f + mov ip, r1 +1: /* Make sure interrupts are disabled. */ mrs r7, cpsr orr r7, r7, #(I32_bit|F32_bit) ==== //depot/projects/soc2010/extfs/src/sys/arm/arm/sys_machdep.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/sys_machdep.c,v 1.5 2007/02/14 01:25:41 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/sys_machdep.c,v 1.6 2011/02/05 03:30:29 imp Exp $"); #include #include @@ -85,7 +85,7 @@ arm32_set_tp(struct thread *td, void *args) { - td->td_md.md_tp = args; + td->td_md.md_tp = (register_t)args; return (0); } @@ -93,7 +93,7 @@ arm32_get_tp(struct thread *td, void *args) { - td->td_retval[0] = (uint32_t)td->td_md.md_tp; + td->td_retval[0] = td->td_md.md_tp; return (0); } ==== //depot/projects/soc2010/extfs/src/sys/arm/arm/uio_machdep.c#2 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/uio_machdep.c,v 1.6 2008/03/06 22:27:35 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/uio_machdep.c,v 1.7 2011/02/02 16:35:10 mdf Exp $"); #include #include @@ -94,8 +94,7 @@ cp = (char*)sf_buf_kva(sf) + page_offset; switch (uio->uio_segflg) { case UIO_USERSPACE: - if (ticks - PCPU_GET(switchticks) >= hogticks) - uio_yield(); + maybe_yield(); if (uio->uio_rw == UIO_READ) error = copyout(cp, iov->iov_base, cnt); else ==== //depot/projects/soc2010/extfs/src/sys/arm/arm/vm_machdep.c#3 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.46 2011/01/18 21:57:02 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.47 2011/02/05 03:30:29 imp Exp $"); #include #include @@ -146,7 +146,7 @@ /* Setup to release spin count in fork_exit(). */ td2->td_md.md_spinlock_count = 1; td2->td_md.md_saved_cspr = 0; - td2->td_md.md_tp = *(uint32_t **)ARM_TP_ADDRESS; + td2->td_md.md_tp = *(register_t *)ARM_TP_ADDRESS; } void @@ -370,10 +370,10 @@ { if (td != curthread) - td->td_md.md_tp = tls_base; + td->td_md.md_tp = (register_t)tls_base; else { critical_enter(); - *(void **)ARM_TP_ADDRESS = tls_base; + *(register_t *)ARM_TP_ADDRESS = (register_t)tls_base; critical_exit(); } return (0); ==== //depot/projects/soc2010/extfs/src/sys/arm/at91/if_ate.c#3 (text) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.49 2010/10/15 15:16:36 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.50 2011/02/07 01:13:57 ticso Exp $"); #include #include @@ -433,6 +433,16 @@ bus_dmamap_sync(sc->rx_desc_tag, sc->rx_desc_map, BUS_DMASYNC_POSTWRITE); } +static uint32_t +ate_mac_hash(const uint8_t *buf) +{ + uint32_t index = 0; + for (int i = 0; i < 48; i++) { + index ^= ((buf[i >> 3] >> (i & 7)) & 1) << (i % 6); + } + return (index); +} + /* * Compute the multicast filter for this device. */ @@ -462,8 +472,8 @@ TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; - index = ether_crc32_be(LLADDR((struct sockaddr_dl *) - ifma->ifma_addr), ETHER_ADDR_LEN) >> 26; + index = ate_mac_hash(LLADDR((struct sockaddr_dl *) + ifma->ifma_addr)); af[index >> 3] |= 1 << (index & 7); } if_maddr_runlock(ifp); ==== //depot/projects/soc2010/extfs/src/sys/arm/include/fdt.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Feb 12 08:33:47 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5A6C21065672; Sat, 12 Feb 2011 08:33:47 +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 11EB1106566B for ; Sat, 12 Feb 2011 08:33:47 +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 F070F8FC1B for ; Sat, 12 Feb 2011 08:33:46 +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 p1C8XkAg087590 for ; Sat, 12 Feb 2011 08:33:46 GMT (envelope-from lz@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1C8XhPN087587 for perforce@freebsd.org; Sat, 12 Feb 2011 08:33:43 GMT (envelope-from lz@FreeBSD.org) Date: Sat, 12 Feb 2011 08:33:43 GMT Message-Id: <201102120833.p1C8XhPN087587@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 188744 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, 12 Feb 2011 08:33:47 -0000 http://p4web.freebsd.org/@@188744?ac=10 Change 188744 by lz@gnehzuil-freebsd on 2011/02/12 08:33:31 IFC. Affected files ... .. //depot/projects/soc2010/ext4fs/src/sys/amd64/amd64/machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/amd64/amd64/uio_machdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/amd64/amd64/vm_machdep.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/amd64/ia32/ia32_signal.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/linux.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/linux32_machdep.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/arm/locore.S#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/arm/sys_machdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/arm/uio_machdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/arm/vm_machdep.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/at91/if_ate.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/include/fdt.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/include/pmap.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/include/proc.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/mv/gpio.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/mv/ic.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/mv/mv_pci.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/mv/timer.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/arm/s3c2xx0/std.ln2410sbc#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/boot/fdt/dts/db78100.dts#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/boot/pc98/Makefile#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/boot/pc98/pc98boot/Makefile#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/cam/ata/ata_xpt.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/cddl/compat/opensolaris/sys/atomic.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/cddl/compat/opensolaris/sys/types.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/compat/linprocfs/linprocfs.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/compat/linux/linux_futex.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/compat/linux/linux_futex.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/compat/linux/linux_misc.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/compat/linux/linux_misc.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/compat/linux/linux_stats.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/conf/NOTES#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/conf/files#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/conf/kern.pre.mk#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/conf/options#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/changes.txt#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/common/dmtable.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/common/dmtbdump.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/common/dmtbinfo.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslanalyze.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslbtypes.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslcompile.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslcompiler.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslcompiler.l#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslcompiler.y#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslmessages.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslpredef.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/asltree.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/aslwalks.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/dtcompile.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/dtcompiler.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/dtexpress.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/dtfield.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/dtio.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/dttable.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/compiler/dtutils.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/debugger/dbcmds.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/debugger/dbdisply.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/debugger/dbinput.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/debugger/dbmethod.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/debugger/dbnames.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/dispatcher/dsargs.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/dispatcher/dscontrol.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/dispatcher/dsopcode.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/dispatcher/dswload.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/dispatcher/dswload2.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/events/evgpe.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/events/evregion.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/events/evxfregn.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/executer/exfldio.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/acdebug.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/acdisasm.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/acdispat.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/acglobal.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/aclocal.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/acoutput.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/acpixf.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/include/actbl.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/tables/tbfadt.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/tools/acpiexec/aecommon.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/utilities/utdecode.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/contrib/dev/acpica/utilities/utglobal.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/aac/aac.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/aac/aacvar.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ahci/ahci.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/alc/if_alc.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ata/ata-pci.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ata/chipsets/ata-intel.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah_debug.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah_eeprom_v14.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah_eeprom_v14.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah_eeprom_v4k.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah_eeprom_v4k.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ah_internal.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5212/ar5212.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5212/ar5212_keycache.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar2133.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416_ani.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416phy.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar5416/ar5416reg.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar9001/ar9160_attach.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar9002/ar9280.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar9002/ar9280.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar9002/ar9285.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_hal/ar9002/ar9285v2.ini#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_rate/amrr/amrr.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_rate/onoe/onoe.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_rate/sample/sample.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_rate/sample/sample.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/ath_rate/sample/tx_schedules.h#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath_debug.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath_debug.h#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath_misc.h#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath_tx.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath_tx.h#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath_tx_ht.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_ath_tx_ht.h#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_athioctl.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_athrate.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ath/if_athvar.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/bce/if_bce.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/bce/if_bcefw.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/bce/if_bcereg.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/cs/if_cs.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/cs/if_csreg.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/cs/if_csvar.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/cxgb/cxgb_sge.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_80003es2lan.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_80003es2lan.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_82540.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_82541.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_82542.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_82543.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_82571.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_82575.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_82575.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_api.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_api.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_defines.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_hw.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_ich8lan.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_ich8lan.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_mac.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_mac.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_manage.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_manage.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_mbx.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_nvm.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_nvm.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_osdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_phy.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_phy.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_regs.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_vf.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/e1000_vf.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/if_igb.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/e1000/if_igb.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/fdt/fdt_common.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/fdt/fdt_pci.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/fdt/fdtbus.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/flash/mx25l.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ichsmb/ichsmb_pci.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ichwd/ichwd.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/ichwd/ichwd.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/md/md.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/mii/miidevs#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/mii/rlphy.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/re/if_re.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/siis/siis.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/siis/siis.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/sio/sio.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/sound/pci/emu10k1.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/sound/pci/emu10kx.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/sound/pci/hda/hdac.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/tsec/if_tsec_fdt.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/controller/ehci_mv.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/controller/usb_controller.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/quirk/usb_quirk.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/serial/u3g.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/serial/umodem.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/template/usb_template.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/usb_pf.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/usb_pf.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/usb_transfer.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/usbdevs#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/wlan/if_run.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/usb/wlan/if_runvar.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/dev/xen/netfront/netfront.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/ext2fs/ext2_alloc.c#10 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/ext2fs/ext2_mount.h#6 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/ext2fs/ext2_vfsops.c#18 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/ext2fs/ext2fs.h#16 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/nfs/nfsport.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/nfsserver/nfs_nfsdport.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/procfs/procfs_dbregs.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/procfs/procfs_fpregs.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/procfs/procfs_map.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/fs/procfs/procfs_regs.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/geom_disk.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/journal/g_journal.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/part/g_part.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/part/g_part.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/part/g_part_bsd.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/part/g_part_ebr.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/part/g_part_gpt.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/part/g_part_mbr.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/geom/part/g_part_pc98.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/i386/i386/machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/i386/i386/uio_machdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/i386/linux/imgact_linux.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/ia64/ia64/uio_machdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/imgact_elf.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_context.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_descrip.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_fork.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_jail.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_malloc.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_proc.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_sig.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_synch.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/kern_sysctl.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_lock.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_module.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_sleepqueue.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_smp.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_trap.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_turnstile.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_uio.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/subr_witness.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/sys_process.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/uipc_socket.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/uipc_syscalls.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/uipc_usrreq.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/vfs_bio.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/vfs_mount.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/vfs_subr.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/kern/vfs_vnops.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/cavium/if_octm.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/cavium/octe/ethernet-common.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/cavium/octeon_mp.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/include/_inttypes.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/include/_limits.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/include/_stdint.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/include/_types.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/include/cpufunc.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/include/hwfunc.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/include/sf_buf.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/mips/mp_machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/mips/uio_machdep.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/mips/vm_machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/rmi/xlr_machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/mips/sibyte/sb_scd.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/modules/acpi/acpi/Makefile#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/modules/ath/Makefile#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/modules/cc/Makefile#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/modules/cc/cc_chd/Makefile#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/modules/cc/cc_hd/Makefile#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/modules/cc/cc_vegas/Makefile#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/net/if.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/net/netisr.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/net/rtsock.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/net/vnet.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/net80211/ieee80211_ioctl.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/net80211/ieee80211_scan.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/cc.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/cc/cc_chd.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/netinet/cc/cc_hd.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/netinet/cc/cc_newreno.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/cc/cc_vegas.c#1 branch .. //depot/projects/soc2010/ext4fs/src/sys/netinet/if_ether.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/in_pcb.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/ipfw/ip_dn_io.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_asconf.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_asconf.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_auth.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_auth.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_bsd_addr.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_bsd_addr.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_cc_functions.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_constants.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_crc32.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_crc32.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_dtrace_declare.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_dtrace_define.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_header.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_indata.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_indata.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_input.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_input.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_lock_bsd.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_os.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_os_bsd.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_output.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_output.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_pcb.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_pcb.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_peeloff.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_peeloff.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_ss_functions.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_structs.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_sysctl.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_sysctl.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_timer.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_timer.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_uio.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_usrreq.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctp_var.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctputil.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/sctputil.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet/tcp_usrreq.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet6/sctp6_usrreq.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/netinet6/sctp6_var.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/nfsserver/nfs_serv.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/pc98/cbus/sio.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/pc98/pc98/machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/pci/if_rlreg.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/aim/trap.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/include/fdt.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/include/intr_machdep.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/include/openpicvar.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/mambo/mambo_openpic.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/mpc85xx/atpic.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/mpc85xx/isa.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/mpc85xx/nexus.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/mpc85xx/openpic_fdt.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/mpc85xx/pci_fdt.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/ofw/ofw_pcib_pci.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/ofw/ofw_pcibus.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/cpcht.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/grackle.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/hrowpic.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/macgpio.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/macio.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/openpic_macio.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/uninorth.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powermac/uninorthpci.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powerpc/exec_machdep.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powerpc/intr_machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powerpc/openpic.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powerpc/pic_if.m#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/powerpc/uio_machdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/ps3/ps3pic.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/powerpc/psim/openpic_iobus.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/security/mac/mac_process.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sparc64/sparc64/machdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sparc64/sparc64/pmap.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sparc64/sparc64/uio_machdep.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sun4v/sun4v/uio_machdep.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/diskmbr.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/gpt.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/linker.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/param.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/proc.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/ptrace.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/sysctl.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/sysent.h#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/taskqueue.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/uio.h#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/sys/vnode.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/ufs/ffs/ffs_rawread.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/ufs/ffs/ffs_snapshot.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/ufs/ffs/ffs_softdep.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/ufs/ufs/ufs_acl.c#2 integrate .. //depot/projects/soc2010/ext4fs/src/sys/ufs/ufs/ufs_vnops.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/uma_core.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/vm_map.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/vm_meter.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/vm_object.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/vm_object.h#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/vm_page.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/vm_phys.c#4 integrate .. //depot/projects/soc2010/ext4fs/src/sys/vm/vm_reserv.c#3 integrate .. //depot/projects/soc2010/ext4fs/src/sys/x86/x86/mca.c#2 integrate Differences ... ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/amd64/machdep.c#4 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.739 2011/01/21 10:26:26 pluknet Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.741 2011/02/05 15:10:27 kib Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -331,6 +331,9 @@ fpstate_drop(td); sf.sf_uc.uc_mcontext.mc_fsbase = pcb->pcb_fsbase; sf.sf_uc.uc_mcontext.mc_gsbase = pcb->pcb_gsbase; + bzero(sf.sf_uc.uc_mcontext.mc_spare, + sizeof(sf.sf_uc.uc_mcontext.mc_spare)); + bzero(sf.sf_uc.__spare__, sizeof(sf.sf_uc.__spare__)); /* Allocate space for the signal handler context. */ if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack && @@ -352,6 +355,7 @@ /* Build the argument list for the signal handler. */ regs->tf_rdi = sig; /* arg 1 in %rdi */ regs->tf_rdx = (register_t)&sfp->sf_uc; /* arg 3 in %rdx */ + bzero(&sf.sf_si, sizeof(sf.sf_si)); if (SIGISMEMBER(psp->ps_siginfo, sig)) { /* Signal handler installed with SA_SIGINFO. */ regs->tf_rsi = (register_t)&sfp->sf_si; /* arg 2 in %rsi */ @@ -1527,12 +1531,14 @@ struct nmi_pcpu *np; u_int64_t msr; char *env; + size_t kstack0_sz; thread0.td_kstack = physfree + KERNBASE; - bzero((void *)thread0.td_kstack, KSTACK_PAGES * PAGE_SIZE); - physfree += KSTACK_PAGES * PAGE_SIZE; - thread0.td_pcb = (struct pcb *) - (thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1; + thread0.td_kstack_pages = KSTACK_PAGES; + kstack0_sz = thread0.td_kstack_pages * PAGE_SIZE; + bzero((void *)thread0.td_kstack, kstack0_sz); + physfree += kstack0_sz; + thread0.td_pcb = (struct pcb *)(thread0.td_kstack + kstack0_sz) - 1; /* * This may be done better later if it gets more high level @@ -1674,8 +1680,8 @@ initializecpucache(); /* make an initial tss so cpu can get interrupt stack on syscall! */ - common_tss[0].tss_rsp0 = thread0.td_kstack + \ - KSTACK_PAGES * PAGE_SIZE - sizeof(struct pcb); + common_tss[0].tss_rsp0 = thread0.td_kstack + + kstack0_sz - sizeof(struct pcb); /* Ensure the stack is aligned to 16 bytes */ common_tss[0].tss_rsp0 &= ~0xFul; PCPU_SET(rsp0, common_tss[0].tss_rsp0); @@ -2041,6 +2047,7 @@ get_fpcontext(td, mcp); mcp->mc_fsbase = pcb->pcb_fsbase; mcp->mc_gsbase = pcb->pcb_gsbase; + bzero(mcp->mc_spare, sizeof(mcp->mc_spare)); return (0); } ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/amd64/uio_machdep.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/uio_machdep.c,v 1.6 2005/01/05 20:17:20 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/uio_machdep.c,v 1.7 2011/02/02 16:35:10 mdf Exp $"); #include #include @@ -88,8 +88,7 @@ page_offset; switch (uio->uio_segflg) { case UIO_USERSPACE: - if (ticks - PCPU_GET(switchticks) >= hogticks) - uio_yield(); + maybe_yield(); if (uio->uio_rw == UIO_READ) error = copyout(cp, iov->iov_base, cnt); else ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/amd64/vm_machdep.c#3 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.274 2010/12/22 00:18:42 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.275 2011/01/26 20:03:58 dchagin Exp $"); #include "opt_isa.h" #include "opt_cpu.h" @@ -445,7 +445,7 @@ cpu_thread_clean(td); #ifdef COMPAT_FREEBSD32 - if (td->td_proc->p_sysent->sv_flags & SV_ILP32) { + if (SV_PROC_FLAG(td->td_proc, SV_ILP32)) { /* * Set the trap frame to point at the beginning of the uts * function. @@ -498,7 +498,7 @@ pcb = td->td_pcb; #ifdef COMPAT_FREEBSD32 - if (td->td_proc->p_sysent->sv_flags & SV_ILP32) { + if (SV_PROC_FLAG(td->td_proc, SV_ILP32)) { pcb->pcb_gsbase = (register_t)tls_base; return (0); } ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/ia32/ia32_signal.c#4 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.36 2011/01/14 21:09:01 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.37 2011/02/05 15:10:27 kib Exp $"); #include "opt_compat.h" @@ -167,6 +167,8 @@ ia32_get_fpcontext(td, mcp); mcp->mc_fsbase = pcb->pcb_fsbase; mcp->mc_gsbase = pcb->pcb_gsbase; + bzero(mcp->mc_spare1, sizeof(mcp->mc_spare1)); + bzero(mcp->mc_spare2, sizeof(mcp->mc_spare2)); set_pcb_flags(pcb, PCB_FULL_IRET); return (0); } @@ -233,6 +235,7 @@ PROC_LOCK(td->td_proc); uc.uc_sigmask = td->td_sigmask; PROC_UNLOCK(td->td_proc); + bzero(&uc.__spare__, sizeof(uc.__spare__)); ret = copyout(&uc, uap->ucp, UC_COPY_SIZE); } return (ret); @@ -348,6 +351,11 @@ sf.sf_uc.uc_mcontext.mc_es = regs->tf_es; sf.sf_uc.uc_mcontext.mc_fs = regs->tf_fs; sf.sf_uc.uc_mcontext.mc_gs = regs->tf_gs; + bzero(sf.sf_uc.uc_mcontext.mc_fpregs, + sizeof(sf.sf_uc.uc_mcontext.mc_fpregs)); + bzero(sf.sf_uc.uc_mcontext.__spare__, + sizeof(sf.sf_uc.uc_mcontext.__spare__)); + bzero(sf.sf_uc.__spare__, sizeof(sf.sf_uc.__spare__)); /* Allocate space for the signal handler context. */ if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack && @@ -365,6 +373,7 @@ /* Build the argument list for the signal handler. */ sf.sf_signum = sig; sf.sf_ucontext = (register_t)&sfp->sf_uc; + bzero(&sf.sf_si, sizeof(sf.sf_si)); if (SIGISMEMBER(psp->ps_siginfo, sig)) { /* Signal handler installed with SA_SIGINFO. */ sf.sf_siginfo = (u_int32_t)(uintptr_t)&sfp->sf_si; @@ -468,6 +477,7 @@ fpstate_drop(td); sf.sf_uc.uc_mcontext.mc_fsbase = td->td_pcb->pcb_fsbase; sf.sf_uc.uc_mcontext.mc_gsbase = td->td_pcb->pcb_gsbase; + bzero(sf.sf_uc.__spare__, sizeof(sf.sf_uc.__spare__)); /* Allocate space for the signal handler context. */ if ((td->td_pflags & TDP_ALTSTACK) != 0 && !oonstack && @@ -487,6 +497,7 @@ /* Build the argument list for the signal handler. */ sf.sf_signum = sig; sf.sf_ucontext = (register_t)&sfp->sf_uc; + bzero(&sf.sf_si, sizeof(sf.sf_si)); if (SIGISMEMBER(psp->ps_siginfo, sig)) { /* Signal handler installed with SA_SIGINFO. */ sf.sf_siginfo = (u_int32_t)(uintptr_t)&sfp->sf_si; ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/linux.h#2 (text+ko) ==== @@ -27,7 +27,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.30 2010/03/28 13:13:22 ed Exp $ + * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.31 2011/01/27 21:45:38 kib Exp $ */ #ifndef _AMD64_LINUX_H_ @@ -370,28 +370,28 @@ /* The Linux sigcontext, pretty much a standard 386 trapframe. */ struct l_sigcontext { - l_int sc_gs; - l_int sc_fs; - l_int sc_es; - l_int sc_ds; - l_int sc_edi; - l_int sc_esi; - l_int sc_ebp; - l_int sc_esp; - l_int sc_ebx; - l_int sc_edx; - l_int sc_ecx; - l_int sc_eax; - l_int sc_trapno; - l_int sc_err; - l_int sc_eip; - l_int sc_cs; - l_int sc_eflags; - l_int sc_esp_at_signal; - l_int sc_ss; - l_int sc_387; - l_int sc_mask; - l_int sc_cr2; + l_uint sc_gs; + l_uint sc_fs; + l_uint sc_es; + l_uint sc_ds; + l_uint sc_edi; + l_uint sc_esi; + l_uint sc_ebp; + l_uint sc_esp; + l_uint sc_ebx; + l_uint sc_edx; + l_uint sc_ecx; + l_uint sc_eax; + l_uint sc_trapno; + l_uint sc_err; + l_uint sc_eip; + l_uint sc_cs; + l_uint sc_eflags; + l_uint sc_esp_at_signal; + l_uint sc_ss; + l_uint sc_387; + l_uint sc_mask; + l_uint sc_cr2; } __packed; struct l_ucontext { ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/linux32_machdep.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.59 2010/12/22 00:18:42 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.64 2011/01/30 18:17:38 dchagin Exp $"); #include #include @@ -51,6 +51,7 @@ #include #include #include +#include #include #include @@ -66,6 +67,7 @@ #include #include #include +#include #include #include #include @@ -106,6 +108,30 @@ return (lsa); } +static void +bsd_to_linux_rusage(struct rusage *ru, struct l_rusage *lru) +{ + + lru->ru_utime.tv_sec = ru->ru_utime.tv_sec; + lru->ru_utime.tv_usec = ru->ru_utime.tv_usec; + lru->ru_stime.tv_sec = ru->ru_stime.tv_sec; + lru->ru_stime.tv_usec = ru->ru_stime.tv_usec; + lru->ru_maxrss = ru->ru_maxrss; + lru->ru_ixrss = ru->ru_ixrss; + lru->ru_idrss = ru->ru_idrss; + lru->ru_isrss = ru->ru_isrss; + lru->ru_minflt = ru->ru_minflt; + lru->ru_majflt = ru->ru_majflt; + lru->ru_nswap = ru->ru_nswap; + lru->ru_inblock = ru->ru_inblock; + lru->ru_oublock = ru->ru_oublock; + lru->ru_msgsnd = ru->ru_msgsnd; + lru->ru_msgrcv = ru->ru_msgrcv; + lru->ru_nsignals = ru->ru_nsignals; + lru->ru_nvcsw = ru->ru_nvcsw; + lru->ru_nivcsw = ru->ru_nivcsw; +} + int linux_execve(struct thread *td, struct linux_execve_args *args) { @@ -131,7 +157,7 @@ * linux_proc_init, this leads to a panic on KASSERT * because such process has p->p_emuldata == NULL. */ - if (td->td_proc->p_sysent == &elf_linux_sysvec) + if (SV_PROC_ABI(td->td_proc) == SV_ABI_LINUX) error = linux_proc_init(td, 0, 0); return (error); } @@ -1126,24 +1152,7 @@ if (error != 0) return (error); if (uap->rusage != NULL) { - s32.ru_utime.tv_sec = s.ru_utime.tv_sec; - s32.ru_utime.tv_usec = s.ru_utime.tv_usec; - s32.ru_stime.tv_sec = s.ru_stime.tv_sec; - s32.ru_stime.tv_usec = s.ru_stime.tv_usec; - s32.ru_maxrss = s.ru_maxrss; - s32.ru_ixrss = s.ru_ixrss; - s32.ru_idrss = s.ru_idrss; - s32.ru_isrss = s.ru_isrss; - s32.ru_minflt = s.ru_minflt; - s32.ru_majflt = s.ru_majflt; - s32.ru_nswap = s.ru_nswap; - s32.ru_inblock = s.ru_inblock; - s32.ru_oublock = s.ru_oublock; - s32.ru_msgsnd = s.ru_msgsnd; - s32.ru_msgrcv = s.ru_msgrcv; - s32.ru_nsignals = s.ru_nsignals; - s32.ru_nvcsw = s.ru_nvcsw; - s32.ru_nivcsw = s.ru_nivcsw; + bsd_to_linux_rusage(&s, &s32); error = copyout(&s32, uap->rusage, sizeof(s32)); } return (error); @@ -1267,3 +1276,37 @@ return (0); } + +int +linux_wait4(struct thread *td, struct linux_wait4_args *args) +{ + int error, options; + struct rusage ru, *rup; + struct l_rusage lru; + +#ifdef DEBUG + if (ldebug(wait4)) + printf(ARGS(wait4, "%d, %p, %d, %p"), + args->pid, (void *)args->status, args->options, + (void *)args->rusage); +#endif + + options = (args->options & (WNOHANG | WUNTRACED)); + /* WLINUXCLONE should be equal to __WCLONE, but we make sure */ + if (args->options & __WCLONE) + options |= WLINUXCLONE; + + if (args->rusage != NULL) + rup = &ru; + else + rup = NULL; + error = linux_common_wait(td, args->pid, args->status, options, rup); + if (error) + return (error); + if (args->rusage != NULL) { + bsd_to_linux_rusage(rup, &lru); + error = copyout(&lru, args->rusage, sizeof(lru)); + } + + return (error); +} ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/linux32_proto.h#3 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.42 2010/10/08 07:19:05 kib Exp $ + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.43 2011/01/30 20:38:26 dchagin Exp $ * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 213544 2010-10-08 07:18:44Z kib */ @@ -734,10 +734,10 @@ struct linux_sys_futex_args { char uaddr_l_[PADL_(void *)]; void * uaddr; char uaddr_r_[PADR_(void *)]; char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; - char val_l_[PADL_(int)]; int val; char val_r_[PADR_(int)]; + char val_l_[PADL_(uint32_t)]; uint32_t val; char val_r_[PADR_(uint32_t)]; char timeout_l_[PADL_(struct l_timespec *)]; struct l_timespec * timeout; char timeout_r_[PADR_(struct l_timespec *)]; - char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)]; - char val3_l_[PADL_(int)]; int val3; char val3_r_[PADR_(int)]; + char uaddr2_l_[PADL_(uint32_t *)]; uint32_t * uaddr2; char uaddr2_r_[PADR_(uint32_t *)]; + char val3_l_[PADL_(uint32_t)]; uint32_t val3; char val3_r_[PADR_(uint32_t)]; }; struct linux_sched_setaffinity_args { char pid_l_[PADL_(l_pid_t)]; l_pid_t pid; char pid_r_[PADR_(l_pid_t)]; ==== //depot/projects/soc2010/ext4fs/src/sys/amd64/linux32/syscalls.master#3 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.38 2010/10/08 07:18:44 kib Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.39 2011/01/30 20:31:43 dchagin Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -405,8 +405,8 @@ 237 AUE_NULL STD { int linux_fremovexattr(void); } 238 AUE_NULL STD { int linux_tkill(int tid, int sig); } 239 AUE_SENDFILE UNIMPL linux_sendfile64 -240 AUE_NULL STD { int linux_sys_futex(void *uaddr, int op, int val, \ - struct l_timespec *timeout, void *uaddr2, int val3); } +240 AUE_NULL STD { int linux_sys_futex(void *uaddr, int op, uint32_t val, \ + struct l_timespec *timeout, uint32_t *uaddr2, uint32_t val3); } 241 AUE_NULL STD { int linux_sched_setaffinity(l_pid_t pid, l_uint len, \ l_ulong *user_mask_ptr); } 242 AUE_NULL STD { int linux_sched_getaffinity(l_pid_t pid, l_uint len, \ ==== //depot/projects/soc2010/ext4fs/src/sys/arm/arm/locore.S#2 (text+ko) ==== @@ -37,7 +37,7 @@ #include #include #include -__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.23 2009/06/09 17:21:47 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.24 2011/02/03 17:35:16 marcel Exp $"); /* What size should this really be ? It is only used by initarm() */ #define INIT_ARM_STACK_SIZE 2048 @@ -65,14 +65,20 @@ ENTRY_NP(btext) -ASENTRY_NP(_start) - /* - * Move metadata ptr to r12 (ip) + * On entry: + * r0 - metadata pointer or 0 + * r1 - if (r0 == 0) then metadata pointer */ +ASENTRY_NP(_start) + /* Move metadata ptr to r12 (ip) */ mov ip, r0 - + ldr r0, =0 + cmp ip, r0 + bne 1f + mov ip, r1 +1: /* Make sure interrupts are disabled. */ mrs r7, cpsr orr r7, r7, #(I32_bit|F32_bit) ==== //depot/projects/soc2010/ext4fs/src/sys/arm/arm/sys_machdep.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/sys_machdep.c,v 1.5 2007/02/14 01:25:41 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/sys_machdep.c,v 1.6 2011/02/05 03:30:29 imp Exp $"); #include #include @@ -85,7 +85,7 @@ arm32_set_tp(struct thread *td, void *args) { - td->td_md.md_tp = args; + td->td_md.md_tp = (register_t)args; return (0); } @@ -93,7 +93,7 @@ arm32_get_tp(struct thread *td, void *args) { - td->td_retval[0] = (uint32_t)td->td_md.md_tp; + td->td_retval[0] = td->td_md.md_tp; return (0); } ==== //depot/projects/soc2010/ext4fs/src/sys/arm/arm/uio_machdep.c#2 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/uio_machdep.c,v 1.6 2008/03/06 22:27:35 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/uio_machdep.c,v 1.7 2011/02/02 16:35:10 mdf Exp $"); #include #include @@ -94,8 +94,7 @@ cp = (char*)sf_buf_kva(sf) + page_offset; switch (uio->uio_segflg) { case UIO_USERSPACE: - if (ticks - PCPU_GET(switchticks) >= hogticks) - uio_yield(); + maybe_yield(); if (uio->uio_rw == UIO_READ) error = copyout(cp, iov->iov_base, cnt); else ==== //depot/projects/soc2010/ext4fs/src/sys/arm/arm/vm_machdep.c#3 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.46 2011/01/18 21:57:02 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.47 2011/02/05 03:30:29 imp Exp $"); #include #include @@ -146,7 +146,7 @@ /* Setup to release spin count in fork_exit(). */ td2->td_md.md_spinlock_count = 1; td2->td_md.md_saved_cspr = 0; - td2->td_md.md_tp = *(uint32_t **)ARM_TP_ADDRESS; + td2->td_md.md_tp = *(register_t *)ARM_TP_ADDRESS; } void @@ -370,10 +370,10 @@ { if (td != curthread) - td->td_md.md_tp = tls_base; + td->td_md.md_tp = (register_t)tls_base; else { critical_enter(); - *(void **)ARM_TP_ADDRESS = tls_base; + *(register_t *)ARM_TP_ADDRESS = (register_t)tls_base; critical_exit(); } return (0); ==== //depot/projects/soc2010/ext4fs/src/sys/arm/at91/if_ate.c#3 (text) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.49 2010/10/15 15:16:36 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/if_ate.c,v 1.50 2011/02/07 01:13:57 ticso Exp $"); #include #include @@ -433,6 +433,16 @@ bus_dmamap_sync(sc->rx_desc_tag, sc->rx_desc_map, BUS_DMASYNC_POSTWRITE); } +static uint32_t +ate_mac_hash(const uint8_t *buf) +{ + uint32_t index = 0; + for (int i = 0; i < 48; i++) { + index ^= ((buf[i >> 3] >> (i & 7)) & 1) << (i % 6); + } + return (index); +} + /* * Compute the multicast filter for this device. */ @@ -462,8 +472,8 @@ TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; - index = ether_crc32_be(LLADDR((struct sockaddr_dl *) - ifma->ifma_addr), ETHER_ADDR_LEN) >> 26; + index = ate_mac_hash(LLADDR((struct sockaddr_dl *) + ifma->ifma_addr)); af[index >> 3] |= 1 << (index & 7); } if_maddr_runlock(ifp); ==== //depot/projects/soc2010/ext4fs/src/sys/arm/include/fdt.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Feb 12 14:58:23 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 722821065673; Sat, 12 Feb 2011 14:58: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 27953106566C for ; Sat, 12 Feb 2011 14:58: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 ED7D98FC08 for ; Sat, 12 Feb 2011 14:58: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 p1CEwMuQ069071 for ; Sat, 12 Feb 2011 14:58:22 GMT (envelope-from trasz@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p1CEwMxF069068 for perforce@freebsd.org; Sat, 12 Feb 2011 14:58:22 GMT (envelope-from trasz@freebsd.org) Date: Sat, 12 Feb 2011 14:58:22 GMT Message-Id: <201102121458.p1CEwMxF069068@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 188750 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, 12 Feb 2011 14:58:23 -0000 http://p4web.freebsd.org/@@188750?ac=10 Change 188750 by trasz@trasz_victim on 2011/02/12 14:57:51 Replace the hacky mechanism used to send a signal or log a warning only when the rule gets exceeded, and not at every subsequent resource usage increase, with a proper one. Affected files ... .. //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#30 edit Differences ... ==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_rctl.c#30 (text+ko) ==== @@ -82,6 +82,7 @@ struct rctl_rule_link { LIST_ENTRY(rctl_rule_link) rrl_next; struct rctl_rule *rrl_rule; + int rrl_exceeded; }; struct dict { @@ -265,18 +266,6 @@ if (available >= amount) return (0); - /* - * We've already exceeded that one. - */ - if (available < 0) { -#ifdef notyet - KASSERT(rule->rr_action != RCTL_ACTION_DENY || - !rusage_is_deniable(rule->rr_resource), - ("rctl_would_exceed: deny rule already exceeded")); -#endif - return (0); - } - return (1); } @@ -291,7 +280,7 @@ struct rctl_rule *rule; struct rctl_rule_link *link; struct sbuf sb; - int should_deny = 0; + int should_deny = 0, already_exceeded; char *buf; static int curtime = 0; static struct timeval lasttime; @@ -306,14 +295,22 @@ rule = link->rrl_rule; if (rule->rr_resource != resource) continue; - if (!rctl_would_exceed(p, rule, amount)) + if (!rctl_would_exceed(p, rule, amount)) { + link->rrl_exceeded = 0; continue; + } + already_exceeded = link->rrl_exceeded; + link->rrl_exceeded = 1; + switch (rule->rr_action) { case RCTL_ACTION_DENY: should_deny = 1; continue; case RCTL_ACTION_LOG: + if (already_exceeded) + continue; + if (!ppsratecheck(&lasttime, &curtime, 10)) continue; @@ -333,6 +330,9 @@ free(buf, M_RCTL); continue; default: + if (already_exceeded) + continue; + KASSERT(rule->rr_action > 0 && rule->rr_action <= RCTL_ACTION_SIGNAL_MAX, ("rctl_enforce: unknown action %d", @@ -550,6 +550,7 @@ rctl_rule_acquire(rule); link = uma_zalloc(rctl_rule_link_zone, M_WAITOK); link->rrl_rule = rule; + link->rrl_exceeded = 0; rw_wlock(&rctl_lock); LIST_INSERT_HEAD(&container->c_rule_links, link, rrl_next); @@ -569,6 +570,7 @@ return (ENOMEM); rctl_rule_acquire(rule); link->rrl_rule = rule; + link->rrl_exceeded = 0; LIST_INSERT_HEAD(&container->c_rule_links, link, rrl_next); return (0);