Re: About generic_file_read()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2006-01-06 at 22:34 +0530, prasad Musale wrote:
> Hello ,
>  Generic_file_read() reads from cached pages. That means the file
> pages r already in page cache. But if I want to read file from disk,
> How these pages comes in page cache. Ext2 & vfat call this
> generic_file_read() as their read operation. I analyzed the sys_read()
> code but didn't get how file is read from disk. Can anyone tell me
> about that?
>  Thanks.
 
For normal cases of read, generic_file_read() eventually calls
do_generic_mapping_read().  It first attempts to read from the cache -
this is logical.  So you can see that if it finds the page and it is up
to date, it is done.  Otherwise, it calls the readpage function pointer
(mapping->a_ops->readpage).  This is a function that a file system
implements to read a page from disk.  Since you mentioned ext2, you can
look at ext2's readpage method, called ext2_readpage(), to see how
exactly the page is read from disk.

Hope that is enough detail to get you started.

Avishay Traeger
http://www.fsl.cs.sunysb.edu/~avishay/


>  
>  
> From,
> Prasad


--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux