Student preparing for GSoC

Austin English austinenglish at gmail.com
Sat Mar 24 01:49:51 CDT 2018


On Sat, Mar 24, 2018 at 1:34 AM, Kieran Duggan <kieranduggan15 at gmail.com> wrote:
> So I'm attempting to run individual tests now. What exactly should I do
> after I "make service.ok"? I tried just running valgrind the way I would
> expect to use it i.e.
>
> valgrind --trace-children=yes --track-origins=yes --leak-check=full
> --num-callers=20 --workaround-gcc296-bugs=yes --log-file="filename.log"
> ./wine
> /home/kduggan15/Documents/Wine/wine-valgrind/dlls/atl100/tests/atl100_test-stripped.exe.so
>
> I get
>
> 64 bytes in 1 blocks are definitely lost in loss record 1,250 of 2,380
> ==11711==    at 0x7BC46859: notify_alloc (heap.c:260)
> ==11711==    by 0x7BC49D56: RtlAllocateHeap (heap.c:1726)
> ==11711==    by 0x4D16D40: IOCS_Create (atl_ax.c:952)
> ==11711==    by 0x4D17572: AtlAxAttachControl (atl_ax.c:1156)
> ==11711==    by 0x4804025: ??? (in
> /home/kduggan15/Documents/Wine/wine-valgrind/dlls/atl100/tests/atl100_test-stripped.exe.so)
>
> The issue being that the atl100_test-stripped.exe.so doesn't have any debug
> symbols
> Also I initially tried make service.ok and I just get something likemake
> service is up to date or it just builds the tests without running valgrind.
> If it does run valgrind, then I don't know where the log is going (and I
> checked wine-valgrind/logs of course)
>
> That's basically all I got. Sorry if these questions are a bit basic. I'm
> just running into a few roadblocks and could use the assistance. I really
> appreciate the help

Hi Kieran,

You've got it. Notice how the output is prefixed with the pid of the
wine process; that's valgrind's output. The source code lines on the
end of the line, like a backtrace.

So that output shows that there's a leak in atl100, allocated via
heap.c's notify_alloc, then RtlAllocateHeap, then IOCS_Create, then
AtlAxAttachControl).

Your task would be to find that leak, then fix it, i.e., free the
memory where it should have been, but wasn't.

FYI, after running the tests, you may need to run 'rm service.ok',
otherwise the test won't run (only if it succeeded beforehand).



More information about the wine-devel mailing list