summaryrefslogtreecommitdiffstats
path: root/sys/fs
Commit message (Collapse)AuthorAgeFilesLines
* Bump local version number to 1.3.4.bp1999-12-121-1/+1
|
* Lock reporting and assertion changes.eivind1999-12-116-14/+17
| | | | | | | | | | | | | | | * lockstatus() and VOP_ISLOCKED() gets a new process argument and a new return value: LK_EXCLOTHER, when the lock is held exclusively by another process. * The ASSERT_VOP_(UN)LOCKED family is extended to use what this gives them * Extend the vnode_if.src format to allow more exact specification than locked/unlocked. This commit should not do any semantic changes unless you are using DEBUG_VFS_LOCKS. Discussed with: grog, mch, peter, phk Reviewed by: peter
* Don't simulate a pseudo address-space beyond VM_MAXUSER_ADDRESS thatpeter1999-12-111-40/+0
| | | | | | | | | | | maps onto the upages. We used to use this extensively, particularly for ps and gdb. Both of these have been "fixed". ps gets the p_stats via eproc along with all the other stats, and gdb uses the regs, fpregs etc files. Once apon a time the UPAGES were mapped here, but that changed back in January '96. This essentially kills my revisions 1.16 and 1.17. The 2-page "hole" above the stack can be reclaimed now.
* First version of HPFS stuff.semenu1999-12-0910-0/+4993
|
* Remove unused #includes.phk1999-12-089-13/+0
| | | | Obtained from: http://bogon.freebsd.dk/include
* Commit the kernel part of our DVD support. Nothing much to say really,sos1999-12-071-0/+30
| | | | its just a number of new ioctl's, the rest is done in userland.
* Merged NetBSD version, as they have done improvements:semenu1999-12-0312-1014/+1111
| | | | | | | | | | | 1. ntfs_read*attr*() functions now accept uio structure to eliminate one data copying. 2. found and removed deadlock caused by 6 concurent ls -lR. 3. started implementation of nromal Unicode<->unix recodeing. Obtained from: NetBSD
* Collect read and write counts for filesystems. This new codemckusick1999-12-011-0/+21
| | | | | | | | | | | | | | drops the counting in bwrite and puts it all in spec_strategy. I did some tests and verified that the counts collected for writes in spec_strategy is identical to the counts that we previously collected in bwrite. We now also get read counts (async reads come from requests for read-ahead blocks). Note that you need to compile a new version of mount to get the read counts printed out. The old mount binary is completely compatible, the only reason to install a new mount is to get the read counts printed. Submitted by: Craig A Soules <soules+@andrew.cmu.edu> Reviewed by: Kirk McKusick <mckusick@mckusick.com>
* Remove abuse of struct nameidata.bp1999-11-271-7/+4
| | | | Pointed by: Eivind Eklund
* Add a sysctl to control if argv is disclosed to the world:phk1999-11-261-1/+1
| | | | | | | kern.ps_argsopen It defaults to 1 which means that all users can see all argvs in ps(1). Reviewed by: Warner
* Introduce the new functionphk1999-11-217-20/+7
| | | | | | | | | | | | | | p_trespass(struct proc *p1, struct proc *p2) which returns zero or an errno depending on the legality of p1 trespassing on p2. Replace kern_sig.c:CANSIGNAL() with call to p_trespass() and one extra signal related check. Replace procfs.h:CHECKIO() macros with calls to p_trespass(). Only show command lines to process which can trespass on the target process.
* Remove race condition under SMP.bp1999-11-211-2/+8
| | | | Noted by: Denis Kalinin <denis@mail.rbc.ru>
* s/p_cred->pc_ucred/p_ucred/gphk1999-11-213-4/+4
|
* A process should be able to examine itself.sef1999-11-201-2/+3
|
* struct mountlist and struct mount.mnt_list have no business beingphk1999-11-202-5/+4
| | | | | | | | | | a CIRCLEQ. Change them to TAILQ_HEAD and TAILQ_ENTRY respectively. This removes ugly mp != (void*)&mountlist comparisons. Requested by: phk Submitted by: Jake Burkholder jake@checker.org PR: 14967
* Fix an unused variable warning.peter1999-11-181-1/+0
|
* Fix a warning.peter1999-11-181-0/+3
|
* Make proc/*/cmdline use the cached argv if available.phk1999-11-171-21/+31
| | | | | Submitted by: Paul Saab <paul@mu.org> Reviewed by: phk
* The function `procfs_getattr()' in procfs doesn't set the value ofphk1999-11-171-0/+2
| | | | | | | | vap->va_fsid, so we cannot get valid information about procfs. Submitted by: SAWADA Mizuki miz@pa.aix.or.jp Reviewed by: phk PR: 1654
* Remove WILLRELE from VOP_SYMLINKeivind1999-11-132-12/+5
| | | | | | Note: Previous commit to these files (except coda_vnops and devfs_vnops) that claimed to remove WILLRELE from VOP_RENAME actually removed it from VOP_MKNOD.
* Remove WILLRELE from VOP_RENAMEeivind1999-11-121-2/+1
|
* Next step in the device cleanup process.phk1999-11-094-324/+88
| | | | | | | | Correctly lock vnodes when calling VOP_OPEN() from filesystem mount code. Unify spec_open() for bdev and cdev cases. Remove the disabled bdev specific read/write code.
* Passing "0" or "FALSE" as the fourth argument to vm_fault is wrong. Italc1999-11-091-1/+1
| | | | should be "VM_FAULT_NORMAL".
* remove a confusing and stale comment.phk1999-11-081-3/+0
|
* Oops, a bit too hasty there.phk1999-11-081-3/+0
|
* Various cleanups.phk1999-11-081-27/+14
|
* Explain why Warner is right, and I am wrong, in the removing of thesef1999-11-081-0/+14
| | | | | | | | | | | file object. Also explain some possible directions to re-implement it -- I'm not sure it should be, given the minimal application use. (Other than having the debugger automatically access the symbols for a process, the main use I'd found was with some minor accounting ability, but _that_ depends on it being in the filesystem space; an ioctl access method would be useless in that case.) This is a code-less change; only a comment has been added.
* Update for fileops.fo_stat() addition. Note, this would panic ifpeter1999-11-081-2/+3
| | | | it saw a DTYPE_PIPE. This isn't quite right but should stop a crash.
* Use vop_panic() instead of spec_badop().phk1999-11-071-23/+11
|
* Remove the iskmemdev() function. Make it the responsibility of the mem.cphk1999-11-071-3/+1
| | | | drivers to enforce the securelevel checks.
* Make an incredibly stupid change because Warner threatened to do it andsef1999-11-071-1/+0
| | | | | | | | | | | | | | | | | | | continue doing it despite objections by me (the principal author). Note that this doesn't fix the real problem -- the real problem is generally bad setup by ignorant users, and education is the right way to fix it. So while this doesn't actually solve the prolem mentioned in the complaint (since it's still possible to do it via other methods, although they mostly involve a bit more complicity), and there are better methods to do this, nobody was willing or able to provide me with a real world example that couldn't be worked around using the existing permissions and group mechanism. And therefore, security by removing features is the method of the day. I only had three applications that used it, in any event. One of them would have made debugging easier, but I still haven't finished it, and won't now, so it doesn't really matter.
* Change structure field named 'toupper' to 'to_upper' to avoid conflictarchie1999-11-021-5/+5
| | | | with the macro of the same name. Same thing for 'tolower'.
* Newline-terminate the complaint message about not being able to findmsmith1999-11-011-1/+1
| | | | the root vnode pointer.
* Remove specfs::vop_lookup() There is no code path which can call it.phk1999-11-011-18/+0
|
* Bump version number to sync with ncplib 1.3.3bp1999-10-311-1/+1
|
* useracc() the prequel:phk1999-10-298-8/+0
| | | | | | | | | | | Merge the contents (less some trivial bordering the silly comments) of <vm/vm_prot.h> and <vm/vm_inherit.h> into <vm/vm.h>. This puts the #defines for the vm_inherit_t and vm_prot_t types next to their typedefs. This paves the road for the commit to follow shortly: change useracc() to use VM_PROT_{READ|WRITE} rather than B_{READ|WRITE} as argument.
* A tentative agreement has been reached in regards to a proceduredillon1999-10-201-7/+0
| | | | | | | | | | | | | | | | | | | to remove 'b'lock devices. The agreement is, essentially, that block devices will be collapsed into character devices as a first step (though I don't particularly agree), and raw device names 'rxxx' will become simply 'xxx' in devfs in the second step (i.e. no 'rxxx' names will exist). The renaming will not effect the original /dev and the expectation is that devfs will eventually (but not immediately) become the standard way to access devices in the system. If it is determined that a reimplementation of block device access characteristics is beneficial, a number of alternatives will be possible that do not involve resurrecting the 'b'lock device class. For example, an ioctl() that might be made on an open character device descriptor or a generic buffered overlay device. This commit removes the blockdev disablement sysctl which does not apply to the solution that was reached.
* Change the default for the vfs.bdev_buffered sysctl to zero.phk1999-10-181-1/+1
| | | | | | | | | | | | | | | This means that access to block devices nodes will act the same as char device nodes for disk-like devices. If you encounter problems after this, where programs accessing disks directly fail to operate, please use the following command to revert to previous behaviour: sysctl -w vfs.bdev_buffered=1 And verify that this was indeed the cause of your trouble. See the mail-archives of the arch@FreeBSD.org list for background.
* Under some condition vnode can reference itself.bp1999-10-142-1/+5
|
* Isolate old constant NCP_VOLNAME_LEN.bp1999-10-141-1/+3
|
* Remove unnessary includes.bp1999-10-126-32/+0
|
* remove unused #includesphk1999-10-111-1/+0
|
* Add a couple of strategic KASSERTsphk1999-10-081-0/+6
|
* Add back sysctl vfs.enable_userblk_iophk1999-10-081-0/+7
|
* Put back cn_namelen initialization. Removed by phk in rev 1.2.bp1999-10-071-0/+1
|
* Warn once per driver about dev_t's not registered with make_dev().phk1999-10-041-0/+9
|
* Move the buffered read/write code out of spec_{read|write} and intophk1999-10-041-181/+210
| | | | | | | | | | | two new functions spec_buf{read|write}. Add sysctl vfs.bdev_buffered which defaults to 1 == true. This sysctl can be used to experimentally turn buffered behaviour for bdevs off. I should not be changed while any blockdevices are open. Remove the misplaced sysctl vfs.enable_userblk_io. No other changes in behaviour.
* Before we start to mess with the VFS name-cache clean things up a little bit:phk1999-10-033-12/+1
| | | | Isolate the namecache in its own file, and give it a dedicated malloc type.
* Import kernel part of ncplib: netncp and nwfsbp1999-10-0210-0/+3730
| | | | | Reviewed by: msmith, peter Obtained from: ncplib
* Remove the D_NOCLUSTER[RW] options which were added because vn hadphk1999-09-301-8/+0
| | | | | problems. Now that Matt has fixed vn, this can go. The vn driver should have used d_maxio (now si_iosize_max) anyway.
OpenPOWER on IntegriCloud