MAXCPU preparations

Sean Bruno seanbru at yahoo-inc.com
Mon Sep 27 16:22:26 UTC 2010


On Mon, 2010-09-27 at 08:53 -0700, Julian Elischer wrote:
> On 9/27/10 8:26 AM, Sean Bruno wrote:
> > Does this look like an appropriate modification to libmemstat?
> >
> > Sean
> >
> >
> > ==== //depot/yahoo/ybsd_7/src/lib/libmemstat/memstat.h#4
> > - /home/seanbru/ybsd_7/src/lib/libmemstat/memstat.h ====
> > @@ -28,12 +28,13 @@
> >
> >   #ifndef _MEMSTAT_H_
> >   #define        _MEMSTAT_H_
> > +#include<sys/param.h>
> >
> >   /*
> >    * Number of CPU slots in library-internal data structures.  This
> > should be
> >    * at least the value of MAXCPU from param.h.
> >    */
> > -#define        MEMSTAT_MAXCPU  64
> > +#define        MEMSTAT_MAXCPU  MAXCPU /* defined in
> > sys/${ARCH}/include/param.h */
> >
> 
> 
> wouldn't it be better to do a sysctlbyname() and use the real value 
> for the system?
> 

That was my initial thought (as prodded by scottl and peter).  

If it is made dynamic, could this be opening a race condition where the
call to sysctlbyname() returns a count of CPUS that is in turn changed
by the offlining of a CPU?  Or am I thinking to much about this?

Sean



More information about the freebsd-current mailing list