Re: [PATCH 2/3] rust: file: add f_pos and set_f_pos
From: Alice Ryhl
Date: Fri Sep 27 2024 - 02:49:06 EST
On Fri, Sep 27, 2024 at 12:08 AM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
>
> On Thu, Sep 26, 2024 at 02:58:56PM +0000, Alice Ryhl wrote:
> > Add accessors for the file position. Most of the time, you should not
> > use these methods directly, and you should instead use a guard for the
> > file position to prove that you hold the fpos lock. However, under
> > limited circumstances, files are allowed to choose a different locking
> > strategy for their file position. These accessors can be used to handle
> > that case.
> >
> > For now, these accessors are the only way to access the file position
> > within the llseek and read_iter callbacks.
>
> You really should not do that within ->read_iter(). If your method
> does that, it has the wrong signature.
>
> If nothing else, it should be usable for preadv(2), so what file position
> are you talking about?
Sorry, you are right. In read_iter we can access the file position via
the kiocb. It only makes sense for seek.
Alice