[so2] "[Tema1] Kmalloc prins inconsistent"

Cristian-Valeriu SOARE cristian.soare at cti.pub.ro
Wed Mar 16 17:52:47 EET 2016


Contextul probelor trebuie sa fie atomic. So, ai grija sa nu folosesti in interior vreo functie care face in spate vreun wait. Hint, kmalloc insusi face wait daca are GFP_KERNEL. Also, ai grija cu spinlockurile: poate dai de cazul in care mai multe instante de kmalloc trebuie sa fie active.

Sper sa ajute :)

Cristi

________________________________________
From: so2 <so2-bounces at cursuri.cs.pub.ro> on behalf of Madalina Hristache via so2 <so2 at cursuri.cs.pub.ro>
Sent: Wednesday, March 16, 2016 5:46 PM
To: Costash
Cc: Sisteme de Operare 2
Subject: Re: [so2] "[Tema1] Kmalloc prins inconsistent"

Costash <costashsrc at gmail.com>:
>
> On Mar 16, 2016 16:39, "Madalina Hristache via so2" <so2 at cursuri.cs.pub.ro>
> wrote:
>>
>> Madalina Hristache <madalina.hristache at gmail.com>:
>> > Salut,
>> >
>> > Am o mare problemă și mă lupt cu ea de azi-dimineață. Apelurile de
>> > kmalloc nu îmi sunt prinse și numărate consistent. Sunt dăți când
>> > totul merge perfect și dăți când numărul de apeluri kmalloc afișate e
>> > 0. Nu mai am probleme cu nicio altă funcție. Singurul test care pică e
>> > penultimul.
>> >
>> > Sună cunoscut?
>>
>> Ceva e foaaarte putred. Dacă adaug printk-uri să număr apelurile de
>> kmalloc, crește nebunește numărul de kfree-uri...
>
> Asigură-te că sincronizezi corect accesul la structurile de date pe care le
> modifici în kretprobe și jprobe. Eu țin minte că foloseam un spinlock pe
> accesurile la un hashmap cu informații.
>
> Also, vezi să deînregistrezi probele în ordinea inversă, altfel apar
> probleme.

Spinlock aveam (tot un hashtable am și eu și număr apelurile în el),
acum am modificat si deînregistrarea cum ai zis. Și nimic...

Mădă
_______________________________________________
http://ocw.cs.pub.ro/courses/so2/resurse/lista-discutii


More information about the so2 mailing list