Well, problema a fost că la apariția eveniment EPOLLIN pe un evenfd file descriptor nu apelam io_getevents() (când citește evenimente din completion queue al context-ului AIO probabil face cleanup și eliberează resurse?). Nu imi explic totuși de ce pe mașina mea virtuală mergea și pe cea de so-vm-linux nu.
Vlad În data de 25 mai 2016, 09:49, Călin Cruceru <[email protected] > a scris: > Salut, > > 2016-05-25 2:12 GMT+03:00 Andrei Vlad Postoaca via so < > [email protected]>: > > Salut, > > > > Nu îmi dau seama de ce la testul 28 pentru fisierul large00.dat îmi > > transferă 2064384 octeți după care un nou apel io_submit eșuează. Am > > încercat să verific valorile errno, returneaza EAGAIN (Insufficient > > resources are available to queue any iocbs) și dacă folosesc macro-ul > DIE pe > > valoare de retur primesc un mesaj de genul: (aws.c, 391): io_submit: > Success > > > > Am rulat pe mașina virtuală so-vm-linux testul 28 iar în wget.log am: > > 2016-05-24 14:57:42 (133 MB/s) - Connection closed at byte 2064384. > > Retrying. > > > > Local pe mașina mea virtuală de Ubuntu 15.10 64-bit îmi trece testul. > > > > Nu știu exact ce cauzează asta - probabil inițializezi contextul cu > primul parametru (nr_events) prea mic - însă faza cu Success e din > cauza că funcțiile din libaio nu modifică errno. Probabil dacă vedeai > EAGAIN în errno, provenea de la un apel de sistem anterior. > > Călin >
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii
