[pso] [Tema 3][lin] CRC prefetching

Razvan Deaconescu razvan.deaconescu at cs.pub.ro
Wed Apr 20 13:54:39 EEST 2011


On 04/15/2011 12:05 AM, Carabas Mihai wrote:
>>> Hello.
>>>
>>> Tot citesc ce ai scris și nu îmi dau seama dacă nu am înțeles care e
>>> problema întâmpinată, ori nu ai tu abordarea corectă.
>>>
>>> Testerul va scrie pe discurile fizice ce trebuie, fie lucruri corecte,
>>> fie greșeli (asta ar însemna că sunt formate 'cum trebuie).  Deci tu
>>> trebuie să întorci erorile în funcție de situația creată de checker.
>>> Dacă ți se pare că checker-ul e greșit undeva, dă-ne, te rog, mai
>>> multe detalii.
>>
>> Programul meu nu intoarce eroare in cazul in care datele nu sunt valide 
>> pe nici unul din HDD-uri si totusi tester-ul trece. Cazul acesta inseamna
>> ca nu e verificat de checker.
>>
>> La incarcarea modulului, se stie ca se face un prefetching (un read in avans)
>> care nu are in user-space nici o mapare pe nici un read. Automat acel
>> read nu va avea CRC-ul citit egal cu cel calculat (pentru ca nimeni inainte
>> nu a scris date care sa fie formatate conform cerintei). Aceasta
>> ar fi problema mea.
> 
> Salut.
> 
> M-am mai uitat si mie imi pica testul la un write:
> 
> test: _test/test.c:176: xwrite: Assertion `ret >= 0' failed.
> 
> Nu inteleg de ce pica la un write, cand eu dau bio_endio(bio, -1) numai pe un 
> bio de tip READ 
> 
> in momentul cand nu am date consistente. Fara sa returnez eroare, cand gasesc eu 
> date inconsistente,
> testele trec. Probabil gresesc eu la verificarea consistentei, dar totusi de ce 
> pica cu -1 la un write?

Salut!

În urma unei discuții cu Sofia Neață (mulțumesc de răbdare) am adăugat o
precizare în enunțul temei[1] referitoare la "resetarea" discurilor în
cazul în care conțin date nevalide:
---
Dacă, în urma procesului de testăre, sectoarele de pe ambele discuri
conțin date nevalide, rezultând în erori de citire ce fac imposibilă
funcționarea modulului, va trebui să refaceți cele două discuri,
folosind comenzile:

dd if=/dev/zero of=/dev/sdb bs=8M
dd if=/dev/zero of=/dev/sdc bs=8M
---

Răzvan

[1] http://elf.cs.pub.ro/so2/wiki/teme/tema3#testare


More information about the pso mailing list