summaryrefslogtreecommitdiff
path: root/sys/ufs
AgeCommit message (Collapse)Author
2008-05-03Introduce vop_generic_bmap(); use it where applicable.Thordur I. Bjornsson
one thing of note, fifofs changes in that its bmap now sets the runp too 0, but that was an oversight in the old code. ok art@
2008-04-24remove useless defines for the vnode operations, and insteadThordur I. Bjornsson
init the op array functions with whatever the define was set too. ok dlg@,blambert@
2008-04-10the ffs code is a bit noisy when it runs out of inodes/space etc;Thordur I. Bjornsson
so ratelimit the messages to about once every 2secs. ok dlg@ (who also pointed out me missing 'static' in the timeval decls.) "sounds good to me" deraadt@
2008-03-16Widen some struct statfs fields to support large filesystem stataOtto Moerbeek
and add some to be able to support statvfs(2). Do the compat dance to provide backward compatibility. ok thib@ miod@
2008-01-22with a lot of fragments per cylinder group and lots of cylinderOtto Moerbeek
groups, it is possible that fpg * ncg overflows an int. Problem seen by jared rr spiegel while playing with very small fragments on a large disk. ok krw@ millert@
2008-01-17Notify us of NOTE_LINK on mkdir(2) as well.Federico G. Schwindt
ok thib and miod.
2008-01-05Make the ffs code 64-bit disk block number clean. Based on a diffOtto Moerbeek
from Pedro Martelleto. Two things remain: the on-disk quota structures are still 32-bit and statfs does not do 64-bit numbers yet. ok deraadt@
2007-12-16fix remaining cases of potential concurrent mfs_buflist access;Otto Moerbeek
ok deraadt@ millert@
2007-12-06solve the biggest problem with concurrent buflist access; makes mfs onOtto Moerbeek
SMP machines reliable. few corner cases remain, which will be dealt with later; ok deraadt@ millert@
2007-12-04fix out of partition/memory bounds access when accessing blocks at the tailOtto Moerbeek
end; avoids bad address errors; original diff by me with cleanup by millert@; ok millert@
2007-11-28g/c mfs_mountroot() and mfs_initminiroot(). We don't support root onTodd C. Miller
mfs. OK deraadt@
2007-11-27typos; ok jmc@Martynas Venckus
sys/dev/pci/pciide.c from naddy@
2007-11-24Try a forced unmount if mount_mfs is killed with SIGKILL.Marco Pfatschbacher
OK tedu@
2007-11-09Code to read in the cylinder groups is duplicated in a few spots,Thordur I. Bjornsson
factor it into a new function, ffs_cgread(); and use that. From mickey; OK art@, toby@
2007-10-29MALLOC/FREE -> malloc/freeCharles Longeau
ok krw@
2007-10-09MALLOC+memset(,0,) -> malloc+M_ZERO. Don't forget FREE->free this time.Kenneth R Westerback
2007-10-08Initialize dh_blkfree with zero's.Kenneth R Westerback
ok beck@
2007-10-06Simpliest memset(,0,) -> M_ZERO changes. One (caddr *) cast removal,Kenneth R Westerback
otherwise just adding M_ZERO to malloc() and removing the immediately adjacent memset(,0,).
2007-10-05MALLOC/FREE -> malloc/free + M_ZERO.Thordur I. Bjornsson
As a side effect, this probably fixes PR5596, if the allocation of dh_hash succeeds and the dh_blkfree fails, we jump into the fail case, but we haven't initialized dh_hash properly, that is filling the array with memory from the dirhash pool, but the != NULL check holds, since the memory hasn't been zeroed and so we start pool_put()'ing, causing the crash in PR5596. PR5596 debugging by pedro. ok art@, krw@
2007-10-01Last of the really easy bzero() -> M_ZERO. Use 'p = malloc(sizeof(*p) ...'Kenneth R Westerback
where obvious.
2007-09-23Move notatime check from ffs_update() to ffs_read() and ufs_setattr().Todd C. Miller
Fixes a couple cases where atime was being updated even when the filesystem was mounted with the noatime option. Adapted from similar placement in FreeBSD and NetBSD. Tested by myself and naddy@
2007-09-10When selecting cylinder groups as candidates for new directory creationThordur I. Bjornsson
make sure that theres a minimum amount of free blocks in that cylinder group by tweaking the minbfree calculation. Without this, cylinder groups with no free blocks could be chosen which resaults in expensive searches for free blocks each time a new file is created in the directory. Tweak the calculation of minifree (minimum free inodes) in the same way. Also decrease the maxcontigdirs as the file system fills up to lessen the chance of directory clusters overflowing the available space in the cylinder group. From FreeBSD (Rev 1.116 of sys/ufs/ffs/ffs_alloc.c); ok miod@
2007-09-10Lock the vnode in ffs_unmount() before passing it too vinvalbuf()Thordur I. Bjornsson
and VOP_CLOSE() since both of them expected it too be locked. ok art@
2007-09-07Use M_ZERO in a few more places to shave bytes from the kernel.Artur Grabowski
eyeballed and ok dlg@
2007-08-04When we're writing out the summary information and fail on some blockArtur Grabowski
we'll just randomly brelse a random block that might or might no have been the block that failed. Which wouldn't be necessary anyway since bwrite releases the block wether the write succeeded or not. And if someone won the race for that block (perfectly possible since we're sleeping in this function) we'll just release a live block under his feet. beck@ ok
2007-08-03Increase dq_cnt in struct dquot from 16 to 32bits. OK deraadt@Todd C. Miller
2007-07-23Since __sparc__ gets defined on sparc64 too, add a !defined (__sparc64__)Mark Kettenis
to the condition that protects CPU_ISSUN4OR4C. While we currently define that macro on sparc64 too, we won't in the near future. ok miod@
2007-07-11Bring back the change in rev 1.70, it is safe now:Todd C. Miller
Propagate the wait flag from fsync down to softdep_fsync_mountdev() and do not perform synchronous sync there is no wait requested by skipping the drain_output() call. This fixes a problem where update kthread would sleep forever on some vnode since work is created faster than it can be flushed. OK deraadt@
2007-06-22Update ffs[1/2] time last written for cg's inThordur I. Bjornsson
clusteralloc(); From mickey; ok pedro@
2007-06-22declare "uid" as uid_t instead of u_int, and fix format string accordinglyJasper Lievisse Adriaanse
ok pedro@ thib@
2007-06-20remove an XXX comment;Thordur I. Bjornsson
Basically the reason why we dont do VOP_ABORTOP()'s in NFS is that sys_rename() actually handles the garbage collection of the pathname buffers, the calls in ufs are actually fluff too, but will be delt with later. ok pedro@
2007-06-17ansify/de-register.Jasper Lievisse Adriaanse
no binary change
2007-06-06Don't promote MNT_WAIT to MNT_NOWAIT when syncing the device vnode of aPedro Martelletto
mounted softdep file system, okay mickey@ beck@ art@
2007-06-02ufs1_daddr_t is no more, okay deraadt@Pedro Martelletto
2007-06-02ufs1_daddr_t cleanup, okay thib@ deraadt@Pedro Martelletto
2007-06-01pedro ok'd this ~3500 line diff which removes the vop argumentTheo de Raadt
"ap = v" comments in under 8 seconds, so it must be ok. and it compiles too.
2007-06-01Nuke 'ufs_lbn_t', okay otto@ deraadt@ krw@ beck@Pedro Martelletto
2007-06-01ufs_daddr_t is a dead type. growfs is the only program that uses it, yetTheo de Raadt
it is ffs1-aware only. therefore all the types are on disk, and thus, they are actually int32_t. ok pedro
2007-06-01cleanup of 'ufs1_daddr_t', first round, okay deraadt@Pedro Martelletto
2007-06-01Nuke ufs_time_t, okay beck@ krw@ marco@Pedro Martelletto
2007-06-01and don't forget the other daddr var in the commentOtto Moerbeek
2007-06-01fix struct vop_bmap_args comment. ok deraadt@Otto Moerbeek
2007-06-01revert previous comment "fix", must have been sleepingOtto Moerbeek
2007-06-01fix comment, fs_ipg is inode *blocks* per cylinder groupOtto Moerbeek
2007-06-01convert ufs2_daddr_t -> daddr64_t for greater clarity; ok pedro otto thibTheo de Raadt
2007-05-29when mount -f'ing a dirty filesystem, do not clear the unclean flag,Otto Moerbeek
the fs remains dirty. ok pedro@
2007-05-29FFS2-aware code for ffs_sbupdate() and ffs_reload().Pedro Martelletto
Okay otto@ millert@ krw@ beck@ thib@
2007-05-27use struct csum_total for superblock summary info; ok pedro@Otto Moerbeek
2007-05-26Dynamic buffer cache. Initial diff from mickey@, okay art@ beck@ toby@Pedro Martelletto
deraadt@ dlg@.
2007-05-17Collapse struct v_selectinfo in struct vnode, remove theThordur I. Bjornsson
simplelock and reuse the name for the selinfo member. Clean-up accordingly. ok tedu@,art@