<div dir="ltr">Correct :)<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jan 30, 2013 at 12:01 PM, Pranay Kumar Srivastava <span dir="ltr">&lt;<a href="mailto:Pranay.Shrivastava@hcl.com" target="_blank">Pranay.Shrivastava@hcl.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
<br>
&gt; -----Original Message-----<br>
&gt; From: Rajat Sharma [mailto:<a href="mailto:fs.rajat@gmail.com">fs.rajat@gmail.com</a>]<br>
&gt; Sent: Wednesday, January 30, 2013 11:16 AM<br>
&gt; To: Pranay Kumar Srivastava<br>
&gt; Cc: <a href="mailto:kernelnewbies@kernelnewbies.org">kernelnewbies@kernelnewbies.org</a><br>
&gt; Subject: Re: Where does kernel store per task file position?<br>
&gt;<br>
&gt; &gt; I&#39;m still not able to figure out where exactly is the position of file stored per<br>
&gt; task_struct.<br>
&gt; struct file * itself is per process (task_struct) so file-&gt;f_pos is file position per<br>
&gt; process, if thats what you are looking for. I hope you haven&#39;t assumed that<br>
&gt; struct file itself is unique for a file, i.e. per inode? Then that assumption is<br>
&gt; wrong.<br>
&gt; -Rajat<br>
<br>
</div>[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&#39;s why there&#39;s an increment of dentry while doing lookup[Correct?].<br>

<br>
Thanks a lot!<br>
<div class="HOEnZb"><div class="h5">&gt;<br>
&gt; On Tue, Jan 29, 2013 at 6:38 PM, Pranay Kumar Srivastava<br>
&gt; &lt;<a href="mailto:Pranay.Shrivastava@hcl.com">Pranay.Shrivastava@hcl.com</a>&gt; wrote:<br>
&gt; Hi Everyone,<br>
&gt;<br>
&gt; I was trying to find out where does Linux store per process file position?<br>
&gt; Since struct file is allocated once when the file is first opened<br>
&gt; (get_empty_filp() via do_sys_open) .I looked at these,<br>
&gt;<br>
&gt; Copy_process---&gt;copy_files--&gt;dup_fd  it seemed to allocate only (struct<br>
&gt; file*)<br>
&gt;<br>
&gt; struct files_struct , but I couldn&#39;t find any field that is actually being used to<br>
&gt; store the file position.<br>
&gt;<br>
&gt;<br>
&gt; I&#39;m still not able to figure out where exactly is the position of file stored per<br>
&gt; task_struct. Secondly even if this was being saved does the kernel changes<br>
&gt; f_pos of struct file whenever a (read/write) is done? I don&#39;t that happens<br>
&gt; [Correct?].<br>
&gt;<br>
&gt; Regards,<br>
&gt; Pranay Kumar Srivastava<br>
&gt;<br>
&gt;<br>
&gt; ::DISCLAIMER::<br>
&gt; ----------------------------------------------------------------------------------------------<br>
&gt; ------------------------------------------------------<br>
&gt;<br>
&gt; The contents of this e-mail and any attachment(s) are confidential and<br>
&gt; intended for the named recipient(s) only.<br>
&gt; E-mail transmission is not guaranteed to be secure or error-free as<br>
&gt; information could be intercepted, corrupted, lost, destroyed, arrive late or<br>
&gt; incomplete, or may contain viruses in transmission. The e mail and its<br>
&gt; contents (with or without referred errors) shall therefore not attach any<br>
&gt; liability on the originator or HCL or its affiliates.<br>
&gt; Views or opinions, if any, presented in this email are solely those of the<br>
&gt; author and may not necessarily reflect the views or opinions of HCL or its<br>
&gt; affiliates. Any form of reproduction, dissemination, copying, disclosure,<br>
&gt; modification, distribution and / or publication of this message without the<br>
&gt; prior written consent of authorized representative of HCL is strictly<br>
&gt; prohibited. If you have received this email in error please delete it and notify<br>
&gt; the sender immediately.<br>
&gt; Before opening any email and/or attachments, please check them for viruses<br>
&gt; and other defects.<br>
&gt;<br>
&gt; ----------------------------------------------------------------------------------------------<br>
&gt; ------------------------------------------------------<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Kernelnewbies mailing list<br>
&gt; <a href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
&gt; <a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
<br>
</div></div></blockquote></div><br></div>