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

Issue 297700043: i#513 drx_buf Part 1: Adds drx_buf code and tests

Can't Edit
Can't Publish+Mail
Start Review
Created:
7 years, 9 months ago by toshi
Modified:
7 years, 8 months ago
Reviewers:
zhaoqin, bruening
CC:
dynamorio-devs_googlegroups.com
Visibility:
Public.

Description

Commit log for first patchset: --------------- i#513 drx_buf Part 1: Adds drx_buf code and tests Constructs a convenience API for initializing and filling three differentt kinds of buffers: a fast and a slow circular buffer, and a "faulting" buffer which notifies the client when the buffer fills. Currently has only been tested for x86 and x86_64. Compilation on ARM has been verified via cross-compiler. We disable tests for drx_buf on ARM and AARCH64. ---------------

Patch Set 1 #

Total comments: 99

Patch Set 2 : Addressed reviewer concerns #

Total comments: 11

Patch Set 3 : Addressed reviewer concerns #

Total comments: 76

Patch Set 4 : Addressed reviewer concerns #

Patch Set 5 : Addressed reviewer concerns #

Total comments: 24

Patch Set 6 : Addressed reviewer concerns, adds ARM support #

Total comments: 3

Patch Set 7 : Committed #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1640 lines, -15 lines) Patch
M api/docs/release.dox View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M ext/drx/CMakeLists.txt View 1 chunk +1 line, -0 lines 0 comments Download
M ext/drx/drx.h View 1 2 3 4 5 1 chunk +141 lines, -0 lines 0 comments Download
M ext/drx/drx.c View 1 2 3 4 3 chunks +6 lines, -1 line 0 comments Download
M ext/drx/drx.dox View 1 2 3 2 chunks +84 lines, -1 line 0 comments Download
A ext/drx/drx_buf.c View 1 2 3 4 5 6 1 chunk +718 lines, -0 lines 0 comments Download
M suite/tests/CMakeLists.txt View 1 2 3 4 5 1 chunk +9 lines, -0 lines 0 comments Download
A suite/tests/client-interface/drx_buf-test.c View 1 2 3 4 1 chunk +252 lines, -0 lines 0 comments Download
A suite/tests/client-interface/drx_buf-test.expect View 1 chunk +5 lines, -0 lines 0 comments Download
A + suite/tests/client-interface/drx_buf-test-shared.h View 1 chunk +36 lines, -13 lines 0 comments Download
A suite/tests/client-interface/drx_buf-test.dll.c View 1 2 3 4 5 1 chunk +386 lines, -0 lines 0 comments Download

Messages

Total messages: 45
toshi
7 years, 9 months ago (2016-07-07 23:02:25 UTC) #1
bruening
spelling: "differentt"
7 years, 9 months ago (2016-07-08 01:18:38 UTC) #2
dsotmman_gmail.com
Should I fix the spelling error now or should I wait until you're done with ...
7 years, 9 months ago (2016-07-08 21:16:43 UTC) #3
bruening
It can wait, just haven't gotten to the code yet. On Fri, Jul 8, 2016 ...
7 years, 9 months ago (2016-07-08 22:18:11 UTC) #4
bruening
Looks pretty good, especially the thorough tests. I have a lot of minor comments mostly ...
7 years, 9 months ago (2016-07-10 04:16:54 UTC) #5
bruening
https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.dox File ext/drx/drx.dox (right): https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.dox#newcode76 ext/drx/drx.dox:76: The \p drx library also demonstrates a minimalistic buffer ...
7 years, 9 months ago (2016-07-10 04:51:54 UTC) #6
toshi
Done w/ all, though generally there is one outstanding question on my part: (see my ...
7 years, 9 months ago (2016-07-11 03:10:23 UTC) #7
toshi
Commit log for latest patchset: --------------- i#513 drx_buf Part 1: Adds drx_buf code and tests ...
7 years, 9 months ago (2016-07-11 03:15:26 UTC) #8
bruening
https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.dox File ext/drx/drx.dox (right): https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.dox#newcode103 ext/drx/drx.dox:103: \section sec_drx_buf_faulting Faulting Buffer On 2016/07/11 03:10:21, DSOTMman wrote: ...
7 years, 9 months ago (2016-07-11 16:20:54 UTC) #9
zhaoqin
just looked at the drx.h, some question about the api might worth discussing. Basically I ...
7 years, 9 months ago (2016-07-12 19:37:40 UTC) #10
toshi
Done w/ all of Qin's suggestions I'll wait to push the changes for Qin's review ...
7 years, 9 months ago (2016-07-13 03:12:01 UTC) #11
bruening
https://codereview.appspot.com/297700043/diff/20001/ext/drx/drx.h File ext/drx/drx.h (right): https://codereview.appspot.com/297700043/diff/20001/ext/drx/drx.h#newcode334 ext/drx/drx.h:334: drx_buf_create_faulting_buffer(size_t buffer_size, On 2016/07/12 19:37:40, zhaoqin wrote: > Isn't ...
7 years, 9 months ago (2016-07-13 03:18:05 UTC) #12
zhaoqin
https://codereview.appspot.com/297700043/diff/20001/ext/drx/drx.h File ext/drx/drx.h (right): https://codereview.appspot.com/297700043/diff/20001/ext/drx/drx.h#newcode414 ext/drx/drx.h:414: * size. On 2016/07/13 03:12:01, DSOTMman wrote: > On ...
7 years, 9 months ago (2016-07-13 14:56:15 UTC) #13
bruening
https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.h File ext/drx/drx.h (right): https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.h#newcode280 ext/drx/drx.h:280: * before the final drx_buf_fill_cb_t has been called back, ...
7 years, 9 months ago (2016-07-13 17:57:24 UTC) #14
toshi
https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.h File ext/drx/drx.h (right): https://codereview.appspot.com/297700043/diff/1/ext/drx/drx.h#newcode280 ext/drx/drx.h:280: * before the final drx_buf_fill_cb_t has been called back, ...
7 years, 9 months ago (2016-07-13 23:37:35 UTC) #15
zhaoqin
> > Just think about the ARM case, the 1 byte store may still use ...
7 years, 9 months ago (2016-07-15 15:01:36 UTC) #16
zhaoqin
> For the most part the trace samples ({mem,inst}trace_{simple,x86}) currently > allocate the buffer and ...
7 years, 9 months ago (2016-07-15 15:07:21 UTC) #17
bruening
On 2016/07/15 15:07:21, zhaoqin wrote: > > > > bbbuf currently wants to allocate the ...
7 years, 9 months ago (2016-07-15 15:19:58 UTC) #18
toshi
On 2016/07/15 15:19:58, bruening wrote: > On 2016/07/15 15:07:21, zhaoqin wrote: > > > > ...
7 years, 9 months ago (2016-07-17 16:21:24 UTC) #19
bruening
On Sun, Jul 17, 2016 at 12:21 PM, <DSOTMman@gmail.com> wrote: > For some reason I ...
7 years, 9 months ago (2016-07-18 20:30:47 UTC) #20
dsotmman_gmail.com
On Mon, Jul 18, 2016 at 4:30 PM, Derek Bruening <bruening@google.com> wrote: > So you ...
7 years, 9 months ago (2016-07-18 22:16:26 UTC) #21
bruening
It's basically simplicity of the implementation (all init in drx_init) vs slightly simpler and more ...
7 years, 9 months ago (2016-07-21 02:58:56 UTC) #22
dsotmman_gmail.com
Agreed. > On Jul 20, 2016, at 10:58 PM, Derek Bruening <bruening@google.com> wrote: > > ...
7 years, 9 months ago (2016-07-22 16:18:34 UTC) #23
dsotmman_gmail.com
It seems like Qin still hasn't responded to our questions; should I send up my ...
7 years, 9 months ago (2016-07-24 19:24:27 UTC) #24
bruening
Sure. On Sun, Jul 24, 2016 at 3:24 PM, Toshi Piazza <dsotmman@gmail.com> wrote: > It ...
7 years, 9 months ago (2016-07-24 21:29:41 UTC) #25
dsotmman_gmail.com
Thanks, will put up my patchset tomorrow. Just want to do a quick look-over first. ...
7 years, 9 months ago (2016-07-25 02:25:07 UTC) #26
toshi
Commit log for latest patchset: --------------- i#513 drx_buf Part 1: Adds drx_buf code and tests ...
7 years, 9 months ago (2016-07-25 21:52:45 UTC) #27
bruening
Made it to drx_buf.c, splitting the review into two b/c it is large: part 1 ...
7 years, 9 months ago (2016-07-26 03:04:36 UTC) #28
toshi
Done w/ all, also changed the commit message. https://codereview.appspot.com/297700043/diff/40001/ext/drmgr/drmgr.h File ext/drmgr/drmgr.h (right): https://codereview.appspot.com/297700043/diff/40001/ext/drmgr/drmgr.h#newcode777 ext/drmgr/drmgr.h:777: * ...
7 years, 9 months ago (2016-07-27 01:45:24 UTC) #29
toshi
On 2016/07/27 01:45:24, toshi wrote: > Done w/ all, also changed the commit message. > ...
7 years, 9 months ago (2016-07-27 02:01:39 UTC) #30
bruening
Comments on the rest. The only serious issue is what looks like erroneous synchronization of ...
7 years, 9 months ago (2016-07-27 05:45:43 UTC) #31
bruening
https://codereview.appspot.com/297700043/diff/40001/ext/drmgr/drmgr.h File ext/drmgr/drmgr.h (right): https://codereview.appspot.com/297700043/diff/40001/ext/drmgr/drmgr.h#newcode777 ext/drmgr/drmgr.h:777: * creates a new thread. \return whether successful. On ...
7 years, 9 months ago (2016-07-27 05:51:49 UTC) #32
dsotmman_gmail.com
On Wed, Jul 27, 2016 at 1:51 AM, <bruening@google.com> wrote: > "CL" is "Change List" ...
7 years, 9 months ago (2016-07-28 01:23:07 UTC) #33
toshi
Done w/ all, also changed the commit message. https://codereview.appspot.com/297700043/diff/40001/ext/drmgr/drmgr.h File ext/drmgr/drmgr.h (right): https://codereview.appspot.com/297700043/diff/40001/ext/drmgr/drmgr.h#newcode777 ext/drmgr/drmgr.h:777: * ...
7 years, 8 months ago (2016-07-30 22:31:30 UTC) #34
toshi
Commit log for latest patchset: --------------- i#513 drx_buf Part 2: Adds drx_buf code and tests ...
7 years, 8 months ago (2016-07-30 22:44:14 UTC) #35
toshi
https://codereview.appspot.com/297700043/diff/80001/ext/drx/drx_buf.c File ext/drx/drx_buf.c (right): https://codereview.appspot.com/297700043/diff/80001/ext/drx/drx_buf.c#newcode670 ext/drx/drx_buf.c:670: buf = drvector_get_entry(&clients, i); Whoops, forgot to lock on ...
7 years, 8 months ago (2016-07-30 23:11:20 UTC) #36
bruening
Missing locks (as you noted) and missing doxygen links https://codereview.appspot.com/297700043/diff/80001/api/docs/release.dox File api/docs/release.dox (right): https://codereview.appspot.com/297700043/diff/80001/api/docs/release.dox#newcode146 api/docs/release.dox:146: ...
7 years, 8 months ago (2016-08-01 16:13:56 UTC) #37
toshi
Done w/ all, however before I upload the patchset I want to resolve my question ...
7 years, 8 months ago (2016-08-02 01:14:32 UTC) #38
bruening
https://codereview.appspot.com/297700043/diff/80001/ext/drx/drx_buf.c File ext/drx/drx_buf.c (right): https://codereview.appspot.com/297700043/diff/80001/ext/drx/drx_buf.c#newcode562 ext/drx/drx_buf.c:562: ilist, where, &first, &last); On 2016/08/02 01:14:32, toshi wrote: ...
7 years, 8 months ago (2016-08-02 04:23:13 UTC) #39
toshi
Commit log for latest patchset: --------------- i#513 drx_buf Part 2: Adds drx_buf code and tests ...
7 years, 8 months ago (2016-08-04 00:00:36 UTC) #40
toshi
https://codereview.appspot.com/297700043/diff/100001/ext/drx/drx_buf.c File ext/drx/drx_buf.c (right): https://codereview.appspot.com/297700043/diff/100001/ext/drx/drx_buf.c#newcode404 ext/drx/drx_buf.c:404: MINSERT(ilist, where, XINST_CREATE_load_int I noticed when submitting and looking ...
7 years, 8 months ago (2016-08-04 00:31:19 UTC) #41
bruening
https://codereview.appspot.com/297700043/diff/100001/ext/drx/drx_buf.c File ext/drx/drx_buf.c (right): https://codereview.appspot.com/297700043/diff/100001/ext/drx/drx_buf.c#newcode404 ext/drx/drx_buf.c:404: MINSERT(ilist, where, XINST_CREATE_load_int On 2016/08/04 00:31:19, toshi wrote: > ...
7 years, 8 months ago (2016-08-04 14:11:54 UTC) #42
bruening
LGTM
7 years, 8 months ago (2016-08-04 14:20:24 UTC) #43
toshi
https://codereview.appspot.com/297700043/diff/100001/ext/drx/drx_buf.c File ext/drx/drx_buf.c (right): https://codereview.appspot.com/297700043/diff/100001/ext/drx/drx_buf.c#newcode404 ext/drx/drx_buf.c:404: MINSERT(ilist, where, XINST_CREATE_load_int On 2016/08/04 14:11:53, bruening wrote: > ...
7 years, 8 months ago (2016-08-05 00:22:28 UTC) #44
toshi
7 years, 8 months ago (2016-08-05 00:35:01 UTC) #45
Committed as
https://github.com/DynamoRIO/dynamorio/commit/914d4df6ca324b8b37bcfec8567fe9e...

Final commit log: 
---------------
i#513 drx_buf Part 2: Adds drx_buf code and tests

Constructs a convenience API for initializing and filling three
different kinds of buffers: a fast and a slow circular buffer, and a
trace buffer which notifies the client when the buffer fills.

Review-URL: https://codereview.appspot.com/297700043
---------------
Sign in to reply to this message.

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