[pso] [Tema3][Linux] Intrebare bio

Macicas Teodor teodor.macicas at cti.pub.ro
Sat May 8 14:07:21 EEST 2010


waiting for response :)
Multumesc.

Macicas Teodor wrote:
> Mersi inca o data pentru raspunsuri.
>
> Asadar, dupa ce fac submit la primul bio (cel read) in functia data de
> bio->bi_end_io va trebui sa-mi construiesc alt bio write si sa-i fac
> submit ? Sau acest lucru se intampla la nivelul superior in kernel ?
>
> Atunci cand fac bio_clone() nu se aloca o pagina noua ? Altfel, cum se
> face acest lucru ?
>
> Teodor
>
> Razvan Deaconescu wrote:
>> On Fri, 2010-05-07 at 13:07 +0300, Macicas Teodor wrote:
>>
>>> Multumesc pentru raspuns, Razvan.
>>> Acu folosesc workqueues pentru submitarea unui bio dintr-un kernel
>>> thread. Precizez ca vrea sa fac functional doar un write simple test.
>>>
>>> In functia unde primesc un bio si-l clonez, campul bio->bi_rw este 0 (
>>> READ ) desi in test eu fac write. De ce se intampla asta ?
>>>
>>
>> Orice write este precedat de un read. Daca vrei sa scrii un singur
>> octet, trebuie citit intreg sectorul/blocul aferent (bio de citire),
>> scris acel octet la adresa corespunzatoare si apoi scris sectorul/blocul
>> (bio de scriere).
>>
>>
>>> Mai mult, daca fac submit din kernel thread la bio-ul clonat, 
>>> primesc un
>>> kernel oops [0000] din procesul events/0 .
>>>
>>
>> Din cate stiu trebuie sa aloci o pagina noua pentru bio-ul clonat.
>>
>> Razvan
>>
>
>





More information about the pso mailing list