<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal><span lang=RO>Salut, testul de round robin îmi face și mie probleme. Pe VMchecker îmi pică, pe o mașină virtuală de Linux a mea primesc în mod consistent mesajul de Killed (și checkerul face fițe: îmi dă fail pe toate, dar rulând manual par să meargă toate celelalte) – out of memory în Valgrind. Pe mașina de SO îmi dau pass și același kill de la out of memory. Pe WSL, îmi dă pass și acesta dar Valgrind consumă peste 1.4GB de RAM când termină, ceea ce este peste resursele oferite atât de mașina mea custom cât și de cea de SO, ambele fiind setate la 512MB (și probabil depășește și capacitatea swap-ului?)<o:p></o:p></span></p><p class=MsoNormal><span lang=RO><o:p> </o:p></span></p><p class=MsoNormal><span lang=RO>Celelalte îmi trec și pe VMchecker.</span></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:so@cursuri.cs.pub.ro">Mihai Barbulescu via so</a><br><b>Sent: </b>Wednesday, April 24, 2019 10:10 PM<br><b>To: </b><a href="mailto:raresfolea97@gmail.com">Rares Folea</a><br><b>Cc: </b><a href="mailto:so@cursuri.cs.pub.ro">Sisteme de Operare</a><br><b>Subject: </b>Re: [so] [Tema4][Linux] Memcheck failed</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Salut Rares,</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Tu ce comanda folosesti ca sa rulezi testele pe  Linux?</p><p class=MsoNormal>Se foloseste comanda make -f Makefile.checker.</p><p class=MsoNormal>Folosesti si ultima versiune de pe github [1] - e33f8600 ?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Vedeti ca am facut un upgrade ca erau punctajele aiurea, tu esti</p><p class=MsoNormal>singurul care a submis tema, ti-am facut eu resubmit la ea pe</p><p class=MsoNormal>vmchecker acum ai 95 nu 90 cum afisa el aiurea.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Faceti git pull si de pe: https://github.com/systems-cs-pub-ro/so-assignments</p><p class=MsoNormal>versiunea noua ar trebui sa fie: 2126edd</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>In rest am verificat testele si sunt consistente github vs. vmchecker</p><p class=MsoNormal>- deci nu inteleg cum la tine sunt numerotate aiurea.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>[1] https://github.com/systems-cs-pub-ro/so-assignments/commit/e33f86007baf2e2a25e6827b94613c62ec298250</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On Wed, 24 Apr 2019 at 20:29, Mihai Barbulescu <b12mihai@gmail.com> wrote:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Salut.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Mulțumesc ca ai semnalat. E posibil sa fie o inconsistenta între github și vmchecker trebuie sa o verific.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Cu stimă,</p><p class=MsoNormal>> Mihai Bărbulescu</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> -------- Original Message --------</p><p class=MsoNormal>> Subject: Re: [so] [Tema4][Linux] Memcheck failed</p><p class=MsoNormal>> From: Rares Folea</p><p class=MsoNormal>> To: Mihai Barbulescu</p><p class=MsoNormal>> CC: Sisteme de Operare</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Salut Mihai,</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Testul 16) din setul de teste locale se refera la “Test Round Robin”, dar pe vmchecker, acest test are indentificatorul 15).</p><p class=MsoNormal>> Referitor la modul de rulare, pe masina virtuala de linux rulam testul 16 astfel:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> LD_LIBRARY_PATH=. valgrind --tool=memcheck ./_test/run_test 16</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Outputul valgrind-ului este:</p><p class=MsoNormal>> ==16733== Memcheck, a memory error detector</p><p class=MsoNormal>> ==16733== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.</p><p class=MsoNormal>> ==16733== Using Valgrind-3.15.0.GIT and LibVEX; rerun with -h for copyright info</p><p class=MsoNormal>> ==16733== Command: ./_test/run_test 16</p><p class=MsoNormal>> ==16733==</p><p class=MsoNormal>> Killed</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Logurile de sistem ce apar indica:</p><p class=MsoNormal>> Apr 24 20:09:14 vagrant kernel: [118109.973987] Out of memory: Kill process 16733 (memcheck-amd64-) score 863 or sacrifice child</p><p class=MsoNormal>> Apr 24 20:09:14 vagrant kernel: [118109.976517] Killed process 16733 (memcheck-amd64-) total-vm:4716800kB, anon-rss:302812kB, file-rss:0kB, shmem-rss:0kB</p><p class=MsoNormal>> Apr 24 20:09:14 vagrant kernel: [118110.013082] oom_reaper: reaped process 16733 (memcheck-amd64-), now anon-rss:0kB, file-rss:0kB, shmem-rss:0k</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Acest comportament se manifesta doar pe masina virtuala care ruleaza pe calculatorul meu, doar pe testul 16. (celelalte teste nu dau erori la verificarea cu valgrind).</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Dar pe vmchecker trec toate testele de memcheck. :)</p><p class=MsoNormal>> Multumesc,</p><p class=MsoNormal>> Rares</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> On 24 Apr 2019, at 14:30, Mihai Barbulescu <b12mihai@gmail.com> wrote:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Salut Rares,</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Sunt mai multe chestii pe care nu le inteleg:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> 1. Cum adica test 16 (15 pe vm)? Ele au un identificator clar, deci nu</p><p class=MsoNormal>> inteleg ce test pica</p><p class=MsoNormal>> 2. OOM manager din Linux da kill atunci cand se fac alocari (page</p><p class=MsoNormal>> faults) excesive peste o limita setata daca imi amintesc bine de</p><p class=MsoNormal>> ulimit. Eroarea pare una de vagrant, deci e posibil sa fi pornit</p><p class=MsoNormal>> folosind vagrant masina si sa ti se fi dat kill la vagrant.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Ne dai atat de putine detalii despre cum rulezi incat nu putem face</p><p class=MsoNormal>> altceva decat sa speculam mai ceva ca la bursa.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> On Wed, 24 Apr 2019 at 10:16, Rares Folea via so <so@cursuri.cs.pub.ro> wrote:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Multumesc de hint.</p><p class=MsoNormal>> Intradevar, problema era ca nu asteptam in toate scenariile, dupa toate threadurile.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Acum vad ca trec toate testele de memorie pe vmchecker.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Doar pe masina virtuala, cand rulez valgrind peste acel test 16 (15 pe vm), logurile de sistem indica out-of-memory:</p><p class=MsoNormal>> Apr 24 10:11:14 vagrant kernel: [109075.123564] Out of memory: Kill process 11250 (memcheck-amd64-) score 866 or sacrifice child</p><p class=MsoNormal>> Apr 24 10:11:14 vagrant kernel: [109075.124387] Killed process 11250 (memcheck-amd64-) total-vm:4736696kB, anon-rss:309400kB, file-rss:0kB, shmem-rss:0kB</p><p class=MsoNormal>> Apr 24 10:11:14 vagrant kernel: [109075.153180] oom_reaper: reaped process 11250 (memcheck-amd64-), now anon-rss:0kB, file-rss:0kB, shmem-rss:0kB</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> On 23 Apr 2019, at 22:27, Razvan Crainea <razvan.crainea@gmail.com> wrote:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Salut, Rareș!</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Cel mai probabil nu aștepți toate thread-urile, de acolo apare leak-ul.</p><p class=MsoNormal>> Legat de faptul că că procesul este omorât, poți verifica log-urile de</p><p class=MsoNormal>> sistem să te asiguri că nu este un crash?</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Numai bine,</p><p class=MsoNormal>> Răzvan</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> On Tue, Apr 23, 2019 at 9:10 PM Rares Folea via so <so@cursuri.cs.pub.ro> wrote:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Buna seara!</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Ma confrunt cu urmatoarele probleme referitoare la testele de memorie:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> La rularea pe masina virtuala cu valgrind a testelor 15 si 19 (14 si 18 pe vmchecker), obtin 2 erori similare:</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> ==4684== 288 bytes in 1 blocks are possibly lost in loss record 2 of 2</p><p class=MsoNormal>> ==4684==    at 0x4C3204A: calloc (vg_replace_malloc.c:762)</p><p class=MsoNormal>> ==4684==    by 0x40134A6: allocate_dtv (dl-tls.c:286)</p><p class=MsoNormal>> ==4684==    by 0x40134A6: _dl_allocate_tls (dl-tls.c:530)</p><p class=MsoNormal>> ==4684==    by 0x5049227: allocate_stack (allocatestack.c:627)</p><p class=MsoNormal>> ==4684==    by 0x5049227: pthread_create@@GLIBC_2.2.5 (pthread_create.c:644)</p><p class=MsoNormal>> ==4684==    by 0x4E3E65B: so_fork (in /home/student/l3-so-assignments/4-scheduler/checker-lin/libscheduler.so)</p><p class=MsoNormal>> ==4684==    by 0x10ABDE: test_sched_handler_15 (test_exec.c:282)</p><p class=MsoNormal>> ==4684==    by 0x4E3E47E: start_thread (in /home/student/l3-so-assignments/4-scheduler/checker-lin/libscheduler.so)</p><p class=MsoNormal>> ==4684==    by 0x50486DA: start_thread (pthread_create.c:463)</p><p class=MsoNormal>> ==4684==    by 0x538188E: clone (clone.S:95)</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> ==4684==      possibly lost: 576 bytes in 2 blocks</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> ==4684== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Nu reusesc sa-mi dau seama de la ce ar putea fi cele doua erori si de ce se manifesta doar la aceste doua teste.</p><p class=MsoNormal>> Mentionez ca astept terminarea thread-urilor cu pthread_join, care ar trebui sa efectueze eliberarea resurselor din structura pthread_t.</p><p class=MsoNormal>> In plus, la testul 16 (15 vmchecker), se pare ca valgrind ocupa mult prea multa memorie locala, iar ca urmare este omorat.</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> student@vagrant:~/l3-so-assignments/4-scheduler/checker-lin$ LD_LIBRARY_PATH=. valgrind --tool=memcheck --track-origins=yes --leak-check=full _test/run_test 16</p><p class=MsoNormal>> ==4693== Memcheck, a memory error detector</p><p class=MsoNormal>> ==4693== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.</p><p class=MsoNormal>> ==4693== Using Valgrind-3.15.0.GIT and LibVEX; rerun with -h for copyright info</p><p class=MsoNormal>> ==4693== Command: _test/run_test 16</p><p class=MsoNormal>> ==4693==</p><p class=MsoNormal>> Killed</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> Multumesc</p><p class=MsoNormal>> _______________________________________________</p><p class=MsoNormal>> http://ocw.cs.pub.ro/courses/so/info/lista-discutii</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> --</p><p class=MsoNormal>> Răzvan Crainea</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> _______________________________________________</p><p class=MsoNormal>> http://ocw.cs.pub.ro/courses/so/info/lista-discutii</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>> --</p><p class=MsoNormal>> Cu stimă,</p><p class=MsoNormal>> Mihai Bărbulescu</p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal>><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>-- </p><p class=MsoNormal>Cu stimă,</p><p class=MsoNormal>Mihai Bărbulescu</p><p class=MsoNormal>_______________________________________________</p><p class=MsoNormal>http://ocw.cs.pub.ro/courses/so/info/lista-discutii</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>