fvdl
fe39281ea4
Fixes to the softdep code from Ethan Solomita <ethan@geocast.com>.
...
* Fix buffer ordering when it has dependencies.
* Alleviate memory problems.
* Deal with some recursive vnode locks (sigh).
* Fix other bugs.
2000-02-14 22:00:21 +00:00
bouyer
3c680c00ab
Handle pre-FS_42POSTBLFMT. I now can mount an Ultrix file system on my
...
sparc without panic.
2000-01-18 18:41:29 +00:00
drochner
800b976584
Call ffs_oldfscompat() before all the consistency checks, to avoid the
...
use of uninitialized data in the checks if the filesystem is an old one.
1999-12-10 14:36:04 +00:00
fvdl
0b1963121a
Add Kirk McKusick's soft updates code to the trunk. Not enabled by
...
default, as the copyright on the main file (ffs_softdep.c) is such
that is has been put into gnusrc. options SOFTDEP will pull this
in. This code also contains the trickle syncer.
Bump version number to 1.4O
1999-11-15 18:49:07 +00:00
enami
fee96e1746
Check if the type of device node isn't VBAD before touching v_specinfo. If
...
the device vnode is revoked, the field is NULL and touching it causes null
pointer derefercence.
1999-10-20 14:32:09 +00:00
wrstuden
e682a080e9
In spec_close(), if we're not doing a non-blocking close and VXLOCK is
...
not set, unlock the vnode before calling the device's close routine and
relock it after it returns. tty close routines will sleep waiting for
buffers to drain, which won't happen often times as the other side needs
to grab the vnode lock first.
Make all unmount routines lock the device vnode before calling VOP_CLOSE().
1999-10-16 23:53:26 +00:00
thorpej
29df848753
Need <string.h> for memcpy(3) prototype if building from userland.
1999-09-14 04:50:54 +00:00
wrstuden
3bf14d81e9
Add support for fcntl(2) to generate VOP_FCNTL calls. Any fcntl
...
call with F_FSCTL set and F_SETFL calls generate calls to a new
fileop fo_fcntl. Add genfs_fcntl() and soo_fcntl() which return 0
for F_SETFL and EOPNOTSUPP otherwise. Have all leaf filesystems
use genfs_fcntl().
Reviewed by: thorpej
Tested by: wrstuden
1999-08-03 20:19:16 +00:00
drochner
12a6593f79
clean up inclusion of "opt_ffs.h" and use of "FFS_EI" a bit
1999-08-03 19:22:43 +00:00
wrstuden
976aedb7ac
Adjust mountroot routines to vrele rootvp in case of mount error. Closes
...
PR 7977 by Neil Carson, <neil@brini.com>.
1999-07-17 01:08:28 +00:00
wrstuden
379a26972f
Modify file systems to deal with struct lock in struct vnode. All leaf
...
fs's other than nfs use genfs_lock() for locking.
Modify lookup routines to set PDIRUNLOCK when they unlock the parrent.
1999-07-08 01:05:58 +00:00
mrg
d2397ac5f7
completely remove Mach VM support. all that is left is the all the
...
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
mycroft
b174019ccc
Pass null pointers to VOP_UPDATE rather than having all the callers fetch the
...
current time themselves.
1999-03-05 21:09:48 +00:00
mycroft
86ed73efb4
Permit the access and modify time pointers passed to VOP_UPDATE to be null,
...
meaning the current time.
1999-03-05 20:47:06 +00:00
bouyer
00d7241e81
Don't check fs_bsize before the superblock has been swapped if needed.
...
Check value of sbsize before allocating memory with this value.
1999-03-05 12:02:18 +00:00
wrstuden
862a56e88b
Modify vfsops to seperate vfs_fhtovp() into two routines. vfs_fhtovp() now
...
only handles the file handle to vnode conversion, and a new call,
vfs_checkexp(), performs the export verification.
1999-02-26 23:44:43 +00:00
bouyer
22d556f6cf
Make sure a buffer optained from bread() is always bresle()'d in case of
...
error. Closes PR kern/1448 from Wolfgang Solfrank.
1999-02-10 13:14:08 +00:00
bouyer
cdbe530495
No need to #include malloc.h here.
1998-12-04 11:02:30 +00:00
bouyer
3efc699962
Sanity check a few values in the superblock, to avoid mallocing huge
...
memory area if we try to mount a corrupted filesystem. Fixes kern/3933.
1998-12-04 11:00:40 +00:00
thorpej
1fcae7f1be
defopt FFS_EI
1998-11-12 19:51:10 +00:00
mycroft
1a5b9c6c30
Do not corrupt file flags when file system is full!
1998-10-27 21:32:58 +00:00
thorpej
f7948d05a1
Use DINODE_SIZE rather than pointer arithmetic.
1998-10-23 00:31:28 +00:00
christos
e62c8fd824
Missed a conditional for FFS_EI; appears when we compile without -Ox
1998-10-04 18:07:57 +00:00
thorpej
60cfe320cc
Use the pool allocator and the "nointr" pool page allocator for FFS inodes.
...
XXX MFS also comes in here for inodes, and used a different malloc type,
but the structure is the same, so we just use the FFS inode pool.
1998-09-01 03:11:08 +00:00
thorpej
39f683419f
Back out part of last change (uninitialized work-around).
1998-08-18 18:15:41 +00:00
thorpej
6fc90a1a4d
Add some braces to make egcs happy (ambiguous else warning). Also,
...
deal with bogus uninitialized warning (__noreturn__ related)
1998-08-18 06:47:53 +00:00
perry
27ca6798df
bzero->memset, bcopy->memcpy, bcmp->memcmp
1998-08-09 20:15:38 +00:00
drochner
2dcc522f1d
The fragtbl[], inside[] and around[] variables are needed by "fsck",
...
so we can't put them inside "#ifdef _KERNEL".
Put declarations inside .c files where needed to preserve namespace.
1998-07-28 17:30:01 +00:00
mycroft
829367f279
Omit some externs if not _KERNEL.
1998-07-28 04:17:51 +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
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
kleink
2d869bbacf
KNF, mostly of FFS_EI changes.
1998-06-13 16:26:22 +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
74ce7ac984
KNF: only include one of <sys/{param,types}.h>, not both.
1998-06-10 15:57:39 +00:00
scottr
7171cca4b8
Protect various config(8)-generated files from inclusion while
...
building LKMs. Fixes PR 5557.
1998-06-09 07:46:31 +00:00
ragge
1a66918fc0
Wrong include file order; caused compile error on vax.
1998-06-08 17:59:08 +00:00
scottr
d48f258f90
Use the newly-defined opt_quota.h.
1998-06-08 04:27:50 +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
ross
ac5774c288
Fix a 64-bit pointer/int warning.
1998-03-19 03:42:35 +00:00
bouyer
091dafd39f
Add support for reading/writing FFS in non-native byte order, conditioned
...
to "options FFS_EI". The superblock and inodes (without blk addr) are
byteswapped at disk read/write time, other metadatas are byteswapped
when used (as they are acceeded directly in the buffer cache).
This required the addition of a "um_flags" field to struct ufsmount.
ffs_bswap.c contains superblock and inode byteswap routines also used
by userland utilities.
1998-03-18 15:57:26 +00:00
fvdl
e5bc90f40c
Merge with Lite2 + local changes
1998-03-01 02:20:01 +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
mrg
d90485202c
- add defopt's for UVM, UVMHIST and PMAP_NEW.
...
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08: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
mjacob
949982f2a4
In calculating the f_bavail field, don't take 32 bit quantities and
...
multiply them by 90 (to be divided by 100) and expect them to be sane
for very large values (I was getting a negative 'avail' count).
1997-10-16 18:29:11 +00:00
fvdl
e351013e56
Fix messed up RCS Id.
1997-07-22 14:36:31 +00:00
fvdl
5d96e77ef6
Get locking around inode hashing right.
1997-07-07 23:37:36 +00:00
fvdl
acffafa288
Oops, I messed up the lock. Reverting it until I have time to fix it,
...
to avoid people getting trouble after the supscan hits.
1997-07-07 11:47:06 +00:00
fvdl
b362aa16be
Put lock around inode hashing, because getnewvnode or MALLOC might block,
...
creating race conditions.
1997-07-06 12:43:43 +00:00