Commit Graph

13 Commits

Author SHA1 Message Date
lukem
dab6ef8b56 add RCSIDs (including regeneration of files as appropriate) 2001-11-13 02:07:52 +00:00
thorpej
80cc38a1af Fix a partial construction problem that can cause race conditions
between creation of a file descriptor and close(2) when using kernel
assisted threads.  What we do is stick descriptors in the table, but
mark them as "larval".  This causes essentially everything to treat
it as a non-existent descriptor, except for fdalloc(), which sees a
filled slot so that it won't (incorrectly) allocate it again.  When
a descriptor is fully constructed, the code that has constructed it
marks it as "mature" (which actually clears the "larval" flag), and
things continue to work as normal.

While here, gather all the code that gets a descriptor from the table
into a fd_getfile() function, and call it, rather than having the
same (sometimes incorrect) code copied all over the place.
2001-06-14 20:32:41 +00:00
jdolecek
01040d97a2 add e_path (emulation path) to struct emul, which replaces emulation-specific
*_emul_path variables

change macros CHECK_ALT_{CREAT|EXIST} to use that, 'root' doesn't need
to be passed explicitly any more and *_CHECK_ALT_{CREAT|EXIST} are removed
change explicit emul_find() calls in probe functions to get the emulation
path from the checked exec switch entry's emulation

remove no longer needed header files

add e_flags and e_syscall to struct emul; these are unsed and empty for now
2000-12-01 12:28:30 +00:00
augustss
a82aeb5508 Kill register declarations. 2000-03-30 11:24:16 +00:00
thorpej
e3669c3393 Add "use counting" to file entries. When closing a file, and it's reference
count is 0, wait for use count to drain before finishing the close.

This is necessary in order for multiple processes to safely share file
descriptor tables.
1999-05-05 20:01:01 +00:00
christos
a30a9f3d94 const poisoning and CHECK_ALT_CREAT fixes. 1999-02-09 20:30:38 +00:00
perry
e1601dc2ca bzero->memset, bcopy->memcpy, bcmp->memcmp 1998-08-09 20:36:58 +00:00
jonathan
7411774547 lint: add prototype for static local function ultrixstatfs(). 1997-05-25 05:30:21 +00:00
mhitch
c376b68e9d Now needs sys/proc.h since compat/common/compat_util.h doesn't anymore. 1996-10-14 05:15:39 +00:00
jonathan
3281d4c16d Fix cut-and-paste (ouap vs ap) bugs so the previous revision actually
compiles.  Change variable names to use "ap" instead of "ouap" everywhere
to avoid similar bugs in future.
1996-09-29 10:52:02 +00:00
mycroft
a8fd25767d Define execv() and execve() consistently across emulations.
Do path name translation.
1996-09-03 03:12:17 +00:00
jonathan
b72f41635e Remove gcc -Wall lint from ultrix emulation.-
Mostly adding explicit != comparison to "if (error = copyin/out( ... ))".
Fix comment glitch in ultrix_fs.c
1996-04-07 17:23:04 +00:00
jonathan
aadc0baf87 Add '/emul/ultrix' pathname processing to Ultrix emulation, and move
Ultrix syscalls that require that processing out of ultrix_misc.c
to ultrix_pathname.c.
1996-01-07 13:38:49 +00:00