Issue Details (XML | Word | Printable)

Key: RVM-249
Type: Sub-task Sub-task
Status: Open Open
Priority: Minor Minor
Assignee: Unassigned
Reporter: David Grove
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
RVM
RVM-246

Annotation & enforcement mechanism to avoid patching code that is needed to process code patching

Created: 19/Sep/07 09:57 PM   Updated: 11/Apr/08 09:29 AM
Component/s: Runtime
Affects Version/s: None
Fix Version/s: 1000

Time Tracking:
Not Specified


 Description  « Hide
The code patching mechanism described in RVM-248 could go into an infinite loop if one of the methods that needs to be executed to perform the code patching operation itself becomes patched.

To prevent this, we need to annotate the methods involved in this operation and either prevent them from being invoked by pc-relative calls or know that when we do invalidate/replace one of them, that instead of being able to rely on lazy patching that we must trigger an eager update of all calls to them by performing a full code-space fixup operation.

We also need a compile-time checking mechanism (like that used for uninterruptibility) to ensure that the annotations are complete.



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
There are no comments yet on this issue.