summaryrefslogtreecommitdiff
path: root/sys/ufs
AgeCommit message (Collapse)Author
2005-09-29Sync dirty data when going from read-write to read-only.Pedro Martelletto
Verified against FreeBSD, closes PR 4526, okay deraadt@.
2005-09-26bring in two changes from freebsd:Pedro Martelletto
- keep track of free blocks dependencies, and only tell the syncer to release the blocks when there are no more dirty buffers associated - don't mark the inode dependency as done if we had to rollback its allocation due to the bitmap being inconsistent testing by krw, jsg, jmc and sturm, okay deraadt
2005-09-06Enforce splbio() while traversing the worklist inPedro Martelletto
softdep_disk_io_initiation(). Testing by dtucker@ and krw@, okay deraadt@ long ago.
2005-09-06Describe the steps involved in allocating a new inode and space the codePedro Martelletto
a bit, to improve readability. Okay krw@ and art@, input from deraadt@ and jmc@.
2005-08-14KNFPedro Martelletto
2005-08-14When leaving ext2fs_symlink(), unlock the vnode on both error andPedro Martelletto
non-error cases, so that later on we don't deadlock trying to look it up. Fixes buglet introduced in revision 1.38, okay deraadt@.
2005-08-08Add a few splassert() checks, okay art@Pedro Martelletto
2005-07-28no point in having an inode pool if we don't use itPedro Martelletto
2005-07-28KNFPedro Martelletto
2005-07-24Fix a bug introduced in rev 1.58. When relookup() is called withTodd C. Miller
SAVESTART set in cn_flags, it will add an extra reference to the directory vnode pointer, but only when () succeeds. We were doing vrele() regardless of relookup()'s return value, which caused the reference count to be decremented on error when it shouldn't be. OK pedro@ tedu@
2005-07-20Reintroduce the changes made by tedu in revision 1.50 of ffs_softdep.c,Pedro Martelletto
this time with a small tweak: when flushing the dependencies, don't update the inode twice, but update once, and then, if needed, fsync it. Doing so fixes the inode hangs some people were seeing. Various testing for a while, especially krw@ and millert@, okay deraadt@
2005-07-03Extended Attributes was a piece to get to ACLs, however ACLs have notDale Rahn
been worked on, so EA is pointless. Also the code is not enabled in GENERIC so it is not being tested or maintained.
2005-06-19wrap a goto label in the proper #ifdefTheo de Raadt
2005-06-18Remove remaining whiteout tentacles; OK deraadt@ miod@ weingart@Todd C. Miller
2005-06-10Tweak softdep_change_linkcnt() so we can specify whether we're willingPedro Martelletto
to be co-opted by softdep or not, and use this new interface to inform softdep in ufs_inactive() that the inode mode has changed. We don't want to be co-opted there as that might lead to undesired circular dependencies such as a vput() depending on another vput() to complete, or a process that is trying to free up a vnode being blocked trying to acquire a new vnode. Okay tedu@ deraadt@, thanks to all those who tested.
2005-05-28Disable the recently enabled optimization since it seems to cause aArtur Grabowski
loop in the kernel that makes us overwrite the stack and anything else we might run into. beck@ pedro@ ok
2005-05-28ufs_whiteout() is now pointless, remove it, okay millert@Pedro Martelletto
2005-05-24brelse() on failed bread()Pedro Martelletto
2005-05-23re-enable softdep notification of inode mode change,Pedro Martelletto
talked over with marius@ and tedu@
2005-05-22put VLOCKSWORK stuff under a single option, VFSDEBUGPedro Martelletto
2005-05-02quadradically -> quadratically, lots ofPedro Martelletto
2005-04-30Add support for large files (> 4GB).Niall O'Higgins
Automatically converts old filesystems to use this if they are already at revision 1 (like Linux). Revision 0 filesystems don't get converted (unlike Linux). From NetBSD
2005-04-23pay attention to failed relookups, compensate for a reference lost inPedro Martelletto
ufs_checkpath(), optimize a if/else's logical structure. diff mostly from netbsd, okay tedu@ fgsch@ deraadt@, tested by many, jcs@ in particular, thanks. fixes PRs 4040, 4126, 4169 and 4180.
2005-03-06Use V_SAVE instead of hardcoding it, no binary change.Pedro Martelletto
2005-03-01Avoid 32-bit overflow by casting blk arg to lblktosize() to (off_t). SolvesAaron Campbell
performance loss issue in some cases when reading past the 2GB boundary in large files. Testing by drahn@, otto@, danh@, krw@, tom@, jaredy@. From FreeBSD. tedu@, pedro@ ok.
2005-02-17miscellaneous typo fixes:Jean-Francois Brousseau
- sturct -> struct (spotted by pedro) - elimination of consecutive 'the' words ok jmc@, henning@, krw@, robert@, some whining by jolan@
2005-02-17Remove dead code that has moved to ufs_vfsops.c long ago.Pedro Martelletto
2004-12-26Use list and queue macros where applicable to make the code easier to read;Miod Vallat
no change in compiler assembly output.
2004-12-09When removing the last item from a non-empty worklist, the worklistTodd C. Miller
tail pointer must be updated; from FreeBSD (mckusick). Appears to fix problems I was seeing with processes stuck with WCHAN=inode in rev 1.50. OK pedro@ and tedu@.
2004-12-08Move a FREE_LOCK until after a potential continue so we don't tryTodd C. Miller
to free the lock twice. Doesn't actually make any difference for us (no .o file diff) since the code block that contains the continue is currently commented out but it makes sense to fix this now so if/when that code is enabled we don't get bitten. From FreeBSD, ok pedro@.
2004-12-07backout missed by tedu:Theo de Raadt
prev softdep merge could lead to inode wait deadlock for unknown reasons. revert.
2004-12-07prev softdep merge could lead to inode wait deadlock for unknown reasons.Ted Unangst
revert.
2004-11-29Spell precede correctly.Jonathan Gray
'looks fine' millert@, krw@. ok jmc@
2004-11-06disable changing softdep linkcnt (last commit). it can cause a loop thatTed Unangst
locks the vnode twice, and we can't fix it right now. discussed with pedro.
2004-11-01englishPedro Martelletto
2004-10-25don't assume a block is allocated if bread() or cg_chkmagic() fails.Pedro Martelletto
ok marius@ tedu@
2004-10-10inform softdep of inode mode change, from freebsd. while i'm at it,Pedro Martelletto
check for ufs_truncate failure and do a bit of the usual null for pointers, spacing stuff. ok tedu@
2004-09-18hierarchy is spelled hierarchy, from Jonathan GrayTed Unangst
2004-08-12Prevent a panic by validating the super block size as recorded in theOtto Moerbeek
superblock; make the block size check also catch negative values. ok miller@ tedu@
2004-07-25more consistent handling of vnode recount during rename.Ted Unangst
should solve some panics. various testing for a while.
2004-07-21I was wrong. The assymetry created by the proc argument to rw_enter_writeArtur Grabowski
is horrible and doesn't add anything. Remove it. XXX - the fdplock macro will need a separate cleanup. niklas@ markus@ ok
2004-07-14trailing '\n' in printf, ok deraadt@Pedro Martelletto
2004-07-13Change mode_t and nlink_t from 16bit to 32bit. This allows us toTodd C. Miller
use mode_t in syscalls.master and to use mode_t in more places in the kernel. It also makes lint much more useful on kernel code. I've also added a placeholder for st_birthtime to make a UFS2 import easier at some future date. Requested by and OK deraadt@
2004-07-02printf inode numer as unsigned -- just the way it isMichael Shalayeff
2004-06-25Minor fixes suggested by nordin@ and henning@Thorsten Lockert
ok millert@
2004-06-24This moves access to wall and uptime variables in MI code,Thorsten Lockert
encapsulating all such access into wall-defined functions that makes sure locking is done as needed. It also cleans up some uses of wall time vs. uptime some places, but there is sure to be more of these needed as well, particularily in MD code. Also, many current calls to microtime() should probably be changed to getmicrotime(), or to the {,get}microuptime() versions. ok art@ deraadt@ aaron@ matthieu@ beck@ sturm@ millert@ others "Oh, that is not your problem!" from miod@
2004-06-21First step towards more sane time handling in the kernel -- this changesThorsten Lockert
things such that code that only need a second-resolution uptime or wall time, and used to get that from time.tv_secs or mono_time.tv_secs now get this from separate time_t globals time_second and time_uptime. ok art@ niklas@ nordin@
2004-06-04rootvp is already externed in systm.h, no need for a local externTed Unangst
2004-05-14use pool for namei pathbuf. testing ok millert@ tdeval@Ted Unangst
2004-05-07fatty softdep merge with freebsd. fixes a variety of possible issues.Ted Unangst
relevant changes to ffs_softdep.c were 1.95, 1.96, 1.97, 1.98, 1.103, and 1.107 in freebsd. testing marc and otto. ok deraadt