<div dir="ltr">2016-04-30 23:13 GMT+03:00 Razvan Deaconescu via so2 <span dir="ltr"><<a href="mailto:so2@cursuri.cs.pub.ro" target="_blank">so2@cursuri.cs.pub.ro</a>></span>:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">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 ce anume<br>
> fac atat de gresit, incat sa ramana fara memorie? Eu mi-am tot batut capul<br>
> si nu am reusit sa imi dau seama.<br>
<br>
</span>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>
Răzvan<br>
_______________________________________________<br>
<a href="http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii" rel="noreferrer" target="_blank">http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii</a></blockquote></div><br><br></div><div class="gmail_extra">Salut si Sarbatori Pascale fericite.<br><br>Ideea este in felul urmator: in urma discutiei de la laborator, am recurs la varianta cu multe zone atomice, tocmai pentru a nu mai aloca buffere locale(cu kmalloc). Inainte de asta, lucram pe modelul prezentat de tine, cu buffere locale, in care copiam datele pentru prelucrare, si aveam aceeasi problema.<br></div><div class="gmail_extra"><br>In urma raspunsului tau, am modificat inca o data codul, aducandu-l intr-o stare foarte asemanatoare cu ce aveam inainte de laborator, problema manifestandu-se in continuare.<br><br></div><div class="gmail_extra">Probabil fac ceva prost, foarte greu de observat.<br><br></div><div class="gmail_extra">Irineu</div></div>