diff options
author | ngie <ngie@FreeBSD.org> | 2014-10-10 19:32:53 +0000 |
---|---|---|
committer | ngie <ngie@FreeBSD.org> | 2014-10-10 19:32:53 +0000 |
commit | 5ce4af18cfbb66514344003b6c81710f21c3e3b6 (patch) | |
tree | e9b5e75fd7f8efea5dcfdca58481138e157bc51a /contrib/netbsd-tests/lib | |
parent | d20db9d537a86bd3d2904192e5fa0a74b9decc7a (diff) | |
download | FreeBSD-src-5ce4af18cfbb66514344003b6c81710f21c3e3b6.zip FreeBSD-src-5ce4af18cfbb66514344003b6c81710f21c3e3b6.tar.gz |
Handle getting/setting niceness/priority correctly on FreeBSD vs NetBSD
This might be fallout from PR: 189821
Submitted by: pho
Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'contrib/netbsd-tests/lib')
-rw-r--r-- | contrib/netbsd-tests/lib/libc/gen/t_nice.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/contrib/netbsd-tests/lib/libc/gen/t_nice.c b/contrib/netbsd-tests/lib/libc/gen/t_nice.c index f4a62e9..67a0bf5 100644 --- a/contrib/netbsd-tests/lib/libc/gen/t_nice.c +++ b/contrib/netbsd-tests/lib/libc/gen/t_nice.c @@ -93,7 +93,11 @@ ATF_TC_HEAD(nice_priority, tc) ATF_TC_BODY(nice_priority, tc) { +#if defined(__FreeBSD__) + int i, pri, pri2, nic; +#else int i, pri, nic; +#endif pid_t pid; int sta; @@ -106,8 +110,10 @@ ATF_TC_BODY(nice_priority, tc) pri = getpriority(PRIO_PROCESS, 0); ATF_REQUIRE(errno == 0); +#if defined(__NetBSD__) if (nic != pri) atf_tc_fail("nice(3) and getpriority(2) conflict"); +#endif /* * Also verify that the nice(3) values @@ -119,10 +125,18 @@ ATF_TC_BODY(nice_priority, tc) if (pid == 0) { errno = 0; +#if defined(__FreeBSD__) pri = getpriority(PRIO_PROCESS, 0); +#else + pri2 = getpriority(PRIO_PROCESS, 0); +#endif ATF_REQUIRE(errno == 0); +#if defined(__FreeBSD__) + if (pri != pri2) +#else if (nic != pri) +#endif _exit(EXIT_FAILURE); _exit(EXIT_SUCCESS); @@ -161,7 +175,11 @@ ATF_TC_HEAD(nice_thread, tc) ATF_TC_BODY(nice_thread, tc) { pthread_t tid[5]; +#if defined(__FreeBSD__) + int pri, rv, val; +#else int rv, val; +#endif size_t i; /* @@ -173,7 +191,12 @@ ATF_TC_BODY(nice_thread, tc) val = nice(i); ATF_REQUIRE(val != -1); +#if defined(__FreeBSD__) + pri = getpriority(PRIO_PROCESS, 0); + rv = pthread_create(&tid[i], NULL, threadfunc, &pri); +#else rv = pthread_create(&tid[i], NULL, threadfunc, &val); +#endif ATF_REQUIRE(rv == 0); rv = pthread_join(tid[i], NULL); |