svn commit: r299618 - stable/9/sys/sys

Garrett Cooper ngie at FreeBSD.org
Fri May 13 08:25:18 UTC 2016


Author: ngie
Date: Fri May 13 08:25:17 2016
New Revision: 299618
URL: https://svnweb.freebsd.org/changeset/base/299618

Log:
  MFstable/10 r299616:
  
  MFC r298333:
  r298333 (by cem):
  
  Make Racct macro slightly more gracious given RACCT_UNDEFINED
  
  rctl_string_to_rule could previously index below the zeroth element of
  racct_types via the macro.  Maybe it shouldn't use the macro on
  RACCT_UNDEFINED.  But given every other RACCT_ definition is non-negative, it
  seems pretty easy to foot-shoot this one without the check.
  
  CID:		1305574

Modified:
  stable/9/sys/sys/racct.h
Directory Properties:
  stable/9/   (props changed)
  stable/9/sys/   (props changed)
  stable/9/sys/sys/   (props changed)

Modified: stable/9/sys/sys/racct.h
==============================================================================
--- stable/9/sys/sys/racct.h	Fri May 13 08:25:06 2016	(r299617)
+++ stable/9/sys/sys/racct.h	Fri May 13 08:25:17 2016	(r299618)
@@ -88,7 +88,8 @@ extern int racct_types[];
  * visible to the userland.  It gets fixed up when retrieving resource
  * usage or adding rules.
  */
-#define	RACCT_IS_IN_MILLIONS(X)	(racct_types[X] & RACCT_IN_MILLIONS)
+#define	RACCT_IS_IN_MILLIONS(X)	\
+    ((X) != RACCT_UNDEFINED && (racct_types[(X)] & RACCT_IN_MILLIONS) != 0)
 
 /*
  * Resource usage can drop, as opposed to only grow.  When the process


More information about the svn-src-stable-9 mailing list