[pso] tema5 teste linux

Octavian Voicu octavian.voicu at gmail.com
Mon Jun 8 19:50:17 EEST 2009


On Mon, Jun 8, 2009 at 10:42 AM, Razvan Deaconescu <
razvan.deaconescu at cs.pub.ro> wrote:

> On Mon, 2009-06-08 at 00:46 +0300, Razvan Deaconescu wrote:
> > M-am uitat peste codul Adrianei si am observat urmatoarele "greseli":
> > * foloseste read_lock, read_unlock nu read_lock_bh, read_unlock_bh in
> > ioctl
>
> Era pe dos. Foloseste read_lock_bh, read_unlock_bh in loc de read_lock,
> read_unlock.
>

nf_hookfn este apelata din context softirq?

In laboratorul de actiuni amanabile e o lista care imi sugereaza asta:

        TIMER_SOFTIRQ,
        NET_TX_SOFTIRQ,
        NET_RX_SOFTIRQ,

Daca se ruleaza din context softirq, nu e bine sa apelam functiile de lock
cu _bh din nf_hookfn, corect?

Din ce mi-am dat seama eu, trimitand tema cu diferite variatii, problema e
ca acel sleep(1) nu doarme o secunda (banuiesc ca apare un semnal sau ceva
si este intrerupt).

Am incercat din ioctl LIST sa returnez numarul de reguli negativ ( - nrules
) si asa, in functie de mesajul de eroare pot sa vad ce valoare a returnat
testerului si stiu ce valoare trebuia. Cand apare eroare respectiva, la al
doilea check "no of rules", numarul de reguli este cu 1 mai mare.

Poate s-ar rezolva problema introducand un sleep "harder" in tester:

while (sleep(1)) ;

Ar mai fi util sa se afiseze in tester numarul de reguli returnate de ioctl
si nr de reguli expected.


-- 
Octavian Voicu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/pso/attachments/20090608/4dbb1280/attachment.htm>


More information about the pso mailing list