Correct :)
On Wed, Jan 30, 2013 at 12:01 PM, Pranay Kumar Srivastava < [email protected]> wrote: > > > > -----Original Message----- > > From: Rajat Sharma [mailto:[email protected]] > > Sent: Wednesday, January 30, 2013 11:16 AM > > To: Pranay Kumar Srivastava > > Cc: [email protected] > > Subject: Re: Where does kernel store per task file position? > > > > > I'm still not able to figure out where exactly is the position of file > stored per > > task_struct. > > struct file * itself is per process (task_struct) so file->f_pos is file > position per > > process, if thats what you are looking for. I hope you haven't assumed > that > > struct file itself is unique for a file, i.e. per inode? Then that > assumption is > > wrong. > > -Rajat > > [Pranay Kumar Srivastava] That really was a stupid question, it says right > there get_empty_filp() in do_sys_open. For forks the inherited file have > common struct file [Correct?] but for the files opened after fork in > child/parent will not have shared struct file[Correct?]. So the same > dentry can be pointed to by multiple struct file[Correct?] that's why > there's an increment of dentry while doing lookup[Correct?]. > > Thanks a lot! > > > > On Tue, Jan 29, 2013 at 6:38 PM, Pranay Kumar Srivastava > > <[email protected]> wrote: > > Hi Everyone, > > > > I was trying to find out where does Linux store per process file > position? > > Since struct file is allocated once when the file is first opened > > (get_empty_filp() via do_sys_open) .I looked at these, > > > > Copy_process--->copy_files-->dup_fd it seemed to allocate only (struct > > file*) > > > > struct files_struct , but I couldn't find any field that is actually > being used to > > store the file position. > > > > > > I'm still not able to figure out where exactly is the position of file > stored per > > task_struct. Secondly even if this was being saved does the kernel > changes > > f_pos of struct file whenever a (read/write) is done? I don't that > happens > > [Correct?]. > > > > Regards, > > Pranay Kumar Srivastava > > > > > > ::DISCLAIMER:: > > > ---------------------------------------------------------------------------------------------- > > ------------------------------------------------------ > > > > The contents of this e-mail and any attachment(s) are confidential and > > intended for the named recipient(s) only. > > E-mail transmission is not guaranteed to be secure or error-free as > > information could be intercepted, corrupted, lost, destroyed, arrive > late or > > incomplete, or may contain viruses in transmission. The e mail and its > > contents (with or without referred errors) shall therefore not attach any > > liability on the originator or HCL or its affiliates. > > Views or opinions, if any, presented in this email are solely those of > the > > author and may not necessarily reflect the views or opinions of HCL or > its > > affiliates. Any form of reproduction, dissemination, copying, disclosure, > > modification, distribution and / or publication of this message without > the > > prior written consent of authorized representative of HCL is strictly > > prohibited. If you have received this email in error please delete it > and notify > > the sender immediately. > > Before opening any email and/or attachments, please check them for > viruses > > and other defects. > > > > > ---------------------------------------------------------------------------------------------- > > ------------------------------------------------------ > > > > > > _______________________________________________ > > Kernelnewbies mailing list > > [email protected] > > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies > >
_______________________________________________ Kernelnewbies mailing list [email protected] http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
