msaitoh
1f5b9b4d63
sprintf->snprintf
1999-02-03 05:05:03 +00:00
drochner
7847c0f52e
make it compile with !UVM
1999-01-28 21:18:00 +00:00
msaitoh
ea669760d6
Add /proc/#/map. From FreeBSD.
1999-01-25 02:20:08 +00:00
wrstuden
c7fc6c74ca
Oops. That extra "*" doesn't need to be there.
1999-01-15 22:04:44 +00:00
wrstuden
872d72e705
In nullfs_mount, we need to check if error before VOP_UNLOCK(vp,0) as
...
vp is initialized iff error==0 in null_node_create.
1999-01-13 01:51:37 +00:00
matt
32a315ff7c
Use the so_send and so_receive funcptrs in the socket instead of calling
...
sosend/soreceive directly. [I've been meaning to commit these for months.]
1998-10-31 01:18:41 +00:00
ross
e1b25b7bd6
Make spec_write() process errors and return them, otherwise we don't even
...
notice things like hitting the end of a partition or device. (To be sure,
writes to block special files are rare, but as long as we support them...)
1998-10-02 00:21:39 +00:00
jonathan
fcf7a78c02
Workaropund fix for PR #5239 from <minoura@kw.netlaputa.ne.jp>:
...
stop null_node_create() from locking the nullfs mountpoint multiple
times. Avoids a guaranteed, repeatably "locking against myself" panic
during mount of a nullfs filesystem. nullfs filesystems are still as
buggy as ever (e.g., see PR# 4907) but this you at least mount them.
1998-09-30 06:50:10 +00:00
thorpej
970e60efb8
- Use proclists[], rather than checking allproc and zombproc explicitly.
...
- Add some comments about locking.
1998-09-08 23:50:13 +00:00
thorpej
7cc905f5c8
Add some braces to make egcs happy (ambiguous else warning).
1998-08-18 06:27:01 +00:00
kleink
5350df2953
Per POSIX, fail with EINVAL if advisory locking is attempted on a file type
...
that doesn't support it, rather than using a homegrown EBADF or EOPNOTSUPP.
1998-08-13 10:06:31 +00:00
kleink
bf1863d17b
Add genfs_einval(), which does the obvious thing.
1998-08-13 09:59:52 +00:00
eeh
a2dd74ed79
Merge paddr_t changes into the main branch.
1998-08-13 02:10:37 +00:00
matthias
574106c52b
create miscfs/genfs/genfs_vnops.c:genfs_enoioctl and make all the other
...
filesystems use it instead of a private version.
1998-08-10 08:11:10 +00:00
perry
4522c799a1
bzero->memset, bcopy->memcpy, bcmp->memcmp
1998-08-09 20:51:08 +00:00
kleink
12a866151b
Recognize _PC_SYNC_IO.
1998-08-03 14:19:57 +00:00
lukem
786b86d71b
use AF_LOCAL instead of AF_UNIX
1998-07-18 05:04:35 +00:00
jonathan
d275e56dee
* defopt COMPAT_{09,10,11,12,13} and COMPAT_NOMID.
...
TODO: revisit interaction between native compat and emul compat usage.
1998-07-05 08:49:30 +00:00
thorpej
961f0708b1
- Rename nqnfs_vop_lease_check() to genfs_lease_check(). If NFSSERVER is
...
not in the kernel, genfs_lease_check() is simply a no-op. This allows
LKM'd file systems to be exported (previously did not work properly
due to a compile-time decision based on -DNFSSERVER).
- defopt NFSSERVER
1998-06-25 22:15:28 +00:00
sommerfe
7ba7fbbb23
Always include fifos; "not an option any more".
1998-06-24 20:58:44 +00:00
sommerfe
becaafeea0
defopt for options FIFO
1998-06-22 22:00:59 +00:00
cgd
651b44e211
Rework the way kernel include files are installed. In the new method,
...
as with user-land programs, include files are installed by each directory
in the tree that has includes to install. (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.) The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change. Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
kleink
382743ada3
Convert fsync vnode operator implementations and usage from the old `waitfor'
...
argument and MNT_WAIT/MNT_NOWAIT to `flags' and FSYNC_WAIT.
1998-06-05 19:53:00 +00:00
kleink
a32a338757
* Convert fsync vnode operator implementations and usage from the old
...
waitfor argument and MNT_WAIT/MNT_NOWAIT to flags and FSYNC_WAIT.
* In genfs_fsync(), honor the FSYNC_NODATA flag.
1998-06-05 19:52:59 +00:00
fvdl
8ccdc78ffc
Since the interlock has been unlocked, also clear LK_INTERLOCK from
...
a_flags in order to not confuse the layer that is called through
the following VCALL.
1998-05-18 16:47:37 +00:00
pk
097731676e
dead_lock() must unlock `v_interlock'.
1998-05-18 14:36:46 +00:00
fvdl
811dba68c1
procfs_readdir: in case of error, check if cookies actually have
...
been allocated before freeing them. From Wolfgang Solfrank.
1998-04-21 16:36:37 +00:00
veego
dd9d3a3015
Fix an error introduced in rev 1.39 where jason fixed kern/5271:
...
s/vp/ap->a_vp/ in line 715.
1998-04-11 08:51:12 +00:00
thorpej
13eebaf27e
Fix two problems in union_link():
...
(1) Fix a typo that caused a NULL pointer deref.
(2) union_copyup() locks the vnode, so unlock it before calling relookup().
PR #5272 , MINOURA, Makoto <minoura@kw.netlaputa.ne.jp>.
1998-04-10 01:43:54 +00:00
thorpej
181995d5f7
Fix possible stray pointer deref in union_access, per PR #5271 ,
...
submitted by MINOURA, Makoto <minoura@kw.netlaputa.ne.jp>.
1998-04-10 01:39:45 +00:00
marc
efbd14c45d
mounting a union causes VOP_WHITEOUT to be called on the upper root
...
vn, with a 0 component. If the upper fs was a unionfs,
union_whiteout() would deref compnent to get a struct proc, and panic.
struct proc was only being passed to FIXUP, which never used it. It
turns out this happened a lot. I ripped most of the unneeded code
out, and left in the few places that really did need the proc handle.
1998-03-17 08:36:57 +00:00
fvdl
f75b1046d4
Fix flags mess-up in vget. LK_EXCLUSIVE -> 0 (even indicated in the
...
comment, d'oh!)
1998-03-11 15:52:02 +00:00
mrg
c6dd5cbefd
standardise options header includes.
1998-03-08 14:04:14 +00:00
fvdl
7ba6a2daac
Remove extraneous files from Lite2 merge.
1998-03-01 13:45:28 +00:00
fvdl
e5bc90f40c
Merge with Lite2 + local changes
1998-03-01 02:20:01 +00:00
fvdl
e8d05f0741
Import 4.4BSD-Lite2
1998-03-01 02:12:49 +00:00
thorpej
62cb255d14
Place a pointer to an array of our vnodeopv_desc *'s in our vfsops
...
structure, for use by vfs_attach().
1998-02-18 07:26:57 +00:00
thorpej
b5bf2ed6d0
Place a pointer to an array of our vnodeopv_desc *'s in our vfsops
...
structure, for use by vfs_attach().
1998-02-18 07:05:47 +00:00
thorpej
d2924ae854
Prevent the session ID from disappearing if the session leader exits
...
(thus causing s_leader to become NULL) by storing the session ID separately
in the session structure. Export the session ID to userspace in the
eproc structure.
Submitted by Tom Proett <proett@nas.nasa.gov>.
1998-02-14 00:37:26 +00:00
thorpej
44ed0e5b79
Don't include option headers if building an LKM.
1998-02-12 20:38:45 +00:00
mrg
d90485202c
- add defopt's for UVM, UVMHIST and PMAP_NEW.
...
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
chs
f64abc7b4c
add flags arg to hashinit(), to pass to malloc().
1998-02-07 02:44:44 +00:00
mrg
1a8c7604f4
initial import of the new virtual memory system, UVM, into -current.
...
UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code. i provided some help
getting swap and paging working, and other bug fixes/ideas. chuck
silvers <chuq@chuq.com> also provided some other fixes.
this is the rest of the MI portion changes.
this will be KNF'd shortly. :-)
1998-02-05 07:59:28 +00:00
perry
1a80fd799d
RCSID Police.
1998-01-05 19:19:41 +00:00
fvdl
766487d941
Too many vnode ops were marked as bad op, but could happen in practice.
...
Change them to genfs_eopnotsupp.
1997-11-27 20:36:05 +00:00
mycroft
d24c4d31e1
Make the curproc link executable.
1997-10-30 09:14:07 +00:00
christos
4071635fa6
Add missing cast to dev_t
1997-10-16 23:57:51 +00:00
fvdl
ce56587f15
Bump last argument to VOP_READDIR to off_t (from u_long).
1997-10-10 02:01:05 +00:00
fvdl
ebffddb531
Bump last argument to VOP_READDIR to off_t (from u_long).
1997-10-10 02:01:02 +00:00
fvdl
ab940dcf06
Bump last argument to VOP_READDIR to off_t (from u_long).
1997-10-10 02:00:56 +00:00
mycroft
4383ea0b92
Make openstr[] const.
1997-10-09 13:12:01 +00:00
mycroft
64d080efe0
Make various standard wmesg strings const.
1997-10-09 12:59:50 +00:00
thorpej
c9efd0562e
Make the vfs ops and vnodeop_opv symbols match the name of the
...
file-system option used to configure the file system into the kernel.
1997-10-06 09:32:31 +00:00
leo
e0f973ee3b
Implement the kernel part of pr-1891. This allows for a more flexible sized
...
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 19:14:20 +00:00
enami
b4ae3706db
Use the same indentation as other two place, sys_ptrace() and
...
procfs_control().
Ok'ed by Jason R. Thorpe.
1997-09-13 04:25:35 +00:00
christos
4fb8bf7262
PR/4098: Alan Barrett: Fix diagnostic printf formatting.
1997-09-10 13:44:20 +00:00
thorpej
a79a3ca472
Fix a reversed argument which caused procfs_checkioperm() to always return
...
"OK". Add a few comments to avoid further confusion.
1997-08-27 08:52:51 +00:00
explorer
945beb8d63
Move procfs_checkioperm() from procvs_subr.c to procfs_mem.c, since _subr is
...
not included in a kernel without procfs, and it seems wrong to pull
all of procfs_subr.c in for just that one function. Perhaps this
should go into a new file instead?
1997-08-13 04:01:22 +00:00
thorpej
f9777e4a1c
Fix the procfs hole described on current-users, similar to a fix for
...
FreeBSD by Sean Eric Fagan, but a bit different. This makes the checks
in the same places as sef's FreeBSD patch, but does not hardcode the
"kmem" group into the kernel, and also does a check identical to the
(3) and (4) checks in the NetBSD ptrace(2):
(1) it's not owned by you, or is set-id on exec (unless
you're root), or
(2) it's init, which controls the security level of the
entire system, and the system was not compiled with
permanently insecure mode turned on.
1997-08-12 22:47:18 +00:00
drochner
aa015962db
Since there is a "%qx" printf format, don't truncate to long for
...
debug output.
1997-07-04 19:22:48 +00:00
mycroft
2ee8bc2b79
Don't allow writes to init's memory or registers while in secure mode.
1997-06-25 11:32:15 +00:00
thorpej
a149ed59e4
Eliminate use of dtom() in the handing of UNIX domain sockets. Add an
...
"unp_addrlen" member to the unpcb, and use it when copying the socket
name. This eliminates that last uses of dtom() in the system.
1997-06-24 19:12:53 +00:00
kleink
a1c6b08386
When reading from an empty FIFO no process has opened for writing, and
...
O_NONBLOCK is set, return 0.
1997-05-18 12:19:29 +00:00
pk
80bb266e0e
NULL => 0 (Arne Juul; PR#3629)
1997-05-17 20:31:15 +00:00
pk
420dea1e9a
Move `struct kern_target' definition into kernfs.h
1997-05-10 22:04:13 +00:00
mycroft
3be66b88fe
Update for lookup() changes.
1997-05-09 04:05:01 +00:00
mycroft
e3f99a9397
Pass the vnode type to vaccess(), and use it when checking VEXEC. Make sure
...
that the mode bits passed to vaccess() and returned by foo_getattr() contain
only permission bits.
1997-05-08 16:19:43 +00:00
mycroft
4d213ec5e7
Need stat.h.
1997-05-05 07:34:09 +00:00
mycroft
0f09f99ae1
Need stat.h.
1997-05-05 07:19:05 +00:00
mycroft
1e3c14a909
Eliminate bogus uses of V{READ,WRITE,EXEC}. Use S_I[RWX]{USR,GRP,OTH} where
...
appropriate.
1997-05-05 07:13:57 +00:00
mycroft
701f15db33
Reinstate P_FSTRACE, with different semantics:
...
* Never send a SIGCHLD to the parent if P_FSTRACE is set.
* Do not permit mixing ptrace(2) and procfs; only permit using the one that
was attached.
1997-04-28 04:49:27 +00:00
mycroft
8a33a13c65
Minor code cleanup.
1997-04-28 03:49:57 +00:00
mycroft
217c4e14ea
Fix several deficiencies, as compared to ptrace(2):
...
* Did not check for P_SUGID on ATTACH.
* Did not check for tracing of init on ATTACH.
* Did not turn off single-step mode on RUN or DETACH.
* Might have screwed up reparenting in some cases.
* Allowed anyone to detach the process.
1997-04-28 02:28:39 +00:00
fvdl
aadf9a1d0f
fdesc_seek -> genfs_seek, not genfs_badop
1997-04-16 22:43:41 +00:00
kleink
9c16cd8a46
Implement a POSIX compliant genfs VOP_SEEK() and use it in the appropriate
...
places; by Chris G. Demetriou and myself.
1997-04-11 21:52:00 +00:00
cgd
89a4d9a733
don't try to use __builtin_return_address() on the Alpha. (It's never
...
worked as far as I can tell, and apparently crashes the kernel when
invoked here.) From Ross Harvey, PR#3471.
1997-04-10 05:35:08 +00:00
kleink
8c04785710
Remove superfluous (uio_resid == 0) check.
1997-04-02 17:14:32 +00:00
kleink
c1779f82c3
added advisory record locking support
1997-04-02 17:09:47 +00:00
mikel
bd1ca0f680
this is umapfs, not lofs
1997-03-11 03:55:04 +00:00
mikel
812eb1fae4
this is nullfs, not lofs
1997-03-11 03:54:29 +00:00
mikel
be4f5a32c1
use the proper entry count; from Yasufumi Itoh in PR kern/3175.
1997-02-20 05:04:05 +00:00
cgd
90688fce27
Change the second and third args to struct vfsops' (*vfs_mount)() to
...
'const char *', and 'void *', respectively. The second arg is taken directly
from user arguments, and is const there, so must be const in the prototypes
and functions. The third arg is also taken directly from user arguments.
It doesn't have to be changed, but since it's cleaner to keep the type
the same as the user arg's type, and I'm already making the 'const char *'
change...
1996-12-22 10:10:12 +00:00
pk
3127b0c5e2
Fix short malloc & memory leak in union_relookup() (per Naofumi Honda; PR#3000).
1996-12-07 11:02:47 +00:00
cgd
a67c0b16b8
define path name string variables that we should not (and, thankfully, do
...
not) modify as 'const char *' rather 'char *'.
1996-10-25 21:57:58 +00:00
cgd
eaa37ec87a
remove bogus cast of second arg to bcmp(). (nm_name is a const char*,
...
and was being unnecessarily cast to 'char *'; -Wcast-qual.)
1996-10-25 21:52:02 +00:00
christos
92a808f167
backout previous kprintf changes
1996-10-13 02:21:25 +00:00
christos
60d201973e
printf -> kprintf, sprintf -> ksprintf
1996-10-10 22:46:11 +00:00
mycroft
605403ce1e
portal_fsync -> genfs_nullop
1996-09-25 03:01:41 +00:00
mycroft
2bc736661a
Implement poll(2).
1996-09-07 12:40:22 +00:00
thorpej
2c02b8ec56
Remove some unused variables.
1996-09-05 09:26:14 +00:00
mycroft
c52352c819
Add a set of generic file system operations that most file systems use.
...
Also, fix some time stamp bogosities.
1996-09-01 23:47:48 +00:00
mrg
2a0f025a41
use VATTR_NULL macro.
1996-06-14 09:27:23 +00:00
mycroft
95f26583aa
Add a missing PHOLD()/PRELE() pair.
1996-06-11 01:49:38 +00:00
cgd
f7f3f4299d
print pointers with %p, rather than by printing with %x and casting to
...
(unsigned int).
1996-05-23 23:34:14 +00:00
mycroft
ea64155398
Mirror changes in uipc_usrreq.c.
1996-05-23 18:45:14 +00:00
gwr
316f45753f
Allow the DIAGNOSTIC to compile with old versions of gcc.
1996-05-17 20:53:11 +00:00
mrg
d0f2ced7d2
use %p not %x for pointers
1996-05-13 07:13:23 +00:00
jtk
6ddae4d140
Implement proper `..' locking in lookup code to avoid many potential
...
deadlocks.
copy up properly when adding a link to lower-layer only file.
(I believe there are still more deadlocks remaining.)
1996-05-10 22:57:49 +00:00
jtk
c9c8daaf7c
Add locking code to avoid deadlocks on vnode reclaim, which means the
...
addition of null_lookup, null_lock, null_unlock, null_islocked.
1996-05-10 22:50:45 +00:00
christos
4ef330b934
remove include of <sys/cpu.h>
1996-04-22 01:38:12 +00:00