<div dir="ltr"><div><div><div>2016-05-02 18:08 GMT+03:00 Razvan Deaconescu via so2 <<a href="mailto:so2@cursuri.cs.pub.ro">so2@cursuri.cs.pub.ro</a>>:<br>><br>> Irineu Barbieru <<a href="mailto:irineu93@gmail.com">irineu93@gmail.com</a>> writes:<br>> > 2016-04-30 23:13 GMT+03:00 Razvan Deaconescu via so2 <<a href="mailto:so2@cursuri.cs.pub.ro">so2@cursuri.cs.pub.ro</a>>:<br>> >> Irineu Barbieru via so2 <<a href="mailto:so2@cursuri.cs.pub.ro">so2@cursuri.cs.pub.ro</a>> writes:<br>> >> > Salut, asa cum se observa si pe vmchecker, procesul in cadrul caruia<br>> >> > ruleaza tema submisa de mine, e omorat. Ruland local, aceasta se intampla<br>> >> > intrucat, la testul 71, masina virtuala ramane fara memorie si se<br>> >> > blocheaza, din ce am reusit sa imi dau seama.<br>> >> > Totusi, ruland aceste teste, de la 71 la 78, separat, imi trec. Mai mult,<br>> >> > am verificat si cu ajutorul kmemleak si nu as avea leak-uri.<br>> >> ><br>> >> > Ar putea cineva sa se uite pe ea si sa imi dea vreun hint legat de<br>> >> > ce anume fac atat de gresit, incat sa ramana fara memorie? Eu mi-am<br>> >> > tot batut capul si nu am reusit sa imi dau seama.<br>> >><br>> >> Salutare.<br>> >><br>> >> Scuze de răspunsul tardiv, sărbători și toate cele.<br>> >><br>> >> Din ce am urmărit codul sursă cred că problema este că ai prea multe<br>> >> zone "atomice" cuprinse între __bio_kmap_atomic și __bio_kunmap_atomic.<br>> >><br>> >> Știu că ți-am zis că nu e nevoie de alocări de buffere, dar în soluția<br>> >> noastră de referință avem implementare cu buffere (alocate cu kmalloc)<br>> >> în care copiem datele din bio-uri pentru prelucrare. Nu avem niciodată<br>> >> mai mult de o mapare efectuată cu __bio_kmap/kunmap_atomic.<br>> >><br>> >> Cred că în cazul tău nu rămâi fără memorie fizică ci fără spațiu pentru<br>> >> mapări temporare cu __bio_kmap/kunmap_atomic.<br>> ><br>> > Salut si Sarbatori Pascale fericite.<br>> ><br>> > Ideea este in felul urmator: in urma discutiei de la laborator, am recurs<br>> > la varianta cu multe zone atomice, tocmai pentru a nu mai aloca buffere<br>> > locale(cu kmalloc). Inainte de asta, lucram pe modelul prezentat de tine,<br>> > cu buffere locale, in care copiam datele pentru prelucrare, si aveam<br>> > aceeasi problema.<br>> ><br>> > In urma raspunsului tau, am modificat inca o data codul, aducandu-l intr-o<br>> > stare foarte asemanatoare cu ce aveam inainte de laborator, problema<br>> > manifestandu-se in continuare.<br>> ><br>> > Probabil fac ceva prost, foarte greu de observat.<br>><br>> Dă-i un submit pe vmchecker[1] să vedem codul. Sau dacă îl ai pe un<br>> repository privat (GitHub privat, GitLab, BitBucket), adaugă-ne și pe<br>> noi (echipa de asistenți) ca să putem vedea codul (eu sunt razvand sau<br>> razvan.deaconescu).<br>><br>> [1] <a href="https://vmchecker.cs.pub.ro/ui/">https://vmchecker.cs.pub.ro/ui/</a><br>><br>> Răzvan<br>> _______________________________________________<br>> <a href="http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii">http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii</a><br><br></div>Am submis inca o data.<br><br></div>Mersi,<br></div>Irineu<br></div>