diff options
author | Sverker Eriksson <[email protected]> | 2014-09-11 17:47:32 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2014-09-12 14:19:04 +0200 |
commit | 12d3d25535225934cb2190c82c1b5dae005f1cda (patch) | |
tree | b292c837c3d0729900daa4a2cbeb7a6000e9f133 /erts/emulator/test/nif_SUITE_data | |
parent | 84144e03cd902813d1c9f9d75a8b6ecc5e58270d (diff) | |
download | otp-12d3d25535225934cb2190c82c1b5dae005f1cda.tar.gz otp-12d3d25535225934cb2190c82c1b5dae005f1cda.tar.bz2 otp-12d3d25535225934cb2190c82c1b5dae005f1cda.zip |
erts: Remove enif_have_dirty_schedulers()
and add 'dirty_scheduler_support' to ErlNifSysInfo
Diffstat (limited to 'erts/emulator/test/nif_SUITE_data')
-rw-r--r-- | erts/emulator/test/nif_SUITE_data/nif_SUITE.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/erts/emulator/test/nif_SUITE_data/nif_SUITE.c b/erts/emulator/test/nif_SUITE_data/nif_SUITE.c index ff5fb8c5af..291c903947 100644 --- a/erts/emulator/test/nif_SUITE_data/nif_SUITE.c +++ b/erts/emulator/test/nif_SUITE_data/nif_SUITE.c @@ -1539,13 +1539,21 @@ static ERL_NIF_TERM call_nif_schedule(ErlNifEnv* env, int argc, const ERL_NIF_TE } #ifdef ERL_NIF_DIRTY_SCHEDULER_SUPPORT + +static int have_dirty_schedulers(void) +{ + ErlNifSysInfo si; + enif_system_info(&si, sizeof(si)); + return si.dirty_scheduler_support; +} + static ERL_NIF_TERM dirty_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { int n; char s[10]; ErlNifBinary b; ERL_NIF_TERM result; - if (enif_have_dirty_schedulers()) { + if (have_dirty_schedulers()) { assert(enif_is_on_dirty_scheduler(env)); } assert(argc == 3); @@ -1566,7 +1574,7 @@ static ERL_NIF_TERM call_dirty_nif(ErlNifEnv* env, int argc, const ERL_NIF_TERM assert(!enif_is_on_dirty_scheduler(env)); if (argc != 3) return enif_make_badarg(env); - if (enif_have_dirty_schedulers()) { + if (have_dirty_schedulers()) { if (enif_get_int(env, argv[0], &n) && enif_get_string(env, argv[1], s, sizeof s, ERL_NIF_LATIN1) && enif_inspect_binary(env, argv[2], &b)) |