Project

General

Profile

Bug #2018

Use of function pointers causes CkCallback errors in some ASLR environments

Added by Evan Ramos 19 days ago. Updated 19 days ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
10/26/2018
Due date:
% Done:

0%


Description

For example, running examples/charm++/wave2d across two or more hosts on AArch64 results in:

Mismatched callback details: reducers (CkReduction::sum_int, CkReduction::sum_int); callback types (CkCallback::call1Fn, CkCallback::call1Fn)

If this error check is disabled, a segfault results, because messages containing callbacks of type call1Fn or callCFn include raw function pointers which are not guaranteed to be the same across hosts.

History

#1 Updated by Sam White 19 days ago

The proposed solution is to provide an interface through which users register any function pointers they will use in Callbacks, and the runtime registers them in tables. The index to that table becomes the global ID through which the function pointer is looked up.

A shorter term goal would be to detect these errors at runtime and output a message about disabling ASLR if possible.

Also available in: Atom PDF