Re: about VSTa coding (name clash with Posix) and ext2fs

From: Dave Hudson <dave_at_nospam.org>
Date: Tue Nov 22 1994 - 06:04:09 PST

Hi Basile,

Basile STARYNKEVITCH wrote:
>
> 1. the errno EINTR EIO E* etc stuff is nearly a nightmare. In
> <sys/fs.h> errors are strings -this is a good idea. But EINTR is
> defined as a string in <sys/fs.h> and as a Posixly number in
> <errno.h>. I believe that this is annoying. I suggest that EINTR in
> <sys/fs.h> should be ERRINTR (or even VSTA_ERRINTR) and defined as a
> string, living EINTR only in libc for Posixy camouflage.

I think you'll find all of the EXXXX names clash somewhere - when I rewrote
the POSIX emulation library code Andy and I discussed this. The eventual
conclustion was that the POSIX emulation was exactly that - just an
emulation, and that it's cleaner for servers to just use <sys/fs.h>. What
you might try though is separating code which wants to use the existing e2fs
values and the server specific code that wants to use the VSTa strings. The
POSIX emulation stuff should make it easy to translate the internal
numerical representation into the VSTa string format.

> 2. Also the S_ISDIR macro (and similars) and S_IFDIR value should in
> my humble opinion only appear in <unistd.h> since they are only for
> Libc.
>
> 3. ino_t should be typedef-ed in <sys/types.h>.

Well I was going to start POSIXising the headers a few months back when I
did a lot of libc additions - I originally held off until 1.3.2 was out and
haven't had too much time since. I'd like to get all of this straight by
the time we reach 1.4.

> B. my ext2fs file server.
> -------------------------
>
> Also, i might once have my ext2fs in alpha state (i don't promise
> anything; i might also give up); currently i did handle correctly
> some FS_STAT requests. Is there somebody interrested in alpha testing?
> If yes, please email me.

Yes I'd be interested :-)

> I do lack some tiny documentation about the filesystem protocols. I
> figured out some of them. I don't really understand what the FS_FID
> request is for. I don't have a really clear picture of what a client
> connection to a file server is exactly. Basically, i copied the
> dos_main routine of the dos fs and hacked it.

FIDs are used in the kernel (os/kern/mmap.c) to handle the caching of
certain files, eg executables. Basically they just need to be unique IDs
per server to allow the kernel to decide if it already has a mapping of a
file.

> Also, i didn't recieve anything of the VSTa mailing list since more
> than a week. Is it normal?

Seems to go quiet occasionally.

                        Regards,
                        Dave
Received on Tue Nov 22 05:39:05 1994

This archive was generated by hypermail 2.1.8 : Thu Sep 22 2005 - 15:12:10 PDT