libc: tests: hook CPUSET(9) test up to the build
Add shims to map NetBSD's API to CPUSET(9). Obviously the invalid input parts of these tests are relatively useless since we're just testing the shims that aren't used elsewhere, there's still some amount of value in the parts testing valid inputs. Differential Revision: https://reviews.freebsd.org/D27307
This commit is contained in:
parent
ac5f382a9d
commit
9e1281eaba
@ -36,6 +36,46 @@ __RCSID("$NetBSD: t_cpuset.c,v 1.1 2011/11/08 05:47:00 jruoho Exp $");
|
||||
#include <stdio.h>
|
||||
#include <sched.h>
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
#include <sys/cpuset.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#define cpuset_create() calloc(1, sizeof(cpuset_t))
|
||||
#define cpuset_destroy(cs) free(cs)
|
||||
|
||||
static inline int
|
||||
cpuset_set(size_t i, cpuset_t *cs)
|
||||
{
|
||||
|
||||
if (i > CPU_SETSIZE)
|
||||
return (-1);
|
||||
CPU_SET(i, cs);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static inline int
|
||||
cpuset_clr(size_t i, cpuset_t *cs)
|
||||
{
|
||||
|
||||
if (i > CPU_SETSIZE)
|
||||
return (-1);
|
||||
CPU_CLR(i, cs);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static inline int
|
||||
cpuset_isset(size_t i, cpuset_t *cs)
|
||||
{
|
||||
|
||||
if (i > CPU_SETSIZE)
|
||||
return (-1);
|
||||
return (CPU_ISSET(i, cs));
|
||||
}
|
||||
|
||||
#define cpuset_size(cs) sizeof(*cs)
|
||||
#endif
|
||||
|
||||
ATF_TC(cpuset_err);
|
||||
ATF_TC_HEAD(cpuset_err, tc)
|
||||
{
|
||||
|
@ -20,7 +20,7 @@ ATF_TESTS_C+= realpath2_test
|
||||
ATF_TESTS_C+= sigsetops_test
|
||||
ATF_TESTS_C+= wordexp_test
|
||||
|
||||
# TODO: t_closefrom, t_cpuset, t_fmtcheck, t_randomid,
|
||||
# TODO: t_closefrom, t_fmtcheck, t_randomid,
|
||||
# TODO: t_siginfo (fixes require further inspection)
|
||||
# TODO: t_sethostname_test (consistently screws up the hostname)
|
||||
|
||||
@ -47,6 +47,7 @@ CFLAGS+= -D__HAVE_LONG_DOUBLE
|
||||
NETBSD_ATF_TESTS_C= alarm_test
|
||||
NETBSD_ATF_TESTS_C+= assert_test
|
||||
NETBSD_ATF_TESTS_C+= basedirname_test
|
||||
NETBSD_ATF_TESTS_C+= cpuset_test
|
||||
NETBSD_ATF_TESTS_C+= dir_test
|
||||
NETBSD_ATF_TESTS_C+= floatunditf_test
|
||||
NETBSD_ATF_TESTS_C+= fnmatch_test
|
||||
|
Loading…
Reference in New Issue
Block a user