diff options
author | Sverker Eriksson <[email protected]> | 2012-01-24 17:08:40 +0100 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2012-02-21 12:23:04 +0100 |
commit | 88c771c1d69c98169ef9bc10c27ed4378854d368 (patch) | |
tree | c8eceae647344e35a2fd54c2982fd3db0053824a /erts/emulator/beam/export.c | |
parent | a23f25a3014dbad01d2016dc4e6d6df9d59ba64c (diff) | |
download | otp-88c771c1d69c98169ef9bc10c27ed4378854d368.tar.gz otp-88c771c1d69c98169ef9bc10c27ed4378854d368.tar.bz2 otp-88c771c1d69c98169ef9bc10c27ed4378854d368.zip |
erts: Cleanup code loading
Diffstat (limited to 'erts/emulator/beam/export.c')
-rw-r--r-- | erts/emulator/beam/export.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/erts/emulator/beam/export.c b/erts/emulator/beam/export.c index b9dcb1fb47..4a2a77a527 100644 --- a/erts/emulator/beam/export.c +++ b/erts/emulator/beam/export.c @@ -274,9 +274,8 @@ erts_find_function(Eterm m, Eterm f, unsigned int a, ErtsCodeIndex code_ix) * Returns a pointer to an existing export entry for a MFA, * or creates a new one and returns the pointer. * - * This function provides unlocked write access to the main export - * table. It should only be used during start up or when - * all other threads are blocked. + * This function acts on the staging export table. It should only be used + * to load new code. */ Export* @@ -318,11 +317,11 @@ erts_export_get_or_make_stub(Eterm mod, Eterm func, unsigned int arity) ep = erts_find_export_entry(mod, func, arity, code_ix); if (ep == 0) { /* - * The code is not loaded (yet). Put the export in the loader + * The code is not loaded (yet). Put the export in the staging * export table, to avoid having to lock the active export table. */ export_write_lock(); - if (erts_active_code_ix() == code_ix) { /*SVERK barrier? */ + if (erts_active_code_ix() == code_ix) { struct export_templ templ; struct export_entry* entry; |