summaryrefslogtreecommitdiff
path: root/sys/ufs/ffs
AgeCommit message (Collapse)Author
2001-05-15Correct memory type for free(). (art@ ok)Hakan Olsson
2001-04-22Free fs->fs_contigdirs array only on successful rw->ro update. ThisGrigoriy Orlov
fixes "duplicated free" panic. Update file system from read-write to read-only freed memory but may fail later if file system busy. deraadt@ ok.
2001-04-19Cleanup dirpref and synhronize superblock with freebsd.Grigoriy Orlov
From FreeBSD with little changes. art@ ok.
2001-04-15Avoid panic on unmounting read-only fs, which previously use softupdates.Grigoriy Orlov
This problem occur only on kernels without soft-updates support. art@ ok.
2001-04-13Fix overflow in superblock. From FreeBSD.Grigoriy Orlov
FreeBSD's log: > The ffs superblock includes a 128-byte region for use by temporary > in-core pointers to summary information. An array in this region > (fs_csp) could overflow on filesystems with a very large number of > cylinder groups (~16000 on i386 with 8k blocks). When this happens, > other fields in the superblock get corrupted, and fsck refuses to > check the filesystem. > > Solve this problem by replacing the fs_csp array in 'struct fs' > with a single pointer, and add padding to keep the length of the > 128-byte region fixed. Update the kernel and userland utilities > to use just this single pointer. > > With this change, the kernel no longer makes use of the superblock > fields 'fs_csshift' and 'fs_csmask'. Add a comment to newfs/mkfs.c > to indicate that these fields must be calculated for compatibility > with older kernels. art@ ok.
2001-04-12Allow kernels with just MFS and no FFS. Fixes PR#323.Constantine Sapuntzakis
2001-04-07Reduce the count of fs_sparecon's by 1 for 64 bit architecturesTodd C. Miller
since fs_contigdirs takes 64 bits on those platforms. This fixes a problem on alpha where "struct fs" grew. A better solution is to make fs_csp into a pointer and use the remainder for pointer spares and allocate fs_contigdirs from those. This will happen some time post-2.9.
2001-04-06Replace FFS directory preference algorithm(dirpref) by new one.Grigoriy Orlov
It allocates directory inode in the same cylinder group as a parent directory in. This speedup file/directory intensive operations on a big file systems in times. Don't forget to recompile fsck_ffs with updated fs.h or you will get "VALUES IN SUPER BLOCK DISAGREE WITH THOSE IN FIRST ALTERNATE" at the next boot. In any case you can ignore this error safely. Requested by deraadt@
2001-04-06Change softdep_count_dependencies interface so that it may be calledGrigoriy Orlov
from interrupt at splbio. costa@ ok.
2001-04-04Add "softdep" option to mount. Update from rw/async to softdepGrigoriy Orlov
and otherwise are disabled. art@ ok.
2001-03-27clean more dangling spacesArtur Grabowski
2001-03-22Sigh. PR_WAITOK, not M_WAITOKArtur Grabowski
2001-03-22Change the ffs inode allocation from using malloc to pool.Artur Grabowski
Saves approx. 256k memory on a GENERIC i386 and moves 670k out of kmem_map.
2001-03-20dangling space in commentArtur Grabowski
2001-03-20dangling space in commentArtur Grabowski
2001-03-20cleaningArtur Grabowski
2001-03-20cleanupArtur Grabowski
2001-03-20Even more cleanup. This file was a mess.Artur Grabowski
2001-03-20Make fsync a bit more reliable; From Free/NetBSD. art@ ok.Grigoriy Orlov
2001-03-20indentArtur Grabowski
2001-03-20Even more.Artur Grabowski
2001-03-2014 more NULL used as integer values.Artur Grabowski
2001-03-20NULL is not an u_longArtur Grabowski
2001-03-20NULL is not a daddr_tArtur Grabowski
2001-03-15cosmetic cleanupArtur Grabowski
2001-03-14KNFGrigoriy Orlov
2001-03-13correct softdep integration error, add missed lock;Grigoriy Orlov
2001-03-09fix comment,Grigoriy Orlov
convert spaces -> tabs
2001-03-08Be more careful about who we treat as the syncer.Artur Grabowski
2001-03-04Better diagnostics for locking errors. Fix panic before panic inConstantine Sapuntzakis
acquire_lock_interlocked. Thanks to Grigoriy Orlov for triggering this one.
2001-03-04Fix use of timeouts. Thanks to Grigoriy Orlov (gluk)Constantine Sapuntzakis
2001-03-01port kqueue changes from freebsd, plus all required openbsd glue.Niels Provos
okay deraadt@, millert@ from jlemon@freebsd.org: extend kqueue down to the device layer, backwards compatible approach suggested by peter@freebsd.org
2001-02-27Add wakeup_n and wakeup_one. wakeup_n will wakeup up to n sleeping processesConstantine Sapuntzakis
2001-02-26Move #define STATICConstantine Sapuntzakis
Get rid of unnecessary comment to self
2001-02-26Fix a couple panics caused by not freeing locks at the right times.Constantine Sapuntzakis
Thanks gluk for the patch Free locks before calling panic
2001-02-24Cleanup of vnode interface continues. Get rid of VHOLD/HOLDRELE.Constantine Sapuntzakis
Change VM/UVM to use buf_replacevnode to change the vnode associated with a buffer. Addition v_bioflag for flags written in interrupt handlers (and read at splbio, though not strictly necessary) Add vwaitforio and use it instead of a while loop of v_numoutput. Fix race conditions when manipulation vnode free list
2001-02-23Change the B_DELWRI flag using buf_dirty and buf_undirty instead ofConstantine Sapuntzakis
manually twiddling it. This allows the buffer cache to more easily keep track of dirty buffers and decide when it is appropriate to speed up the syncer. Insipired by FreeBSD. Look over by art@
2001-02-23Remove the clustering fields from the vnodes and place them in theConstantine Sapuntzakis
file system inode instead
2001-02-23Convert the sleep in ffs_fsync to a tsleep so we can get a good wmesg.Artur Grabowski
2001-02-21Latest soft updates from FreeBSD/Kirk McKusickConstantine Sapuntzakis
Snapshot-related code has been commented out.
2001-02-20use void * consistently in vfs_mount and sys_mount. ok @artassar
2001-02-10$OpenBSD$Federico G. Schwindt
2000-06-26Instead of using an ugly hack with timeouts to wake up the processArtur Grabowski
waiting for resources, use the built-in facilities in tsleep.
2000-06-23remove obsolete vtrace guts; art@Michael Shalayeff
2000-04-20Fix a problem that occurs when the filesystem fills up.Artur Grabowski
When the filesystem is able to allocate an indirect block but not the data block, it incorrectly unwinds the indirect block leaving a dangling pointer to a free block. This is said to fix the "freeing free block" panics people were seeing. From FreeBSD.
2000-03-04Cut the number of dependencies to reduce problems on low-memory machines.Artur Grabowski
2000-02-07update to use new checkexp vfs operationassar
2000-01-14Try to allocate the first indirect block in the same cg as the inode.Artur Grabowski
This improves read speed for files of moderate size (100-500k). From FreeBSD (mckusick@FreeBSD.ORG).
2000-01-14rename DEBUGLOCKS to LOCKDEBUG to be consistent with the rest of the kernelArtur Grabowski
1999-12-06When truncating directories by less than a block we shouldn't zero theArtur Grabowski
part of the block that we're deallocating. From NetBSD.