On Sun, Sep 15, 2019 at 9:02 AM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote: > > Could be done, AFAICS. I'm not even sure we need a flag per se - we > have two cases when the damn thing is not in the list and "before > everything" case doesn't really need to be distinguished from post-EOF > one. Agreed, it looks like we could just look at f_pos and use that (together with whether we have a cursor or not) as the flag: - no cursor: f_pos < 2 means beginning, otherwise EOF - otherwise: cursor points to position > > I wonder why we have that naming to begin with, but it's so old that I > > can't remember the reason for that confusing naming. If there ever was > > any, outside of "bad thinking". > > ->d_subdirs/->d_child introduction was what, 2.1.63? November 1997... Heh. Your google-fu was better than mine. > http://lkml.iu.edu/hypermail/linux/kernel/9711.0/0250.html > with nothing public prior to that. What has happened to Bill Hawes, BTW? I think the original submission predates that by some time. Afaik, the original dentry patches were for a PhD thesis or something like that, and in the original form is was not used for caching and lookup, but to generate filenames for logging. .. and that may in fact be why it had the list of children being called "d_subdirs". Because the dentry patches originally were about tracking the changes to the directory structure, and so only tracking subdirectories was interesting. As to Bill Hawes: "Now there's a name I've not heard in a long, long time. A long time." I don't find anything after 98. Linus