Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(4355)

Issue 6448116: i#864: Don't set dcontext's x86_mode when recreating app state.

Can't Edit
Can't Publish+Mail
Start Review
Created:
11 years, 8 months ago by yangt
Modified:
5 months, 2 weeks ago
CC:
dynamorio-devs_googlegroups.com
Visibility:
Public.

Description

Reviewer: rnk@google.com i#864: Don't set dcontext's x86_mode when recreating app state. i#864: Don't set dcontext's x86_mode when recreating app state. Fixes issue 864.

Patch Set 1 #

Patch Set 2 : Don't set dcontext's x86 mode if the code cache's x86 mode is the same as the fragment's. #

Total comments: 1

Patch Set 3 : i#864: Add FRAG_X86_TO_X64. #

Total comments: 4

Patch Set 4 : i#864: Fix for GENCODE_X86_TO_X64. #

Total comments: 2

Patch Set 5 : i#864: Add FIXME PR 284029. #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+33 lines, -5 lines) Patch
M trunk/core/emit.c View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M trunk/core/fragment.h View 1 2 3 1 chunk +7 lines, -1 line 0 comments Download
M trunk/core/x86/arch.c View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M trunk/core/x86/arch_exports.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M trunk/core/x86/emit_utils.c View 1 2 3 4 2 chunks +18 lines, -2 lines 2 comments Download
M trunk/core/x86/interp.c View 1 2 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 13
yangt
11 years, 8 months ago (2012-08-06 22:26:30 UTC) #1
bruening
This doesn't look right to me: if in mixed-mode one thread can suspend another and ...
11 years, 8 months ago (2012-08-06 23:18:11 UTC) #2
Reid Kleckner (google)
Currently fragments have no idea whether they were translated from 32-bit code or not. For ...
11 years, 8 months ago (2012-08-07 03:30:48 UTC) #3
yangt
But we're running out of fragment flags. For now can I do it in the ...
11 years, 8 months ago (2012-08-07 15:38:16 UTC) #4
yangt
11 years, 8 months ago (2012-08-07 15:38:55 UTC) #5
bruening
http://codereview.appspot.com/6448116/diff/5001/trunk/core/x86/arch.c File trunk/core/x86/arch.c (right): http://codereview.appspot.com/6448116/diff/5001/trunk/core/x86/arch.c#newcode3266 trunk/core/x86/arch.c:3266: old_mode = get_x86_mode(tdcontext); state translation is used for much ...
11 years, 8 months ago (2012-08-07 18:15:30 UTC) #6
yangt
11 years, 8 months ago (2012-08-10 20:41:43 UTC) #7
bruening
LGTM http://codereview.appspot.com/6448116/diff/9001/trunk/core/emit.c File trunk/core/emit.c (right): http://codereview.appspot.com/6448116/diff/9001/trunk/core/emit.c#newcode455 trunk/core/emit.c:455: else if (get_x86_mode(dcontext)) I guess we don't support ...
11 years, 8 months ago (2012-08-13 17:57:59 UTC) #8
yangt
Unfortunately, this breaks after r1525. I'm trying to fix it. So I won't commit for ...
11 years, 8 months ago (2012-08-13 22:05:02 UTC) #9
yangt
11 years, 8 months ago (2012-08-14 14:49:00 UTC) #10
bruening
http://codereview.appspot.com/6448116/diff/14001/trunk/core/x86/emit_utils.c File trunk/core/x86/emit_utils.c (right): http://codereview.appspot.com/6448116/diff/14001/trunk/core/x86/emit_utils.c#newcode6986 trunk/core/x86/emit_utils.c:6986: link_shared_syscall_common(SHARED_GENCODE(true)); you need to link the 64-bit version b/c ...
11 years, 8 months ago (2012-08-14 17:06:16 UTC) #11
yangt
11 years, 8 months ago (2012-08-14 18:06:55 UTC) #12
bruening
11 years, 8 months ago (2012-08-14 18:38:50 UTC) #13
LGTM w/ comments

http://codereview.appspot.com/6448116/diff/8003/trunk/core/x86/emit_utils.c
File trunk/core/x86/emit_utils.c (right):

http://codereview.appspot.com/6448116/diff/8003/trunk/core/x86/emit_utils.c#n...
trunk/core/x86/emit_utils.c:6984: *
link_shared_syscall_common(SHARED_GENCODE(true));
shared_syscall only exists for windows so we don't need a FIXME, just something
like "XXX i#821: there are no 32-bit syscalls for WOW64 with 64-bit DR".

can you update the other PR 284029 ref to i#821 while you're at it?

http://codereview.appspot.com/6448116/diff/8003/trunk/core/x86/emit_utils.c#n...
trunk/core/x86/emit_utils.c:7023: /* FIXME PR 284029: for now we assume there
are no syscalls in x86 code.
ditto
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b