Eu nu îți pot vedea codul, dar dacă buffer este alocat dinamic vezi să nu fi mutat pointerul! Într-o alocare statică, buffer + 4095 va funcționa pentru accese de dimensiune 1 octet. Eu am avut erori pentru că nu dădeam parametru corect lui read() (uitam să scad nr de octeți deja citiți, o idee oricum proastă că în noua implementare apelez read() doar pe un buffer gol – acolo voi hardcoda nr de octeți citiți la 4096 [mă rog, cu macro respectiv] și voi considera câți reușește)
Bufferul primit în so_fread/so_fwrite are o dimensiune determinată strict de cerințele utilizatorului și se știe doar că poate păstra cel puțin size*nmemb octeți. Mai multe chestii despre acel buffer nu putem ști. Recomand și eu o chestie menționată și în cerință: so_fread să se implementeze cu so_fgetc și so_fwrite cu so_fputc, și ăstea să aibă grijă de buffer și de toate celelalte detalii. Sent from Mail for Windows 10 From: Șendre Mihai-Alin Sent: Monday, April 1, 2019 12:23 AM To: Adrian Șendroiu Cc: Paul-Stelian Olaru; Sisteme de Operare Subject: Re: [so] Fwd: [Tema 2][Linux] Memcheck failed Multam fain, Paul. Am rezolvat acum, dar nu-nteleg o anomalie. In momentul in care detectez SO_EOF, pentru ca n-am reusit sa citesc toti cei size * nmemb bytes, mai incerc un apel read. Calculez adresa buffer + offset si primesc memcheck error, read(buf) points to unaddressable bytes. buffer + 5 merge perfect, buffer + 3000 merge perfect, buffer + 3700 crapa. Any thoughts on this? Cum vad eu lucrurile, orice pana la buffer + 4095 ar trebui sa functioneze. Mihai-Alin Șendre +40764199156 On Sun, Mar 31, 2019 at 11:56 PM Adrian Șendroiu <molecula2...@gmail.com> wrote: De fapt, scriptul de testare salvează logul de la valgrind. E suficient să rulezi "./_test/run_test.sh 27" și ar trebui să ai un fișier "_log" în directorul curent. On Sun, 31 Mar 2019 at 23:54, Paul-Stelian Olaru <olarupaulstelia...@gmail.com> wrote: > > Vezi că tu faci Valgrind pe Bash, nu pe programul de teste! > > > > https://imgur.com/a/4vTPtgI > > > > Vezi în exemplul meu cum se poate rula corect Valgrind pe testul în sine. > > > > Sent from Mail for Windows 10 > > > > From: Șendre Mihai-Alin via so > Sent: Sunday, March 31, 2019 11:42 PM > To: Adrian Șendroiu > Cc: Sisteme de Operare > Subject: Re: [so] Fwd: [Tema 2][Linux] Memcheck failed > > > > Treaba cu "Reading ..." e din printf-urile mele. > > > > https://imgur.com/hj73viZ > > > Mihai-Alin Șendre > > +40764199156 > > > > > > On Sun, Mar 31, 2019 at 11:00 PM Adrian Șendroiu <molecula2...@gmail.com> > wrote: > > Arată-ne ce zice valgrind când rulezi de mână. > > On Sun, 31 Mar 2019 at 15:03, Șendre Mihai-Alin via so > <so@cursuri.cs.pub.ro> wrote: > > > > Da, valgrind da exact acelasi output ca orice alt test care-mi trece. > > Mihai-Alin Șendre > > +40764199156 > > > > > > ---------- Forwarded message --------- > > From: Șendre Mihai-Alin <mihai.alin.sen...@gmail.com> > > Date: Sun, Mar 31, 2019 at 3:01 PM > > Subject: Re: [so] [Tema 2][Linux] Memcheck failed > > To: Paul Olaru <olarupaulstelia...@gmail.com> > > > > > > Da, valgrind da exact acelasi output ca orice alt test care-mi trece. > > > > Mihai-Alin Șendre > > +40764199156 > > > > > > On Sun, Mar 31, 2019 at 2:58 PM Paul Olaru <olarupaulstelia...@gmail.com> > > wrote: > >> > >> Ai încercat să rulezi manual testul sub Valgrind? > >> > >> On Sun, Mar 31, 2019, 14:53 Șendre Mihai-Alin via so > >> <so@cursuri.cs.pub.ro> wrote: > >>> > >>> Salut, > >>> > >>> Ma chinui de ceva ore sa fac testul 27 sa treaca. Rezolv o eroare, apare > >>> alta. Inainte nu faceam destule apeluri de sistem. Am rezolvat, acum > >>> primesc memcheck failed. Eroarea asta ma depaseste momentan. Am postat pe > >>> git, ma poate ajuta cineva? :) > >>> > >>> Multumesc anticipat, > >>> Mihai-Alin Șendre > >>> +40764199156 > >>> _______________________________________________ > >>> http://ocw.cs.pub.ro/courses/so/info/lista-discutii > > > > _______________________________________________ > > http://ocw.cs.pub.ro/courses/so/info/lista-discutii > >
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii