Re: Why side-effects on open(2) are evil. (was Re: [RFD w/info-PATCH]device arguments from lookup)

Marko Kreen
2001-05-24T07:45:24Z

On Thu, May 24, 2001 at 02:23:27AM +0200, Edgar Toernig wrote:
> Daniel Phillips wrote:
> > > > It's going to be marked 'd', it's a directory, not a file.
> > >
> > > Aha. So you lose the S_ISCHR/BLK attribute.
> >
> > Readdir fills in a directory type, so ls sees it as a directory and does
> > the right thing. On the other hand, we know we're on a device
> > filesystem so we will next open the name as a regular file, and find
> > ISCHR or ISBLK: good.
>
> ??? The kernel may know it, but the app? Or do you really want to
> give different stat data on stat(2) and fstat(2)? These flags are
> currently used by archive/backup prgs. It's a hint that these files
> are not regular files and shouldn't be opened for reading.
> Having a 'd' would mean that they would really try to enter the
> directory and save it's contents. Don't know what happens in this
> case to your "special" files ;-)

IMHO the CHR/BLK is not needed. Think of /proc. In the future,
the backup tools will be told to ignore /dev, that's all.

--
marko