Author: trasz Date: Fri Apr 1 17:28:55 2016 New Revision: 297492 URL: https://svnweb.freebsd.org/changeset/base/297492
Log: Call rctl_enforce() in all cases the resource usage goes up, even when called from racct_*_force() functions. It makes the "log" and "devctl" actions work in those cases. MFC after: 1 month Sponsored by: The FreeBSD Foundation Modified: head/sys/kern/kern_racct.c Modified: head/sys/kern/kern_racct.c ============================================================================== --- head/sys/kern/kern_racct.c Fri Apr 1 17:21:55 2016 (r297491) +++ head/sys/kern/kern_racct.c Fri Apr 1 17:28:55 2016 (r297492) @@ -548,12 +548,10 @@ racct_add_locked(struct proc *p, int res PROC_LOCK_ASSERT(p, MA_OWNED); #ifdef RCTL - if (!force) { - error = rctl_enforce(p, resource, amount); - if (error && RACCT_IS_DENIABLE(resource)) { - SDT_PROBE3(racct, , rusage, add__failure, p, resource, amount); - return (error); - } + error = rctl_enforce(p, resource, amount); + if (error && !force && RACCT_IS_DENIABLE(resource)) { + SDT_PROBE3(racct, , rusage, add__failure, p, resource, amount); + return (error); } #endif racct_adjust_resource(p->p_racct, resource, amount); @@ -670,9 +668,9 @@ racct_set_locked(struct proc *p, int res resource)); #endif #ifdef RCTL - if (!force && diff_proc > 0) { + if (diff_proc > 0) { error = rctl_enforce(p, resource, diff_proc); - if (error && RACCT_IS_DENIABLE(resource)) { + if (error && !force && RACCT_IS_DENIABLE(resource)) { SDT_PROBE3(racct, , rusage, set__failure, p, resource, amount); return (error); _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"