minix/test/test39.c
Tomas Hruby 40b1d58077 Mostly a revert of r5306. com.h defines MAX_NR_TASKS value which replaces
NR_TASKS in the endpoint macros. MAX_NR_TASKS defines the maximal number of
kernel tasks. It is unlikely that we will ever need this many tasks as the goal
is not to have such a difference in the future. For now it makes possible to
remove the limiting NR_TASKS from the endpoint code.
2009-09-29 20:13:41 +00:00

40 lines
710 B
C

#include <stdio.h>
#include <minix/endpoint.h>
#include <minix/sys_config.h>
int main(int argc, char *argv[])
{
int g, p;
printf("Test 39 ");
for(g = 0; g <= _ENDPOINT_MAX_GENERATION; g++) {
for(p = -MAX_NR_TASKS; p < _NR_PROCS; p++) {
endpoint_t e;
int mg, mp;
e = _ENDPOINT(g, p);
mg = _ENDPOINT_G(e);
mp = _ENDPOINT_P(e);
if(mg != g || mp != p) {
printf("%d != %d || %d != %d\n", mg, g, mp, p);
return 1;
}
if(g == 0 && e != p) {
printf("%d != %d and g=0\n", e, p);
return 1;
}
if(e == ANY || e == SELF || e == NONE) {
printf("endpoint (%d,%d) is %d; ANY, SELF or NONE\n",
g, p, e);
return 1;
}
}
}
printf("ok\n");
return 0;
}