On 05/06/2010 03:53 PM, Jack Z wrote:
Hi Mike,
Thanks for your reply.
What I was doing was just trying to understand how the the data
travels through normal fs or block layer, reaches iscsi and gets sent
over the network, when there is a normal read()/write() request. So
the function call trace I have found is not quite the normal path?
Yeah, it is the passthrough one. But once it gets to the iscsi layer's
iscsi_queuecommand function it is all the same.
Actually I'm still new to the kernel and the storage subsystem... So
could you maybe tell me what I should look at to learn more about the
normal code path of a read/write request? Or maybe point me to some
online materials/books I can gain some understanding from?
Do you have the Linux Device Driver book? It is free:
http://lwn.net/Kernel/LDD3/. Chapter 16 starting with the section
Request Processing might be helpful. It might be a little dated, but the
bio to request processing and a lot of the request and request queue
processing is close. I think it can be used to help find a function in
the current kernel and from there it seems like you can figure out where
things are going.
Thanks a lot!
Jack
On May 6, 10:56 am, Mike Christie<[email protected]> wrote:
On 05/05/2010 10:26 PM, Jack Z wrote:
Hi Mike,
Thank you for your help again. Following the guidance in your reply, I
traced the kernel code a bit more and eventually found out a possible
path for open-iscsi to get 4K pages in the scatterlist.
Kernel version: 2.6.30
open-iscsi version: 2.0.871
Trace 1: SCSI from a write request to data written into pages
--> function pointer
sg_fops.write --> sg_write()
Just so you know, this is the passthrough path. You are using some tools
like sg_utils or doing SG IO right?
What I described might be a little different than this path. I was
describing the normal FS/Block layer code path (like when you do a
read()/write() to /dev/sda or to some file on a FS on /dev/sda).
--
You received this message because you are subscribed to the Google Groups
"open-iscsi" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group
athttp://groups.google.com/group/open-iscsi?hl=en.
--
You received this message because you are subscribed to the Google Groups
"open-iscsi" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/open-iscsi?hl=en.