Re: [PATCH] seq_file: Allow private data to be supplied on seq_open

Steven Whitehouse
2014-08-07T13:32:28Z

Hi,

On 07/08/14 13:58, Rob Jones wrote:
[snip]
>
> On a related subject, Having looked at a few uses of seq_file, I must
> say that some users seem to make assumptions about the internal
> workings of the module. Dangerous behaviour as only some behaviours are
> documented.
>
> e.g. The behaviour that "struct seq_file" pointer is stored in
> file->private_data is documented and can therefore be relied upon but
> the fact that the output buffer and its size are only defined at the
> first output (and can therefore be pre-defined and pre-allocated by
> user code) is not documented and could therefore change without warning.
>
> This second behaviour is assumed in, for example, module fs/gfs2/glock.c
> which could, therefore, stop working properly without warning if the
> internal behaviour was changed.
>
While it is undocumented, it is I understand, how this feature was
intended to be used, so I think that it is safe to do this in the GFS2
case. Here is a ref to the thread which explains how it landed up like that:
https://www.redhat.com/archives/cluster-devel/2012-June/msg00000.html

Steve.