On 04-Jan-2014 5:18 AM, "neha naik" <nehanaik27@xxxxxxxxx> wrote:
>
> Hi All,
> I am getting a request with bvec->bv_len > 512. Now, the
> information to be read is scattered across the entire disk in 512
> chunks. So that, information on disk can be : sector 8, sector 100,
> sector 9.
> Now if i get a request to read with the bvec->bv_len > 512 i need to
> pull in the information from
> multiple places on disk since the data is not sequentially located.
> I tried to look at the linux source code because i think raid must be
> doing it all the time. (eg : on disk 1 we may be storing sector 6 and
> on disk 2 we may be storing sector 7 and so on).
You are right. Perhaps you need to clone the bio and set them properly. I guess you ought to check dm driver's make_request function. It does clone bio.
I don't know if you can split that request while handling it. Perhaps reinserting that request could work.
> However, i have not really got any useful information from it. Also
> scouring through articles on
> google has not helped much.
> I am hoping somebody points me in the right direction.
>
> Thanks in advance,
> Neha
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies@xxxxxxxxxxxxxxxxx
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
---P.K.S
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies