summaryrefslogtreecommitdiff
path: root/sys/compat/ultrix
AgeCommit message (Collapse)Author
2002-07-12Change the locking on the mountpoint slightly. Instead of using mnt_lockArtur Grabowski
to get shared locks for lookup and get the exclusive lock only with LK_DRAIN on unmount and do the real exclusive locking with flags in mnt_flags, we now use shared locks for lookup and an exclusive lock for unmount. This is accomplished by slightly changing the semantics of vfs_busy. Old vfs_busy behavior: - with LK_NOWAIT set in flags, a shared lock was obtained if the mountpoint wasn't being unmounted, otherwise we just returned an error. - with no flags, a shared lock was obtained if the mountpoint was being unmounted, otherwise we slept until the unmount was done and returned an error. LK_NOWAIT was used for sync(2) and some statistics code where it isn't really critical that we get the correct results. 0 was used in fchdir and lookup where it's critical that we get the right directory vnode for the filesystem root. After this change vfs_busy keeps the same behavior for no flags and LK_NOWAIT. But if some other flags are passed into it, they are passed directly into lockmgr (actually LK_SLEEPFAIL is always added to those flags because if we sleep for the lock, that means someone was holding the exclusive lock and the exclusive lock is only held when the filesystem is being unmounted. More changes: dounmount must now be called with the exclusive lock held. (before this the caller was supposed to hold the vfs_busy lock, but that wasn't always true). Zap some (now) unused mount flags. And the highlight of this change: Add some vfs_busy calls to match some vfs_unbusy calls, especially in sys_mount. (lockmgr doesn't detect the case where we release a lock noone holds (it will do that soon)). If you've seen hangs on reboot with mfs this should solve it (I repeat this for the fourth time now, but this time I spent two months fixing and redesigning this and reading the code so this time I must have gotten this right).
2002-06-03compatiblity -> compatibilityTheo de Raadt
decriptor -> descriptor authentciated -> authenticated transmition -> transmission
2002-04-23In mount.h, rename field export -> export_info, to avoid collision with C++.Marc Espie
Synch files that use that field. (This argument is an internal interface specific to OpenBSD, so it won't cause compatibility problems.) (No bump, not an ABI change). ok art, millert...
2002-03-14remove ambiguity in version,ostype,osversion,osrelease and their constanity, ↵Michael Shalayeff
they are and declarre 'em accordingly also removing private externies of those
2002-03-14Final __P removal plus some cosmetic fixupsTodd C. Miller
2002-03-14First round of __P removal in sysTodd C. Miller
2002-02-14More FREF/FRELE fixesPeter Valchev
2002-02-13More FREF/FRELE on relevant places. Now, only sys_mmap and a bunch of ioctl ↵Artur Grabowski
functions in sys/compat are left.
2002-02-12More FREF/FRELE protection. This time all users of getvnode.Artur Grabowski
2002-02-12Fix all users of getsock to use FREF/FRELE properly.Artur Grabowski
2002-02-02Be more consistent about using fd_getfile where it matters.Artur Grabowski
2001-11-06Replace inclusion of <vm/foo.h> with the correct <uvm/bar.h> when necessary.Miod Vallat
(Look ma, I might have broken the tree)
2001-10-31There is no need to fake handling of /dev/zero here. The vm system ↵Artur Grabowski
ultrix/ultrix_misc.c sunos/sunos_misc.c does this automagically (and has done it for ages).
2001-10-26 - every new fd created by falloc() is marked as larval and should not be usedArtur Grabowski
any anyone. Every caller of falloc matures the fd when it's usable. - Since every lookup in the fd table must now check this flag and all of them do the same thing, move all the necessary checks into a function - fd_getfile.
2001-08-26syncTheo de Raadt
2001-08-26there is no need for .bak filesTheo de Raadt
2001-07-27#ifdef vax -> #ifdef __vax__Miod Vallat
2001-05-16No need to check M_WAIT/M_WAITOK malloc return values. (art@ ok)Hakan Olsson
2001-05-16regen after removing compatoptsTodd C. Miller
2001-05-16remove unneeded compatoptsTodd C. Miller
2001-05-05Remove the (vaddr_t) casts inside the round_page and trunc_page macros.Artur Grabowski
We might want to use them on types that are bigger than vaddr_t. Fix all callers that pass pointers without casts.
2000-12-28TypoMiod Vallat
2000-04-21O_FYNC -> O_SYNCTodd C. Miller
1999-11-10include syscallnames only if compiling w/ SYSCALL_DEBUG.Michael Shalayeff
was already so for native and sunos, the rest was just wasting space on it. niels@ millert@ ok
1999-06-07syncTheo de Raadt
1999-06-07replacement pipe() system call; copies data into place inside kernel, soTheo de Raadt
that EFAULT return value is possible
1999-06-01Fix some mips -> __mips__ stuff.Per Fogelstrom
1998-02-13type botchTheo de Raadt
1998-01-05type repair; nino@well.ox.ac.ukTheo de Raadt
1997-06-17careful with stackgap handling in execve()Theo de Raadt
1997-04-12we don't need NFSMNT_RESVPORT inside of the kernel (pointed out by theo)Thomas Graichen
1997-04-12make it compile (missing include of ultrix_util.h - the otherThomas Graichen
one is a bit unclear)
1997-01-26Regen.Jason Downs
1997-01-26Since these are old systems, call lchown() in place of chown().Jason Downs
1996-09-08fix typoTheo de Raadt
1996-08-31Cleanup execPer Fogelstrom
1996-08-25syncTheo de Raadt
1996-08-25route execve via compat filename translationTheo de Raadt
1996-08-10sys/dirent.hTheo de Raadt
1996-08-02Added Makefiles to build stuff from syscalls.master in some emulations.Niklas Hallqvist
Regenerated derived files from various syscalls.master files. Added $OpenBSD$.
1996-08-02Add $OpenBSD$Niklas Hallqvist
1996-06-18from netbsd; Fix typos in SUSP and DSUSP mapping when setting UltrixTheo de Raadt
posixmode tty attributes (was 112 and 113, should be 12 and 13).
1996-04-21partial sync with netbsd 960418, more to comeTheo de Raadt
1996-04-18Merge of NetBSD 960317Niklas Hallqvist
1996-01-08from netbsd:Theo de Raadt
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-05from netbsd:Theo de Raadt
Rewrite (a copy of) the emul-sunos termio/termios emulation code to emulate Ultrix termio/termios instead. Ultrix termio c_cc has separate VMIM/VTIME attributes, and the Ultrix termios c_cc is a strict superset of Ultrix termio c_cc. The termios-only c_cc indices are all changed, relative to SunOS.
1996-01-05from netbsd:Theo de Raadt
Add sigcode and esigcode to emul_ultrix, so that signal trampoline code is set up for emul_ultrix processes.
1995-12-30from netbsd: Ultrix-compatible termios struct and ioctl() definitionsTheo de Raadt
1995-12-26from netbsd:Theo de Raadt
Add emulation of Ultrix select: before calling native sys_select(), limit the number of FDs to select on to the maximum supported by NetBSD -- which is as many FDs as the emul_ultrix process can have open, anyway. Add emulation of Ultrix getmnt(2) in ultrix_fs.c Add partial emulation of Ultrix tty ioctl()s in ultrix_ioctl.c, derived from compat/sunos/sunos_ioctl.c. Ultrix libc's ``isatty()'' now works in compat_emul processes. Fix ultrix_sys_select() entry. Add emulation of ultrix mount(2). Sufficient to NFS-mount filesystems using a NetBSD kernel in an ultrix root filesystem. Move wait emulation to the old (v7) wait syscall number, as that's what the Ultrix ufs_mount binary uses.
1995-10-26update to netbsdTheo de Raadt