[so2] [SO2][Tema1] spin_lock in jprobe pentru kfree

Costash costashsrc at gmail.com
Mon May 11 22:19:54 EEST 2015


2015-05-11 21:09 GMT+02:00 Patricia Tudor via so2 <so2 at cursuri.cs.pub.ro>:
> Buna,
>
> Am si eu o nelamurire. Pentru instrumentarea functiei kfree folosesc un
> jprobe. Daca in acel handler am un spin_lock() imi intra in bucla infinita.
> Acelasi comportament il obtin si daca handlerul meu este doar:
>
> static void kfree_handler(const void *addr)
> {
>      printk("something");
>      jprobe_return();
> }
>
> Presupun ca printk contine un spinlock, motiv pentru care am acelasi
> comportament.
> Are cineva idee de ce se intampla acest lucru? Nu imi pot explica, si pe
> langa asta nu imi palce faptul ca trebuie sa fac accesul la lista fara lock.
>

Din câte țin eu minte de anul trecut am folosit spin_lock în
handler-ul pt kfree. Înregistrarea handler-ului presupun că trece cu
succes, nu? Asigură-te că spinlock-ul este inițializat și el cu
"spin_lock_init". Alte idei n-am.

Costash.


More information about the so2 mailing list