<br>Salut!<br><br>  Azi am incercat sa capteze si eu valorea care trebuie alocata de __kmalloc si tot nu am reusit kretprobe. In schimb am observat ca daca folosesc jprobe, dimensiunea nu este cea pe care o dau functiei kmalloc, ci difera. <br>
Pentru testare am creat un modul care aloca memorie cu kmalloc si afiseaza pidul procesului care foloseste functia kmalloc.<br>    Ceva de genu :<br>  for ( i = 0 ; i < 10; i++){<br>       printk( "Fac alocarea %d\n", current->pid);<br>
        ptr = kmalloc( 3000, GFP_ATOMIC);<br>   }<br>Iar modulul care foloseste jprobes doar afiseza parametrul size si pidul procesului curent <br>unde size este parametrul primit de functie. <br> printk( KERN_INFO "Procesul %d a apela kmalloc pentru inceputul de zona de mem %lu \n", current->pid, size);<br>
<br>Mesajele de logging in schimb imi arata asa ? Din ce cauza dimensiunea nu este cea indicat ca parametru la kmalloc ( 3000)? <br>[ 2696.823394] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 256 <br>[ 2696.825485] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 256 <br>
[ 2696.827420] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 19 <br>[ 2696.831188] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 224 <br>[ 2696.839494] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 104 <br>
[ 2696.842103] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 4 <br>[ 2696.844008] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 4 <br>[ 2696.846843] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 436 <br>
[ 2696.849242] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 48 <br>[ 2696.856153] Procesul 5070 a apela kmalloc pentru inceputul de zona de mem 12 <br>[ 2696.878547] Fac alocarea 5070<br>[ 2696.880849] Fac alocarea 5070<br>
[ 2696.883683] Fac alocarea 5070<br>[ 2696.884847] Fac alocarea 5070<br>[ 2696.886014] Fac alocarea 5070<br>[ 2696.900828] Fac alocarea 5070<br>[ 2696.901533] Fac alocarea 5070<br>[ 2696.903210] Fac alocarea 5070<br>[ 2696.903701] Fac alocarea 5070<br>
[ 2696.904232] Fac alocarea 5070<br><br>A reusit cineva sa scoata dimensiunea alocata ?<br><br>Cu stima, <br>Cosmin Stoica<br><br><br>PS: <br>     Cam aceleasi valori obtin si pentru kretprobe pt registrul ax. In acela se salveaza valoarea primului parametru sau bx?<br>
<br><br>