maint: add configure checks for BSD CPU affinity

Check for presence of sys/cpuset.h header and cpuset_getaffinity()
in configure instead of just using #ifdef __FreeBSD__ for that code.
This commit is contained in:
Roman Bogorodskiy 2014-01-29 22:31:44 +04:00 committed by Eric Blake
parent 122cd16982
commit d779d218d4
2 changed files with 15 additions and 2 deletions

View File

@ -2604,6 +2604,16 @@ AC_CHECK_DECLS([BRDGSFD, BRDGADD, BRDGDEL],
#include <net/if_bridgevar.h>
])
# Check for BSD CPU affinity availability
AC_CHECK_DECLS([cpuset_getaffinity],
[AC_DEFINE([HAVE_BSD_CPU_AFFINITY],
[1],
[whether BSD CPU affinity management is available])],
[],
[#include <sys/param.h>
#include <sys/cpuset.h>
])
# Check if we need to look for ifconfig
if test "$want_ifconfig" = "yes"; then
AC_PATH_PROG([IFCONFIG_PATH], [ifconfig])

View File

@ -34,11 +34,14 @@
#ifdef __FreeBSD__
# include <sys/param.h>
# include <sys/cpuset.h>
# include <sys/sysctl.h>
# include <sys/user.h>
#endif
#ifdef HAVE_BSD_CPU_AFFINITY
# include <sys/cpuset.h>
#endif
#include "viratomic.h"
#include "virprocess.h"
#include "virerror.h"
@ -457,7 +460,7 @@ realloc:
return 0;
}
#elif defined(__FreeBSD__)
#elif defined(HAVE_BSD_CPU_AFFINITY)
int virProcessSetAffinity(pid_t pid ATTRIBUTE_UNUSED,
virBitmapPtr map)