Subject: RE: 64 bit inode changes
To: Christos Zoulas <tech-kern@netbsd.org>
From: Gordon Waidhofer <gww@traakan.com>
List: tech-kern
Date: 08/15/2005 18:14:33
>
> >What I meant was to declare d_name either as incompletely array or
> >one length array, like e.g. Solaris does. Programs would have to
> explicitly
> >allocate space for the name, but it also means that they work
> >independent of later changes. In DragonFly, I'm working on completely
> >eliminating d_reclen, but that really is a lot of work :-)
>
> Yes that would be nice. I will leave ours for now to have a full array
> definition, so that userland programs don't need to change.
>
I didn't quite follow this part of the discussion.
Do not eliminate d_reclen from struct dirent. I've found it useful
from time-to-time to store additional values after d_name in a
dirent record (for example, the NFS cookies). Expect dirents to
become more complicated over time. Deriving the record length
from d_namlen alone will become impossible and it becomes quite
awkward to reliably calculate the d_reclen without the variable.
Regards,
-gww