[pso] [tema 3 linux] functia din bi_end_io nu se apeleaza

Razvan Deaconescu razvand at cs.pub.ro
Thu May 15 00:57:24 EEST 2008


On Wed, 2008-05-14 at 13:24 -0700, Dorin Barcan wrote:
> Salut, 
>   am o problema la tema 3 cu functia bi_end_io. Momentan am
> implementat functiile: make_request, bi_complete, s_open, s_release.
> In functia make_request primesc un bio la prima scriere din userspace,
> creez doua bio noi (am incercat bio_clone si allocate_bio....), fac
>   ->bi_sector = bio->bi_sector
>   ->bi_bdev = sdb1
>   ->bi_end_io = bi_complete
>   ->bi_private = &event_sdb1
> 
> dupa submit_bio() astept in wait_for_completion(&event_sdb1) dar nu se
> mai intampla nimic. Rulare ajunge pana la wait_for_completion dupa
> care se blocheaza. Functia bi_complete nu este apelata. Am verificat
> valorile returnate de open_bdev_excl si sunt bune. Am verificat
> valorile din bio ul initial si cel clonat si par ok. Din cate am
> inteles dupa bio_submit() de bio se ocupa driverul de ide, deci nu mai
> trebuie implementata nici o functie, iar implementarea actuala ar
> trebui sa fie functionala(chiar daca nu respecta cerintele temei).
> Care ar putea fi cauza neapelarii functiei bi_complete?

Citez din enunt:

---
o singură funcție de prelucrare a unei cozi de cereri poate fi activă la
un moment dat (mai multe detalii aici); va trebui să submiteți cererile
pentru dispozitivele fizice dintr-un kernel thread; se recomandă
folosirea folosirea workqueues;
---

Razvan


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



More information about the pso mailing list