The NetBSD Project

CVS log for src/sys/ufs/ufs/inode.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / ufs / ufs

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.62.2.3 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:45 2014 UTC (3 months, 1 week ago) by tls
Branch: tls-maxphys
Changes since 1.62.2.2: +6 -7 lines
Diff to previous 1.62.2.2 (colored) to branchpoint 1.62 (colored) next main 1.63 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.65.6.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:56:58 2014 UTC (3 months, 2 weeks ago) by tls
Branch: tls-earlyentropy
Changes since 1.65: +7 -8 lines
Diff to previous 1.65 (colored) next main 1.66 (colored)

Rebase.

Revision 1.71 / (download) - annotate - [select for diffs], Mon May 26 19:16:39 2014 UTC (6 months ago) by dholland
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-base, netbsd-7, HEAD
Changes since 1.70: +3 -3 lines
Diff to previous 1.70 (colored)

Fix previous. Anyone have a brown paper bag?

Revision 1.70 / (download) - annotate - [select for diffs], Mon May 26 19:12:43 2014 UTC (6 months ago) by ryoon
Branch: MAIN
Changes since 1.69: +4 -4 lines
Diff to previous 1.69 (colored)

Close comments

Revision 1.69 / (download) - annotate - [select for diffs], Mon May 26 18:52:50 2014 UTC (6 months ago) by dholland
Branch: MAIN
Changes since 1.68: +6 -6 lines
Diff to previous 1.68 (colored)

Remove lfs-only inode flags.

Revision 1.58.2.5 / (download) - annotate - [select for diffs], Thu May 22 11:41:19 2014 UTC (6 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.58.2.4: +3 -4 lines
Diff to previous 1.58.2.4 (colored) to branchpoint 1.58 (colored) next main 1.59 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.65.2.1 / (download) - annotate - [select for diffs], Sun May 18 17:46:22 2014 UTC (6 months, 1 week ago) by rmind
Branch: rmind-smpnet
Changes since 1.65: +2 -3 lines
Diff to previous 1.65 (colored) next main 1.66 (colored)

sync with head

Revision 1.68 / (download) - annotate - [select for diffs], Sat May 17 19:11:40 2014 UTC (6 months, 1 week ago) by martin
Branch: MAIN
CVS Tags: rmind-smpnet-nbase, rmind-smpnet-base
Changes since 1.67: +2 -2 lines
Diff to previous 1.67 (colored)

Reorder struct ufid members to avoid padding (and save 4 bytes) on some
architectures.

Revision 1.67 / (download) - annotate - [select for diffs], Wed May 14 13:46:19 2014 UTC (6 months, 2 weeks ago) by martin
Branch: MAIN
Changes since 1.66: +2 -2 lines
Diff to previous 1.66 (colored)

Make filehandles on UFS based filesystems use proper 64bit inodes.
32bit restriction noticed by Taylor R Campbell.

Revision 1.66 / (download) - annotate - [select for diffs], Thu May 8 08:21:53 2014 UTC (6 months, 2 weeks ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-base9
Changes since 1.65: +1 -2 lines
Diff to previous 1.65 (colored)

Add a global vnode cache:

- vcache_get() retrieves a referenced and initialised vnode / fs node pair.
- vcache_remove() removes a vnode / fs node pair from the cache.

On cache miss vcache_get() calls new vfs operation vfs_loadvnode() to
initialise a vnode / fs node pair.  This call is guaranteed exclusive,
no other thread will try to load this vnode / fs node pair.

Convert ufs/ext2fs, ufs/ffs and ufs/mfs to use this interface.

Remove now unused ufs/ufs_ihash

Discussed on tech-kern.

Welcome to 6.99.41

Revision 1.62.2.2 / (download) - annotate - [select for diffs], Sun Jun 23 06:18:40 2013 UTC (17 months ago) by tls
Branch: tls-maxphys
Changes since 1.62.2.1: +3 -3 lines
Diff to previous 1.62.2.1 (colored) to branchpoint 1.62 (colored)

resync from head

Revision 1.65 / (download) - annotate - [select for diffs], Sun Jun 9 17:55:46 2013 UTC (17 months, 2 weeks ago) by dholland
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2
Branch point for: tls-earlyentropy, rmind-smpnet
Changes since 1.64: +3 -3 lines
Diff to previous 1.64 (colored)

Remove lfs-only inumber field (and its supporting union) from struct
ufs1_dinode.

Revision 1.62.2.1 / (download) - annotate - [select for diffs], Mon Feb 25 00:30:18 2013 UTC (21 months ago) by tls
Branch: tls-maxphys
Changes since 1.62: +5 -4 lines
Diff to previous 1.62 (colored)

resync with head

Revision 1.58.2.4 / (download) - annotate - [select for diffs], Wed Jan 16 05:33:56 2013 UTC (22 months, 1 week ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.58.2.3: +5 -4 lines
Diff to previous 1.58.2.3 (colored) to branchpoint 1.58 (colored)

sync with (a bit old) head

Revision 1.64 / (download) - annotate - [select for diffs], Mon Nov 19 00:36:21 2012 UTC (2 years ago) by jakllsch
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, khorben-n900, agc-symver-base, agc-symver
Changes since 1.63: +4 -3 lines
Diff to previous 1.63 (colored)

- Add e2di_version, e2di_nblock_high, e2di_facl_high fields to ext2fs_dinode.

- Update i_e2fs_ aliases to match.

- ext2fs_bswap support for these ext2fs_dinode fields.

(e2di_version and e2di_facl_high replace previously reserved fields.
e2di_nblock_high was formerly e2di_nfrag and e2di_fsize, however these
are currently defined in e2fsprogs as only being relevant for HURD.)

Revision 1.63 / (download) - annotate - [select for diffs], Mon Nov 19 00:25:29 2012 UTC (2 years ago) by jakllsch
Branch: MAIN
Changes since 1.62: +2 -2 lines
Diff to previous 1.62 (colored)

Move i_e2fs_rdev define to be adjacent to the field it aliases.

Revision 1.58.2.3 / (download) - annotate - [select for diffs], Tue Oct 30 17:23:00 2012 UTC (2 years ago) by yamt
Branch: yamt-pagecache
Changes since 1.58.2.2: +2 -2 lines
Diff to previous 1.58.2.2 (colored) to branchpoint 1.58 (colored)

sync with head

Revision 1.62 / (download) - annotate - [select for diffs], Mon Jun 4 22:01:07 2012 UTC (2 years, 5 months ago) by riastradh
Branch: MAIN
CVS Tags: yamt-pagecache-base6
Branch point for: tls-maxphys
Changes since 1.61: +2 -2 lines
Diff to previous 1.61 (colored)

Use two separate comments for stub where IN_RENAME was.

Revision 1.61 / (download) - annotate - [select for diffs], Mon Jun 4 20:13:47 2012 UTC (2 years, 5 months ago) by riastradh
Branch: MAIN
Changes since 1.60: +2 -2 lines
Diff to previous 1.60 (colored)

Kill the IN_RENAME in-core inode flag in ufs and ext2fs.

Now that rename works we need not to wave this sort of voodoo at it.

ok dholland

Revision 1.58.6.2 / (download) - annotate - [select for diffs], Sat Jun 2 11:09:41 2012 UTC (2 years, 5 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.58.6.1: +4 -1 lines
Diff to previous 1.58.6.1 (colored) to branchpoint 1.58 (colored) next main 1.59 (colored)

sync to latest -current.

Revision 1.58.2.2 / (download) - annotate - [select for diffs], Wed May 23 10:08:19 2012 UTC (2 years, 6 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.58.2.1: +4 -1 lines
Diff to previous 1.58.2.1 (colored) to branchpoint 1.58 (colored)

sync with head.

Revision 1.54.4.2 / (download) - annotate - [select for diffs], Sat May 19 17:28:29 2012 UTC (2 years, 6 months ago) by riz
Branch: netbsd-5
CVS Tags: netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2
Changes since 1.54.4.1: +27 -7 lines
Diff to previous 1.54.4.1 (colored) to branchpoint 1.54 (colored) next main 1.55 (colored)

Apply patch (requested by buhrow in ticket #1759):


sys/ufs/lfs/lfs_vnops.c				patch
sys/ufs/ufs/inode.h 				patch
sys/ufs/ufs/ufs_extern.h			patch
sys/ufs/ufs/ufs_lookup.c			patch
sys/ufs/ufs/ufs_vnops.c				patch
sys/ufs/ufs/ufs_wapbl.c				patch

	Port dholland's ufs_rename locking changes to netbsd-5.
	[buhrow, ticket #1759]

        Hello.  More testing has revealed a minor misunderstanding between the
vnode API in -current and 5.x.  The below patch, against NetBSD-5.1
sources, rolls all the accumulated patches into one patch set.  With this
patch, I believe you can now run with WAPBL, softdep or traditional ufs
semantics with heavy file loads and avoid panics due to resource exhaustion
and/or tstile deadlocks.  Testing has been done on I386, both uniprocessor
and multiprocessor, and on Sparc  machines in uniprocessor mode, though I
think multiprocessor Sparc would be fine as well.  Since these changes are
machine independent, I don't anticipate any issues on any platform.  It is
my hope that modulo any final issues that come up in the final round of
testing I'm currently performing, these patches will be ready to be pulled
up into the NetBSD-5 branch.
        Finally, I'd like to thank mouse@ and hannken@ for their help and
patience in helping me track down and test the final versions of these
patches.  With their assistance, I'm confident these patches make NetBSD-5
a much more stable and robust operating environment in a variety of
setings.

Revision 1.60 / (download) - annotate - [select for diffs], Sat May 5 04:08:53 2012 UTC (2 years, 6 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-pagecache-base5, jmcneill-usbmp-base10
Changes since 1.59: +4 -1 lines
Diff to previous 1.59 (colored)

comments and cosmetics.  no functional changes.

Revision 1.58.2.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:08:57 2012 UTC (2 years, 7 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.58: +2 -2 lines
Diff to previous 1.58 (colored)

sync with head

Revision 1.58.6.1 / (download) - annotate - [select for diffs], Sat Feb 18 07:35:55 2012 UTC (2 years, 9 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.58: +2 -2 lines
Diff to previous 1.58 (colored)

merge to -current.

Revision 1.59 / (download) - annotate - [select for diffs], Mon Jan 2 22:10:45 2012 UTC (2 years, 10 months ago) by perseant
Branch: MAIN
CVS Tags: yamt-pagecache-base4, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2
Changes since 1.58: +2 -2 lines
Diff to previous 1.58 (colored)


* Remove PGO_RECLAIM during lfs_putpages()' call to genfs_putpages(),
  to avoid a live lock in the latter when reclaiming a vnode with
  dirty pages.

* Add a new segment flag, SEGM_RECLAIM, to note when a segment is
  being written for vnode reclamation, and record which inode is being
  reclaimed, to aid in forensic debugging.

* Add a new segment flag, SEGM_SINGLE, so that opportunistic writes
  can write a single segment's worth of blocks and then stop, rather
  than writing all the way up to the cleaner's reserved number of
  segments.

* Add assert statements to check mutex ownership is the way it ought
  to be, mostly in lfs_putpages; fix problems uncovered by this.

* Don't clear VU_DIROP until the inode actually makes its way to disk,
  avoiding a problem where dirop inodes could become separated
  (uncovered by a modified version of the "ckckp" forensic regression
  test).

* Move the vfs_getopsbyname() call into lfs_writerd.  Prepare code to
  make lfs_writerd notice when there are no more LFSs, and exit losing
  the reference, so that, in theory, the module can be unloaded.  This
  code is not enabled, since it causes a crash on exit.

* Set IN_MODIFIED on inodes flushed by lfs_flush_dirops.  Really we
  only need to set IN_MODIFIED if we are going to write them again
  (e.g., to write pages); need to think about this more.

Finally, several changes to help avoid "no clean segments" panics:

* In lfs_bmapv, note when a vnode is loaded only to discover whether
  its blocks are live, so it can immediately be recycled.  Since the
  cleaner will try to choose ~empty segments over full ones, this
  prevents the cleaner from (1) filling the vnode cache with junk, and
  (2) squeezing any unwritten writes to disk and running the fs out of
  segments.

* Overestimate by half the amount of metadata that will be required
  to fill the clean segments.  This will make the disk appear smaller,
  but should help avoid a "no clean segments" panic.

* Rearrange lfs_writerd.  In particular, lfs_writerd now pays
  attention to the number of clean segments available, and holds off
  writing until there is room.

Revision 1.58 / (download) - annotate - [select for diffs], Tue Jul 12 02:22:13 2011 UTC (3 years, 4 months ago) by dholland
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.57: +22 -8 lines
Diff to previous 1.57 (colored)

Currently, ufs_lookup produces five auxiliary results that are left in
the vnode when lookup returns and fished out again later.

1. Create struct ufs_lookup_results to hold these.

2. Call the ufs_lookup_results instance in struct inode "i_crap" to be
clear about exactly what's going on, and to distinguish the lookup
results from respectable members of struct inode.

3. Update references to these members in the directory access
subroutines.

4. Include preliminary infrastructure for checking that the i_crap
being used is still valid when it's used. This doesn't actually do
anything yet.

5. Update the way ufs_wapbl_rename manipulates these elements to use
the new data structures. I have not changed the manipulation; it may
or may not be correct but I continue to suspect that it is not.

The word of the day is "stigmergy".

Revision 1.56.4.1 / (download) - annotate - [select for diffs], Sat Mar 5 20:56:33 2011 UTC (3 years, 8 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.56: +2 -1 lines
Diff to previous 1.56 (colored) next main 1.57 (colored)

sync with head

Revision 1.56.2.1 / (download) - annotate - [select for diffs], Tue Aug 17 06:48:13 2010 UTC (4 years, 3 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.56: +2 -1 lines
Diff to previous 1.56 (colored) next main 1.57 (colored)

Sync with HEAD.

Revision 1.51.10.2 / (download) - annotate - [select for diffs], Wed Aug 11 22:55:15 2010 UTC (4 years, 3 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.51.10.1: +2 -1 lines
Diff to previous 1.51.10.1 (colored) to branchpoint 1.51 (colored) next main 1.52 (colored)

sync with head.

Revision 1.57 / (download) - annotate - [select for diffs], Wed Jul 28 11:03:48 2010 UTC (4 years, 4 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, rmind-uvmplock-nbase, rmind-uvmplock-base, matt-mips64-premerge-20101231, jruoho-x86intr-base, jruoho-x86intr, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Changes since 1.56: +2 -1 lines
Diff to previous 1.56 (colored)

ext2fs,ffs: free on disk inodes in the reclaim routine.
Remove now unneeded vnode flag VI_FREEING.

Welcome to 5.99.38.

Ok: Andrew Doran <ad@netbsd.org>

Revision 1.55.4.1 / (download) - annotate - [select for diffs], Wed May 13 17:23:07 2009 UTC (5 years, 6 months ago) by jym
Branch: jym-xensuspend
Changes since 1.55: +3 -6 lines
Diff to previous 1.55 (colored) next main 1.56 (colored)

Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.

Revision 1.51.10.1 / (download) - annotate - [select for diffs], Mon May 4 08:14:38 2009 UTC (5 years, 6 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.51: +25 -21 lines
Diff to previous 1.51 (colored)

sync with head.

Revision 1.54.2.2 / (download) - annotate - [select for diffs], Tue Mar 3 18:34:40 2009 UTC (5 years, 8 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.54.2.1: +3 -6 lines
Diff to previous 1.54.2.1 (colored) to branchpoint 1.54 (colored) next main 1.55 (colored)

Sync with HEAD.

Revision 1.56 / (download) - annotate - [select for diffs], Sun Feb 22 20:28:07 2009 UTC (5 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, uebayasi-xip-base1, uebayasi-xip-base, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, matt-premerge-20091211, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base
Branch point for: uebayasi-xip, rmind-uvmplock
Changes since 1.55: +3 -6 lines
Diff to previous 1.55 (colored)

PR kern/26878 FFSv2 + softdep = livelock (no free ram)
PR kern/16942 panic with softdep and quotas
PR kern/19565 panic: softdep_write_inodeblock: indirect pointer #1 mismatch
PR kern/26274 softdep panic: allocdirect_merge: ...
PR kern/26374 Long delay before non-root users can write to softdep partitions
PR kern/28621 1.6.x "vp != NULL" panic in ffs_softdep.c:4653 while unmounting a softdep (+quota) filesystem
PR kern/29513 FFS+Softdep panic with unfsck-able file-corruption
PR kern/31544 The ffs softdep code appears to fail to write dirty bits to disk
PR kern/31981 stopping scsi disk can cause panic (softdep)
PR kern/32116 kernel panic in softdep (assertion failure)
PR kern/32532 softdep_trackbufs deadlock
PR kern/37191 softdep: locking against myself
PR kern/40474 Kernel panic after remounting raid root with softdep

Retire softdep, pass 2. As discussed and later formally announced on the
mailing lists.

Revision 1.54.2.1 / (download) - annotate - [select for diffs], Mon Jan 19 13:20:35 2009 UTC (5 years, 10 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.54: +3 -1 lines
Diff to previous 1.54 (colored)

Sync with HEAD.

Revision 1.51.6.2 / (download) - annotate - [select for diffs], Sat Jan 17 13:29:42 2009 UTC (5 years, 10 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.51.6.1: +2 -0 lines
Diff to previous 1.51.6.1 (colored) to branchpoint 1.51 (colored) next main 1.52 (colored)

Sync with HEAD.

Revision 1.51.16.2 / (download) - annotate - [select for diffs], Sat Dec 13 01:15:41 2008 UTC (5 years, 11 months ago) by haad
Branch: haad-dm
Changes since 1.51.16.1: +3 -1 lines
Diff to previous 1.51.16.1 (colored) to branchpoint 1.51 (colored) next main 1.52 (colored)

Update haad-dm branch to haad-dm-base2.

Revision 1.54.4.1 / (download) - annotate - [select for diffs], Sat Nov 29 23:10:18 2008 UTC (5 years, 11 months ago) by snj
Branch: netbsd-5
CVS Tags: netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b
Changes since 1.54: +3 -1 lines
Diff to previous 1.54 (colored)

Pull up following revision(s) (requested by mrg in ticket #147):
	sys/ufs/ext2fs/ext2fs_alloc.c: revision 1.37
	sys/ufs/ext2fs/ext2fs_bswap.c: revision 1.14
	sys/ufs/ext2fs/ext2fs_dinode.h: revision 1.17
	sys/ufs/ext2fs/ext2fs_lookup.c: revision 1.56
	sys/ufs/ext2fs/ext2fs_vnops.c: revision 1.83
	sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.140
	sys/ufs/ufs/inode.h: revision 1.55
add support for 32 bit uid/gid fields in ext2, but only do so for
when the revision is > REV0.

Revision 1.55 / (download) - annotate - [select for diffs], Sun Nov 23 10:09:26 2008 UTC (6 years ago) by mrg
Branch: MAIN
CVS Tags: mjf-devfs2-base, haad-nbase2, haad-dm-base2, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: jym-xensuspend
Changes since 1.54: +3 -1 lines
Diff to previous 1.54 (colored)

add support for 32 bit uid/gid fields in ext2, but only do so for
when the revision is > REV0.

Revision 1.51.16.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:18:10 2008 UTC (6 years, 1 month ago) by haad
Branch: haad-dm
Changes since 1.51: +21 -16 lines
Diff to previous 1.51 (colored)

Sync with HEAD.

Revision 1.51.12.2 / (download) - annotate - [select for diffs], Fri Oct 10 22:37:10 2008 UTC (6 years, 1 month ago) by skrll
Branch: wrstuden-revivesa
Changes since 1.51.12.1: +3 -3 lines
Diff to previous 1.51.12.1 (colored) to branchpoint 1.51 (colored) next main 1.52 (colored)

Sync with HEAD.

Revision 1.51.6.1 / (download) - annotate - [select for diffs], Sun Sep 28 10:41:06 2008 UTC (6 years, 1 month ago) by mjf
Branch: mjf-devfs2
Changes since 1.51: +21 -16 lines
Diff to previous 1.51 (colored)

Sync with HEAD.

Revision 1.54 / (download) - annotate - [select for diffs], Tue Sep 23 12:37:05 2008 UTC (6 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, netbsd-5-base, matt-mips64-base2, haad-dm-base1
Branch point for: nick-hppapmap, netbsd-5
Changes since 1.53: +3 -3 lines
Diff to previous 1.53 (colored)

fix reversed comment, from anon ymous

Revision 1.51.12.1 / (download) - annotate - [select for diffs], Thu Sep 18 04:37:06 2008 UTC (6 years, 2 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.51: +21 -16 lines
Diff to previous 1.51 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.53 / (download) - annotate - [select for diffs], Thu Jul 31 08:49:47 2008 UTC (6 years, 3 months ago) by simonb
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-3, wrstuden-revivesa-base-2
Changes since 1.52: +16 -16 lines
Diff to previous 1.52 (colored)

Be consistent with #define<tab>.

Revision 1.52 / (download) - annotate - [select for diffs], Thu Jul 31 05:38:06 2008 UTC (6 years, 3 months ago) by simonb
Branch: MAIN
Changes since 1.51: +7 -2 lines
Diff to previous 1.51 (colored)

Merge the simonb-wapbl branch.  From the original branch commit:

   Add Wasabi System's WAPBL (Write Ahead Physical Block Logging)
   journaling code.  Originally written by Darrin B. Jewell while
   at Wasabi and updated to -current by Antti Kantee, Andy Doran,
   Greg Oster and Simon Burge.

OK'd by core@, releng@.

Revision 1.51.14.1 / (download) - annotate - [select for diffs], Mon Jul 28 12:40:06 2008 UTC (6 years, 4 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.51: +7 -2 lines
Diff to previous 1.51 (colored) next main 1.52 (colored)

Add support for creating a WAPBL log in the filesystem.  Will
create an in-filesystem log on first "mount -o log" if one doesn't
exist, and will then continue to use same log in the future.  See
(soon to be added) wapbl(4) for more info.

Adds a new B_CONTIG low-level allocation flag that uses hints in
"struct ffs_inode_ext" to lay out an ffs file's data contiguously.

Thanks to Greg Oster for helping with the design of this and to
Antti Kantee for code review and suggestions.

Revision 1.48.10.2 / (download) - annotate - [select for diffs], Sun Mar 23 02:05:12 2008 UTC (6 years, 8 months ago) by matt
Branch: matt-armv6
Changes since 1.48.10.1: +1 -2 lines
Diff to previous 1.48.10.1 (colored) to branchpoint 1.48 (colored) next main 1.49 (colored)

sync with HEAD

Revision 1.48.16.1 / (download) - annotate - [select for diffs], Mon Feb 18 21:07:32 2008 UTC (6 years, 9 months ago) by mjf
Branch: mjf-devfs
Changes since 1.48: +2 -2 lines
Diff to previous 1.48 (colored) next main 1.49 (colored)

Sync with HEAD.

Revision 1.41.4.3 / (download) - annotate - [select for diffs], Mon Jan 21 09:48:15 2008 UTC (6 years, 10 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.41.4.2: +2 -2 lines
Diff to previous 1.41.4.2 (colored) to branchpoint 1.41 (colored) next main 1.42 (colored)

sync with head

Revision 1.48.22.3 / (download) - annotate - [select for diffs], Thu Jan 10 23:44:44 2008 UTC (6 years, 10 months ago) by bouyer
Branch: bouyer-xeni386
CVS Tags: bouyer-xeni386-merge1
Changes since 1.48.22.2: +0 -1 lines
Diff to previous 1.48.22.2 (colored) to branchpoint 1.48 (colored) next main 1.49 (colored)

Sync with HEAD

Revision 1.51 / (download) - annotate - [select for diffs], Wed Jan 9 16:15:23 2008 UTC (6 years, 10 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, yamt-nfs-mp-base2, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, wrstuden-revivesa-base-1, wrstuden-revivesa-base, simonb-wapbl-nbase, simonb-wapbl-base, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-nbase, hpcarm-cleanup-base, bouyer-xeni386-nbase, bouyer-xeni386-base, ad-socklock-base1
Branch point for: yamt-nfs-mp, wrstuden-revivesa, simonb-wapbl, mjf-devfs2, haad-dm
Changes since 1.50: +1 -2 lines
Diff to previous 1.50 (colored)

Go back to freeing on disk inodes in the inactive routine. It would be
better not to do this, but it rules out potential side effects with softdep.

Revision 1.48.10.1 / (download) - annotate - [select for diffs], Wed Jan 9 01:58:33 2008 UTC (6 years, 10 months ago) by matt
Branch: matt-armv6
Changes since 1.48: +3 -2 lines
Diff to previous 1.48 (colored)

sync with HEAD

Revision 1.48.22.2 / (download) - annotate - [select for diffs], Tue Jan 8 22:12:04 2008 UTC (6 years, 10 months ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.48.22.1: +1 -1 lines
Diff to previous 1.48.22.1 (colored) to branchpoint 1.48 (colored)

Sync with HEAD

Revision 1.50 / (download) - annotate - [select for diffs], Mon Jan 7 16:56:27 2008 UTC (6 years, 10 months ago) by ad
Branch: MAIN
CVS Tags: matt-armv6-base
Changes since 1.49: +2 -2 lines
Diff to previous 1.49 (colored)

Fix 'panic: softdep_update_inodeblock: update failed'.

Revision 1.48.22.1 / (download) - annotate - [select for diffs], Wed Jan 2 21:58:28 2008 UTC (6 years, 10 months ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.48: +2 -1 lines
Diff to previous 1.48 (colored)

Sync with HEAD

Revision 1.49 / (download) - annotate - [select for diffs], Wed Jan 2 11:49:13 2008 UTC (6 years, 10 months ago) by ad
Branch: MAIN
Changes since 1.48: +2 -1 lines
Diff to previous 1.48 (colored)

Merge vmlocking2 to head.

Revision 1.48.18.1 / (download) - annotate - [select for diffs], Tue Dec 4 13:03:53 2007 UTC (6 years, 11 months ago) by ad
Branch: vmlocking2
Changes since 1.48: +2 -1 lines
Diff to previous 1.48 (colored) next main 1.49 (colored)

Pull the vmlocking changes into a new branch.

Revision 1.47.2.2 / (download) - annotate - [select for diffs], Sun Sep 16 19:02:49 2007 UTC (7 years, 2 months ago) by ad
Branch: vmlocking
Changes since 1.47.2.1: +2 -1 lines
Diff to previous 1.47.2.1 (colored) to branchpoint 1.47 (colored) next main 1.48 (colored)

- Checkpoint work in progress on the vnode lifecycle and reference counting
  stuff. This makes it work properly without kernel_lock and fixes a few
  quite old bugs. See vfs_subr.c 1.283.2.17 for details.

- Fix some problems with softdep. Unfortunately our softdep code appears
  to have some longstanding bugs that cause it fail under stress test.

Revision 1.41.4.2 / (download) - annotate - [select for diffs], Mon Sep 3 14:46:58 2007 UTC (7 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.41.4.1: +3 -3 lines
Diff to previous 1.41.4.1 (colored) to branchpoint 1.41 (colored)

sync with head.

Revision 1.47.4.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:12:49 2007 UTC (7 years, 4 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (colored) next main 1.48 (colored)

Sync with head.

Revision 1.46.26.2 / (download) - annotate - [select for diffs], Sun Apr 15 16:04:08 2007 UTC (7 years, 7 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.46.26.1: +2 -2 lines
Diff to previous 1.46.26.1 (colored) to branchpoint 1.46 (colored) next main 1.47 (colored)

sync with head.

Revision 1.47.2.1 / (download) - annotate - [select for diffs], Tue Apr 10 13:26:55 2007 UTC (7 years, 7 months ago) by ad
Branch: vmlocking
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (colored)

Sync with head.

Revision 1.48 / (download) - annotate - [select for diffs], Mon Apr 9 12:21:24 2007 UTC (7 years, 7 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, yamt-idlelwp-base8, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, vmlocking-base, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, jmcneill-pm-base, jmcneill-pm, jmcneill-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: vmlocking2, mjf-devfs, matt-armv6, bouyer-xeni386
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (colored)

fix comment: struct fid is in fstypes.h now

Revision 1.46.26.1 / (download) - annotate - [select for diffs], Mon Mar 12 06:01:10 2007 UTC (7 years, 8 months ago) by rmind
Branch: yamt-idlelwp
Changes since 1.46: +2 -2 lines
Diff to previous 1.46 (colored)

Sync with HEAD.

Revision 1.47 / (download) - annotate - [select for diffs], Sun Mar 4 06:03:46 2007 UTC (7 years, 8 months ago) by christos
Branch: MAIN
CVS Tags: reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.46: +2 -2 lines
Diff to previous 1.46 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.41.4.1 / (download) - annotate - [select for diffs], Wed Jun 21 15:12:39 2006 UTC (8 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.41: +2 -54 lines
Diff to previous 1.41 (colored)

sync with head.

Revision 1.46 / (download) - annotate - [select for diffs], Sun Dec 11 12:25:28 2005 UTC (8 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-splraiseipl, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, yamt-pdpolicy, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, simonb-timecounters-base, simonb-timecounters, simonb-timcounters-final, rpaulo-netinet-merge-pcb-base, rpaulo-netinet-merge-pcb, post-newlock2-merge, peter-altq-base, peter-altq, newlock2-nbase, newlock2-base, newlock2, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm, gdamore-uart-base, gdamore-uart, elad-kernelauth-base, elad-kernelauth, chap-midi-nbase, chap-midi-base, chap-midi, ad-audiomp-base, ad-audiomp, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-idlelwp
Changes since 1.45: +1 -1 lines
Diff to previous 1.45 (colored)

merge ktrace-lwp.

Revision 1.35.2.7 / (download) - annotate - [select for diffs], Thu Nov 10 14:12:39 2005 UTC (9 years ago) by skrll
Branch: ktrace-lwp
Changes since 1.35.2.6: +2 -54 lines
Diff to previous 1.35.2.6 (colored) next main 1.36 (colored)

Sync with HEAD. Here we go again...

Revision 1.45 / (download) - annotate - [select for diffs], Tue Sep 27 06:48:56 2005 UTC (9 years, 2 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Changes since 1.44: +1 -12 lines
Diff to previous 1.44 (colored)

introduce "ufs_ops" and use it for ITIMES.

Revision 1.44 / (download) - annotate - [select for diffs], Mon Sep 12 20:23:04 2005 UTC (9 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.43: +6 -9 lines
Diff to previous 1.43 (colored)

- access the ffs and ext2fs itimes functions through a pointer, so that
  if the filesystem is not compiled in the kernel still links. Probably
  a better solution is to use weak symbols.
- move the filesystem-specific itime macros to the filesystem header files.

Revision 1.43 / (download) - annotate - [select for diffs], Mon Sep 12 16:24:41 2005 UTC (9 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.42: +14 -52 lines
Diff to previous 1.42 (colored)

Use nanotime() to update the time fields in filesystems. Convert the code
from macros to real functions. Original patch and review from chuq.
Note: ext2fs only keeps seconds in the on-disk inode, and msdosfs does not
have enough precision for all fields, so this is not very useful for those
two.

Revision 1.42 / (download) - annotate - [select for diffs], Fri Aug 19 02:04:09 2005 UTC (9 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored)

64 bit inode changes.

Revision 1.39.4.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:29:39 2005 UTC (9 years, 7 months ago) by kent
Branch: kent-audio2
Changes since 1.39: +4 -2 lines
Diff to previous 1.39 (colored) next main 1.40 (colored)

sync with -current

Revision 1.40.2.1 / (download) - annotate - [select for diffs], Sat Mar 19 08:37:06 2005 UTC (9 years, 8 months ago) by yamt
Branch: yamt-km
Changes since 1.40: +2 -2 lines
Diff to previous 1.40 (colored) next main 1.41 (colored)

sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.35.2.6 / (download) - annotate - [select for diffs], Fri Mar 4 16:55:00 2005 UTC (9 years, 8 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.35.2.5: +2 -2 lines
Diff to previous 1.35.2.5 (colored)

Sync with HEAD.

Hi Perry!

Revision 1.41 / (download) - annotate - [select for diffs], Sat Feb 26 22:32:20 2005 UTC (9 years, 9 months ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, kent-audio2-base
Branch point for: yamt-lazymbuf
Changes since 1.40: +2 -2 lines
Diff to previous 1.40 (colored)

nuke trailing whitespace

Revision 1.35.2.5 / (download) - annotate - [select for diffs], Mon Jan 24 08:36:05 2005 UTC (9 years, 10 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.35.2.4: +3 -1 lines
Diff to previous 1.35.2.4 (colored)

Sync with HEAD.

Revision 1.40 / (download) - annotate - [select for diffs], Sun Jan 23 19:37:05 2005 UTC (9 years, 10 months ago) by rumble
Branch: MAIN
CVS Tags: yamt-km-base2, yamt-km-base, matt-timespec
Branch point for: yamt-km
Changes since 1.39: +3 -1 lines
Diff to previous 1.39 (colored)

Bring in Ian Dowse's Dirhash from FreeBSD. Hash tables of
directories are created on the fly and used to increase
performance by circumventing ufs_lookup's linear search.

Dirhash is enabled by the UFS_DIRHASH option, but not
by default.

Revision 1.35.2.4 / (download) - annotate - [select for diffs], Tue Sep 21 13:39:22 2004 UTC (10 years, 2 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.35.2.3: +1 -1 lines
Diff to previous 1.35.2.3 (colored)

Fix the sync with head I botched.

Revision 1.35.2.3 / (download) - annotate - [select for diffs], Sat Sep 18 14:56:59 2004 UTC (10 years, 2 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.35.2.2: +1 -1 lines
Diff to previous 1.35.2.2 (colored)

Sync with HEAD.

Revision 1.35.2.2 / (download) - annotate - [select for diffs], Wed Aug 25 06:59:14 2004 UTC (10 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.35.2.1: +19 -16 lines
Diff to previous 1.35.2.1 (colored)

Sync with HEAD.

Revision 1.39 / (download) - annotate - [select for diffs], Sat Aug 14 14:32:04 2004 UTC (10 years, 3 months ago) by mycroft
Branch: MAIN
CVS Tags: kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: kent-audio2
Changes since 1.38: +9 -7 lines
Diff to previous 1.38 (colored)

Push atime/mtime updates even further -- into the reclaim path, so they happen
rarely in the normal case.  (Note: This happens at reboot/shutdown time because
all file systems are unmounted.)

Also, for IN_MODIFY, use IN_ACCESSED, not IN_MODIFIED; otherwise "ls -l" of
your device node or FIFO would cause the time stamps to get written too
quickly.

Revision 1.38 / (download) - annotate - [select for diffs], Sat Aug 14 01:08:07 2004 UTC (10 years, 3 months ago) by mycroft
Branch: MAIN
Changes since 1.37: +11 -10 lines
Diff to previous 1.37 (colored)

Add a new flag, IN_MODIFY.  This is like IN_UPDATE|IN_CHANGE, but unlike
setting those flags, it does not cause the inode to be written in the periodic
sync.  This is used for writes to special files (devices and named pipes) and
FIFOs.

Do not preemptively sync updates to access times and modification times.  They
are now updated in the inode only opportunistically, or when the file or device
is closed.  (Really, it should be delayed beyond close, but this is enough to
help substantially with device nodes.)

And the most amusing part:
Trickle sync was broken on both FFS and ext2fs, in different ways.  In FFS, the
periodic call to VFS_SYNC(MNT_LAZY) was still causing all file data to be
synced.  In ext2fs, it was causing the metadata to *not* be synced.  We now
only call VOP_UPDATE() on the node if we're doing MNT_LAZY.  I've confirmed
that we do in fact trickle correctly now.

Revision 1.35.2.1 / (download) - annotate - [select for diffs], Tue Aug 3 10:56:59 2004 UTC (10 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.35: +13 -8 lines
Diff to previous 1.35 (colored)

Sync with HEAD

Revision 1.37 / (download) - annotate - [select for diffs], Tue May 25 14:55:46 2004 UTC (10 years, 6 months ago) by hannken
Branch: MAIN
Changes since 1.36: +12 -3 lines
Diff to previous 1.36 (colored)

Add ffs internal snapshots. Written by Marshall Kirk McKusick for FreeBSD.

- Not enabled by default. Needs kernel option FFS_SNAPSHOT.
- Change parameters of ffs_blkfree.
- Let the copy-on-write functions return an error so spec_strategy
    may fail if the copy-on-write fails.
- Change genfs_*lock*() to use vp->v_vnlock instead of &vp->v_lock.
- Add flag B_METAONLY to VOP_BALLOC to return indirect block buffer.
- Add a function ffs_checkfreefile needed for snapshot creation.
- Add special handling of snapshot files:
    Snapshots may not be opened for writing and the attributes are read-only.
    Use the mtime as the time this snapshot was taken.
    Deny mtime updates for snapshot files.
- Add function transferlockers to transfer any waiting processes from
  one lock to another.
- Add vfsop VFS_SNAPSHOT to take a snapshot and make it accessible through
  a vnode.
- Add snapshot support to ls, fsck_ffs and dump.

Welcome to 2.0F.

Approved by: Jason R. Thorpe <thorpej@netbsd.org>

Revision 1.36 / (download) - annotate - [select for diffs], Thu Aug 7 16:34:44 2003 UTC (11 years, 3 months ago) by agc
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.35: +2 -6 lines
Diff to previous 1.35 (colored)

Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.

Revision 1.35 / (download) - annotate - [select for diffs], Thu May 15 20:25:33 2003 UTC (11 years, 6 months ago) by kristerw
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.34: +23 -7 lines
Diff to previous 1.34 (colored)

The C language does not permit statements of the form
   (X ? Y : Z) = 0;
even though gcc handles this by a stupid extension.

Transform these to correct C.

Approved by fvdl.

Revision 1.34 / (download) - annotate - [select for diffs], Wed Apr 2 10:39:43 2003 UTC (11 years, 7 months ago) by fvdl
Branch: MAIN
Changes since 1.33: +102 -47 lines
Diff to previous 1.33 (colored)

Add support for UFS2. UFS2 is an enhanced FFS, adding support for
64 bit block pointers, extended attribute storage, and a few
other things.

This commit does not yet include the code to manipulate the extended
storage (for e.g. ACLs), this will be done later.

Originally written by Kirk McKusick and Network Associates Laboratories for
FreeBSD.

Revision 1.33 / (download) - annotate - [select for diffs], Mon Feb 17 23:48:23 2003 UTC (11 years, 9 months ago) by perseant
Branch: MAIN
Changes since 1.32: +4 -10 lines
Diff to previous 1.32 (colored)

Add code to UBCify LFS.  This is still behind "#ifdef LFS_UBC" for now
(there are still some details to work out) but expect that to go
away soon.  To support these basic changes (creation of lfs_putpages,
lfs_gop_write, mods to lfs_balloc) several other changes were made, to
wit:

* Create a writer daemon kernel thread whose purpose is to handle page
  writes for the pagedaemon, but which also takes over some of the
  functions of lfs_check().  This thread is started the first time an
  LFS is mounted.

* Add a "flags" parameter to GOP_SIZE.  Current values are
  GOP_SIZE_READ, meaning that the call should return the size of the
  in-core version of the file, and GOP_SIZE_WRITE, meaning that it
  should return the on-disk size.  One of GOP_SIZE_READ or
  GOP_SIZE_WRITE must be specified.

* Instead of using malloc(...M_WAITOK) for everything, reserve enough
  resources to get by and use malloc(...M_NOWAIT), using the reserves if
  necessary.  Use the pool subsystem for structures small enough that
  this is feasible.  This also obsoletes LFS_THROTTLE.

And a few that are not strictly necessary:

* Moves the LFS inode extensions off onto a separately allocated
  structure; getting closer to LFS as an LKM.  "Welcome to 1.6O."

* Unified GOP_ALLOC between FFS and LFS.

* Update LFS copyright headers to correct values.

* Actually cast to unsigned in lfs_shellsort, like the comment says.

* Keep track of which segments were empty before the previous
  checkpoint; any segments that pass two checkpoints both dirty and
  empty can be summarily cleaned.  Do this.  Right now lfs_segclean
  still works, but this should be turned into an effectless
  compatibility syscall.

Revision 1.32 / (download) - annotate - [select for diffs], Fri Jan 24 21:55:29 2003 UTC (11 years, 10 months ago) by fvdl
Branch: MAIN
Changes since 1.31: +4 -4 lines
Diff to previous 1.31 (colored)

Bump daddr_t to 64 bits. Replace it with int32_t in all places where
it was used on-disk, so that on-disk formats remain the same.
Remove ufs_daddr_t and ufs_lbn_t for the time being.

Revision 1.23.2.7 / (download) - annotate - [select for diffs], Wed Dec 11 06:51:47 2002 UTC (11 years, 11 months ago) by thorpej
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.23.2.6: +5 -1 lines
Diff to previous 1.23.2.6 (colored) to branchpoint 1.23 (colored) next main 1.24 (colored)

Sync with HEAD.

Revision 1.31 / (download) - annotate - [select for diffs], Sun Dec 1 00:12:12 2002 UTC (11 years, 11 months ago) by matt
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Changes since 1.30: +6 -1 lines
Diff to previous 1.30 (colored)

Add multiple inclusion protection for headers.  Fix mismatched
variable declarations (missing const's) as needed.

Revision 1.30 / (download) - annotate - [select for diffs], Tue Nov 26 01:23:31 2002 UTC (12 years ago) by yamt
Branch: MAIN
Changes since 1.29: +1 -2 lines
Diff to previous 1.29 (colored)

eliminate i_ino from in-core inode
and use local variable instead.

ok'ed by Frank van der Linden.

Revision 1.24.4.3 / (download) - annotate - [select for diffs], Fri Sep 6 08:50:21 2002 UTC (12 years, 2 months ago) by jdolecek
Branch: kqueue
Changes since 1.24.4.2: +5 -1 lines
Diff to previous 1.24.4.2 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

sync kqueue branch with HEAD

Revision 1.23.2.6 / (download) - annotate - [select for diffs], Thu Aug 1 02:47:06 2002 UTC (12 years, 3 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.23.2.5: +5 -1 lines
Diff to previous 1.23.2.5 (colored) to branchpoint 1.23 (colored)

Catch up to -current.

Revision 1.27.8.2 / (download) - annotate - [select for diffs], Mon Jul 15 10:37:31 2002 UTC (12 years, 4 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.27.8.1: +5 -1 lines
Diff to previous 1.27.8.1 (colored) to branchpoint 1.27 (colored) next main 1.28 (colored)

catch up with -current.

Revision 1.29 / (download) - annotate - [select for diffs], Sat Jul 6 01:30:16 2002 UTC (12 years, 4 months ago) by perseant
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gehenna-devsw-base
Changes since 1.28: +5 -1 lines
Diff to previous 1.28 (colored)

Deal with fragment size changes better.  For each fragment that can
exist on an on-disk inode, we keep a record of its size in struct inode,
which is updated when we write the block to disk.  The cleaner routines
thus have ready access to what size is the correct size for this block,
on disk.

Fixed a related bug: if a file with fragments is being cleaned
(fragments being cleaned) at the same time it is being extended beyond
NDADDR blocks, we could write a bogus FINFO record that has a frag in the
middle; when it was cleaned this would give back bogus file data.  Don't
write the indirect blocks in this case, since there is no need.

lfs_fragextend and lfs_truncate no longer require the seglock, but instead
take a shared lock, which the seglock locks exclusively.

Revision 1.24.4.2 / (download) - annotate - [select for diffs], Sun Jun 23 17:52:14 2002 UTC (12 years, 5 months ago) by jdolecek
Branch: kqueue
Changes since 1.24.4.1: +1 -16 lines
Diff to previous 1.24.4.1 (colored) to branchpoint 1.24 (colored)

catch up with -current on kqueue branch

Revision 1.27.8.1 / (download) - annotate - [select for diffs], Thu Jun 20 15:53:14 2002 UTC (12 years, 5 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.27: +1 -16 lines
Diff to previous 1.27 (colored)

catch up with -current.

Revision 1.27.10.1 / (download) - annotate - [select for diffs], Thu Jun 20 03:52:33 2002 UTC (12 years, 5 months ago) by lukem
Branch: netbsd-1-6
CVS Tags: netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001
Changes since 1.27: +1 -16 lines
Diff to previous 1.27 (colored) next main 1.28 (colored)

Pull up revision 1.28 (requested by perseant in ticket #325):
For synchronous writes, keep separate i/o counters for each write, so
processes don't have to wait for one another to finish (e.g., nfsd seems
to be a little happier now, though I haven't measured the difference).
Synchronous checkpoints, however, must always wait for all i/o to finish.
Take the contents of the callback functions and have them run in thread
context instead (aiodoned thread).  lfs_iocount no longer has to be
protected in splbio(), and quite a bit less of the segment construction
loop needs to be in splbio() as well.
If lfs_markv is handed a block that is not the correct size according to
the inode, refuse to process it.  (Formerly it was extended to the "correct"
size.)  This is possibly more prone to deadlock, but less prone to corruption.
lfs_segclean now outright refuses to clean segments that appear to have live
bytes in them.  Again this may be more prone to deadlock but avoids
corruption.
Replace ufsspec_close and ufsfifo_close with LFS equivalents; this means
that no UFS functions need to know about LFS_ITIMES any more.  Remove
the reference from ufs/inode.h.
Tested on i386, test-compiled on alpha.

Revision 1.23.2.5 / (download) - annotate - [select for diffs], Thu Jun 20 03:50:36 2002 UTC (12 years, 5 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.23.2.4: +1 -16 lines
Diff to previous 1.23.2.4 (colored) to branchpoint 1.23 (colored)

Catch up to -current.

Revision 1.28 / (download) - annotate - [select for diffs], Sun Jun 16 00:13:17 2002 UTC (12 years, 5 months ago) by perseant
Branch: MAIN
Changes since 1.27: +1 -16 lines
Diff to previous 1.27 (colored)

For synchronous writes, keep separate i/o counters for each write, so
processes don't have to wait for one another to finish (e.g., nfsd seems
to be a little happier now, though I haven't measured the difference).
Synchronous checkpoints, however, must always wait for all i/o to finish.

Take the contents of the callback functions and have them run in thread
context instead (aiodoned thread).  lfs_iocount no longer has to be
protected in splbio(), and quite a bit less of the segment construction
loop needs to be in splbio() as well.

If lfs_markv is handed a block that is not the correct size according to
the inode, refuse to process it.  (Formerly it was extended to the "correct"
size.)  This is possibly more prone to deadlock, but less prone to corruption.

lfs_segclean now outright refuses to clean segments that appear to have live
bytes in them.  Again this may be more prone to deadlock but avoids
corruption.

Replace ufsspec_close and ufsfifo_close with LFS equivalents; this means
that no UFS functions need to know about LFS_ITIMES any more.  Remove
the reference from ufs/inode.h.

Tested on i386, test-compiled on alpha.

Revision 1.24.4.1 / (download) - annotate - [select for diffs], Thu Jan 10 20:05:21 2002 UTC (12 years, 10 months ago) by thorpej
Branch: kqueue
Changes since 1.24: +6 -1 lines
Diff to previous 1.24 (colored)

Sync kqueue branch with -current.

Revision 1.23.2.4 / (download) - annotate - [select for diffs], Tue Jan 8 00:34:57 2002 UTC (12 years, 10 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.23.2.3: +2 -1 lines
Diff to previous 1.23.2.3 (colored) to branchpoint 1.23 (colored)

Catch up to -current.

Revision 1.27 / (download) - annotate - [select for diffs], Tue Dec 18 10:57:23 2001 UTC (12 years, 11 months ago) by fvdl
Branch: MAIN
CVS Tags: newlock-base, newlock, netbsd-1-6-base, ifpoll-base, ifpoll, eeh-devprop-base, eeh-devprop
Branch point for: netbsd-1-6, gehenna-devsw
Changes since 1.26: +2 -1 lines
Diff to previous 1.26 (colored)

Bring over fixes from FreeBSD that weren't incorporated yet, mainly
from Kirk McKusick. They implement taking pending block/inode frees
into account for the sake of correct statfs() numbers, and adding
a new softdep type (newdirblk) to correctly handle newly allocated
directory blocks.

Minor additional changes: 1) swap the newly introduced fs_pendinginodes
and fs_pendingblock fields in ffs_sb_swap, and 2) declare lkt_held
in the debug version of the softdep lock structure volatile, as it
can be modified from interrupt context #ifdef DEBUG.

Revision 1.23.2.3 / (download) - annotate - [select for diffs], Wed Nov 14 19:19:01 2001 UTC (13 years ago) by nathanw
Branch: nathanw_sa
Changes since 1.23.2.2: +2 -1 lines
Diff to previous 1.23.2.2 (colored) to branchpoint 1.23 (colored)

Catch up to -current.

Revision 1.25.2.1 / (download) - annotate - [select for diffs], Mon Nov 12 21:19:50 2001 UTC (13 years ago) by thorpej
Branch: thorpej-mips-cache
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored) next main 1.26 (colored)

Sync the thorpej-mips-cache branch with -current.

Revision 1.26 / (download) - annotate - [select for diffs], Fri Oct 26 05:46:57 2001 UTC (13 years, 1 month ago) by lukem
Branch: MAIN
CVS Tags: thorpej-mips-cache-base
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored)

this needs <ufs/ufs/quota.h>, so pull it in

Revision 1.24.6.1 / (download) - annotate - [select for diffs], Mon Oct 1 12:48:33 2001 UTC (13 years, 1 month ago) by fvdl
Branch: thorpej-devvp
Changes since 1.24: +4 -1 lines
Diff to previous 1.24 (colored) next main 1.25 (colored)

Catch up with -current.

Revision 1.23.2.2 / (download) - annotate - [select for diffs], Fri Sep 21 22:37:08 2001 UTC (13 years, 2 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.23.2.1: +4 -1 lines
Diff to previous 1.23.2.1 (colored) to branchpoint 1.23 (colored)

Catch up to -current.

Revision 1.25 / (download) - annotate - [select for diffs], Sat Sep 15 20:36:44 2001 UTC (13 years, 2 months ago) by chs
Branch: MAIN
CVS Tags: thorpej-devvp-base3, thorpej-devvp-base2, post-chs-ubcperf
Branch point for: thorpej-mips-cache
Changes since 1.24: +4 -1 lines
Diff to previous 1.24 (colored)

a whole bunch of changes to improve performance and robustness under load:

 - remove special treatment of pager_map mappings in pmaps.  this is
   required now, since I've removed the globals that expose the address range.
   pager_map now uses pmap_kenter_pa() instead of pmap_enter(), so there's
   no longer any need to special-case it.
 - eliminate struct uvm_vnode by moving its fields into struct vnode.
 - rewrite the pageout path.  the pager is now responsible for handling the
   high-level requests instead of only getting control after a bunch of work
   has already been done on its behalf.  this will allow us to UBCify LFS,
   which needs tighter control over its pages than other filesystems do.
   writing a page to disk no longer requires making it read-only, which
   allows us to write wired pages without causing all kinds of havoc.
 - use a new PG_PAGEOUT flag to indicate that a page should be freed
   on behalf of the pagedaemon when it's unlocked.  this flag is very similar
   to PG_RELEASED, but unlike PG_RELEASED, PG_PAGEOUT can be cleared if the
   pageout fails due to eg. an indirect-block buffer being locked.
   this allows us to remove the "version" field from struct vm_page,
   and together with shrinking "loan_count" from 32 bits to 16,
   struct vm_page is now 4 bytes smaller.
 - no longer use PG_RELEASED for swap-backed pages.  if the page is busy
   because it's being paged out, we can't release the swap slot to be
   reallocated until that write is complete, but unlike with vnodes we
   don't keep a count of in-progress writes so there's no good way to
   know when the write is done.  instead, when we need to free a busy
   swap-backed page, just sleep until we can get it busy ourselves.
 - implement a fast-path for extending writes which allows us to avoid
   zeroing new pages.  this substantially reduces cpu usage.
 - encapsulate the data used by the genfs code in a struct genfs_node,
   which must be the first element of the filesystem-specific vnode data
   for filesystems which use genfs_{get,put}pages().
 - eliminate many of the UVM pagerops, since they aren't needed anymore
   now that the pager "put" operation is a higher-level operation.
 - enhance the genfs code to allow NFS to use the genfs_{get,put}pages
   instead of a modified copy.
 - clean up struct vnode by removing all the fields that used to be used by
   the vfs_cluster.c code (which we don't use anymore with UBC).
 - remove kmem_object and mb_object since they were useless.
   instead of allocating pages to these objects, we now just allocate
   pages with no object.  such pages are mapped in the kernel until they
   are freed, so we can use the mapping to find the page to free it.
   this allows us to remove splvm() protection in several places.

The sum of all these changes improves write throughput on my
decstation 5000/200 to within 1% of the rate of NetBSD 1.5
and reduces the elapsed time for "make release" of a NetBSD 1.5
source tree on my 128MB pc to 10% less than a 1.5 kernel took.

Revision 1.23.2.1 / (download) - annotate - [select for diffs], Thu Jun 21 20:10:14 2001 UTC (13 years, 5 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.23: +4 -4 lines
Diff to previous 1.23 (colored)

Catch up to -current.

Revision 1.24 / (download) - annotate - [select for diffs], Tue Jun 5 09:19:33 2001 UTC (13 years, 5 months ago) by mrg
Branch: MAIN
CVS Tags: thorpej-devvp-base, pre-chs-ubcperf, perseant-lfsv2-base, perseant-lfsv2
Branch point for: thorpej-devvp, kqueue
Changes since 1.23: +4 -4 lines
Diff to previous 1.23 (colored)

only include "fs_lfs.h" if _KERNEL_OPT.

Revision 1.13.2.2 / (download) - annotate - [select for diffs], Thu Jan 18 09:24:05 2001 UTC (13 years, 10 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.13.2.1: +3 -1 lines
Diff to previous 1.13.2.1 (colored) to branchpoint 1.13 (colored) next main 1.14 (colored)

Sync with head (for UBC+NFS fixes, mostly).

Revision 1.23 / (download) - annotate - [select for diffs], Wed Jan 10 04:47:11 2001 UTC (13 years, 10 months ago) by chs
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Branch point for: nathanw_sa
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored)

attach the softdep pagecache pseudo-buffers to the inode
so we can find them quickly in the softdep truncate path.

Revision 1.13.2.1 / (download) - annotate - [select for diffs], Mon Nov 20 18:11:53 2000 UTC (14 years ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.13: +86 -54 lines
Diff to previous 1.13 (colored)

Update thorpej_scsipi to -current as of a month ago

Revision 1.19.2.1 / (download) - annotate - [select for diffs], Thu Sep 14 18:50:15 2000 UTC (14 years, 2 months ago) by perseant
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA
Changes since 1.19: +22 -7 lines
Diff to previous 1.19 (colored) next main 1.20 (colored)

Pull up recent LFS kernel changes (approved by thorpej):

ufs/ufs/inode.h, 1.20--1.22      (add i_lfs_effnblks extension ;
                                 make ITIMES aware of LFS_ITIMES;
                                 _LKM protection so userland progs
                                 compile)
ufs/ufs/ufs_vnops.c, 1.69, 1.71  (remove IN_ADIROP;
                                 use ITIMES instead of FFS_ITIMES)
ufs/ufs/ufs_readwrite.c, 1.27    (use lfs_reserve in lfs_write)
ufs/lfs/lfs.h, 1.26--1.32        (define LFS_EST_* macros ;
                                 change MIN_FREE_SEGS to lfs_minfreesegs ;
                                 add avail and bfree to CLEANERINFO ;
                                 change lfs_uinodes to signed ;
                                 change lfs_dmeta to signed ;
                                 add whitespace to line up structure
                                 members ;
                                 explicit cast to int32_t in LFS_EST_*
                                 macros)
ufs/lfs/lfs_alloc.c, back out 1.34.2.3 (pullups of 1.39, 1.40);
then pull up         1.38        (clean up on error)
                     1.39--1.43  (restore fvdl's ufs_hashlock fix ;
                                 restore fvdl's ufs_hashlock fix ;
                                 set i_lfs_effnblks ;
                                 use UINO macros ;
                                 add comments and fix long lines)
ufs/lfs/lfs_balloc.c, 1.19       (don't succeed halfway)
                      1.21--1.25 (use i_lfs_effnblks ;
                                 fix i_lfs_effnblks computation and
                                 quieten ;
                                 fix i_ffs_blocks in unwritten fragment ;
                                 remove useless debugging check ;
                                 add comments and (c) 2000)
ufs/lfs/lfs_bio.c, 1.24--1.30    (cleanup and make lfs_flush_fs take
                                   "struct lfs *" instead of "struct
                                 mount *" ;
                                 use lfs_minfreeseg instead of
                                 MIN_FREE_SEGS ;
                                 use UINO macros, and copy bfree/avail
                                   to CLEANERINFO ;
                                 add lfs_reserve function ;
                                 1.28--1.30 fix printf formatting)
ufs/lfs/lfs_cksum.c, 1.13        (add (c) 2000)
ufs/lfs/lfs_debug.c, 1.11        (use btodb instead of DEV_BSIZE)
ufs/lfs/lfs_extern.h, 1.18, 1.20--1.21 (function prototype changes)
ufs/lfs/lfs_inode.c, 1.38        (rewrite lfs_truncate from
                                 ffs_truncate)
                     1.40--1.44  (count written and unwritten blocks
                                   seperately ;
                                 use disk block units instead of bytes ;
                                 remove unnecessary "mod" variable ;
                                 correct B_DELWRI to avoid bawrite panic ;
                                 use lfs_reserve)
ufs/lfs/lfs_segment.c, 1.52-1.59 (use lfs_dmeta to note used summaries ;
                                 check for UNWRITTEN in indirect blocks ;
                                 more debugging stuff inside #ifdef
                                 DEBUG_LFS ;
                                 use LK_CANRECURSE ;
                                 don't drop dirty indirect blocks ;
                                 use UINO macros ;
                                 don't hose the free list ;
                                 use btodb() instead of DEV_BSIZE ;
                                 make it compile again (oops))
ufs/lfs/lfs_subr.c, 1.16--1.17   (check for locked inodes before
                                 changing ;
                                 use btodb() instead of DEV_BSIZE, (c)
                                 2000)
ufs/lfs/lfs_syscalls.c, back out 1.41.4.2 (fvdl's ufs_hashlock fix);
then pull up          1.43       (use lfs_dmeta)
                      1.44--1.45 (restore fvdl's ufs_hashlock fix)
                      1.46--1.47 (fix lfs_avail leakage from sblock
                                 segments ;
                                 use UINO macros)
                      1.49       (bounds-check inode numbers in
                                 lfs_markv)
ufs/lfs/lfs_vfsops.c, 1.53       (use LFS_EST_* macros in lfs_statfs)
                      1.56--1.58 (initialize lfs_minfreeseg, lfs_effnblk ;
                                 initialize lfs_uinodes ;
                                 initialize lfs_ravail)
ufs/lfs/lfs_vnops.c, 1.40        (remove VDIROP from removed files)
                     1.42--1.44  (move SET_ENDOP below the removal of
                                 VDIROP ;
                                 use UINO macros and add lfs_itimes
                                 function ;
                                 use lfs_reserve in dirops)

Revision 1.22 / (download) - annotate - [select for diffs], Thu Jul 6 20:32:06 2000 UTC (14 years, 4 months ago) by perseant
Branch: MAIN
Changes since 1.21: +3 -1 lines
Diff to previous 1.21 (colored)

Fix so non-kernel code will compile (_LKM)

Revision 1.21 / (download) - annotate - [select for diffs], Wed Jul 5 22:25:45 2000 UTC (14 years, 4 months ago) by perseant
Branch: MAIN
Changes since 1.20: +14 -1 lines
Diff to previous 1.20 (colored)

Clean up accounting of lfs_uinodes (dirty but unwritten inodes).

Make lfs_uinodes a signed quantity for debugging purposes, and set it to
zero as fs mount time.

Enclose setting/clearing of the dirty flags (IN_MODIFIED, IN_ACCESSED,
IN_CLEANING) in macros, and use those macros everywhere.  Make
LFS_ITIMES use these macros; updated the ITIMES macro in inode.h to know
about this.  Make ufs_getattr use ITIMES instead of FFS_ITIMES.

Revision 1.20 / (download) - annotate - [select for diffs], Mon Jul 3 01:45:58 2000 UTC (14 years, 4 months ago) by perseant
Branch: MAIN
Changes since 1.19: +7 -7 lines
Diff to previous 1.19 (colored)

Allow the number of free segments reserved for the cleaner to be
parametrized in the filesystem, defaulting to MIN_FREE_SEGS = 2 but set
to something more reasonable at newfs_lfs time.

Note the number of blocks that have been scheduled for writing but which
are not yet on disk in an inode extension, i_lfs_effnblks.  Move
i_ffs_effnlink out of the ffs extension and onto the main inode, since
it's used all over the shared code and the lfs extension would clobber
it.

At inode write time, indirect blocks and inode-held blocks of inodes
that have i_lfs_effnblks != i_ffs_blocks are cleansed of UNWRITTEN disk
addresses, so that these never make it to disk.

Revision 1.17.2.1 / (download) - annotate - [select for diffs], Thu Jun 22 17:10:40 2000 UTC (14 years, 5 months ago) by minoura
Branch: minoura-xpg4dl
Changes since 1.17: +13 -8 lines
Diff to previous 1.17 (colored) next main 1.18 (colored)

Sync w/ netbsd-1-5-base.

Revision 1.19 / (download) - annotate - [select for diffs], Mon May 29 18:41:07 2000 UTC (14 years, 6 months ago) by mycroft
Branch: MAIN
CVS Tags: netbsd-1-5-base, netbsd-1-5-ALPHA2
Branch point for: netbsd-1-5
Changes since 1.18: +4 -2 lines
Diff to previous 1.18 (colored)

Pull in IN_ACCESSED changes and some MNT_LAZY `bug fixes' from FFS to EXT2FS.

Revision 1.18 / (download) - annotate - [select for diffs], Mon May 29 18:04:31 2000 UTC (14 years, 6 months ago) by mycroft
Branch: MAIN
Changes since 1.17: +10 -7 lines
Diff to previous 1.17 (colored)

Add a new inode flags called IN_ACCESSED.  This used in place of IN_MODIFIED
to record that the atime was updated.  In ffs_update(), we only do synchronous
writes if something *other* than the atime was changed.

Revision 1.17 / (download) - annotate - [select for diffs], Sat May 27 00:19:55 2000 UTC (14 years, 6 months ago) by perseant
Branch: MAIN
CVS Tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Changes since 1.16: +2 -1 lines
Diff to previous 1.16 (colored)

Prevent dirops from getting around lfs_check and wedging the buffer cache.
All the dirop vnops now mark the inodes with a new flag, IN_ADIROP, which
is removed as soon as the dirop is done (as opposed to VDIROP which stays
until the file is written).  To address one issue raised in PR#9357.

Revision 1.13.8.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:36:41 1999 UTC (14 years, 11 months ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.13: +58 -47 lines
Diff to previous 1.13 (colored) next main 1.14 (colored)

Pull up to last week's -current.

Revision 1.16 / (download) - annotate - [select for diffs], Thu Nov 18 08:26:21 1999 UTC (15 years ago) by enami
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, chs-ubc2-newbase
Changes since 1.15: +4 -2 lines
Diff to previous 1.15 (colored)

Define i_e2fs_rdev.

Revision 1.15 / (download) - annotate - [select for diffs], Thu Nov 18 08:23:22 1999 UTC (15 years ago) by enami
Branch: MAIN
Changes since 1.14: +50 -50 lines
Diff to previous 1.14 (colored)

Cosmetic changes; fix indentation and usage of white spaces.

Revision 1.14 / (download) - annotate - [select for diffs], Mon Nov 15 18:49:15 1999 UTC (15 years ago) by fvdl
Branch: MAIN
Changes since 1.13: +12 -3 lines
Diff to previous 1.13 (colored)

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

Revision 1.13.4.1 / (download) - annotate - [select for diffs], Tue Oct 19 12:50:47 1999 UTC (15 years, 1 month ago) by fvdl
Branch: fvdl-softdep
Changes since 1.13: +12 -3 lines
Diff to previous 1.13 (colored) next main 1.14 (colored)

Bring in Kirk McKusick's FFS softdep code on a branch.

Revision 1.12.4.1 / (download) - annotate - [select for diffs], Mon Aug 2 22:58:22 1999 UTC (15 years, 3 months ago) by thorpej
Branch: chs-ubc2
Changes since 1.12: +1 -2 lines
Diff to previous 1.12 (colored) next main 1.13 (colored)

Update from trunk.

Revision 1.13 / (download) - annotate - [select for diffs], Thu Jul 8 01:06:06 1999 UTC (15 years, 4 months ago) by wrstuden
Branch: MAIN
CVS Tags: fvdl-softdep-base, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-base
Branch point for: wrstuden-devbsize, thorpej_scsipi, fvdl-softdep
Changes since 1.12: +1 -2 lines
Diff to previous 1.12 (colored)

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.

Revision 1.12 / (download) - annotate - [select for diffs], Tue Mar 9 23:57:14 1999 UTC (15 years, 8 months ago) by perseant
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Changes since 1.11: +2 -1 lines
Diff to previous 1.11 (colored)

Add IN_CLEANING flag for LFS

Revision 1.11 / (download) - annotate - [select for diffs], Sun Mar 1 02:23:36 1998 UTC (16 years, 9 months ago) by fvdl
Branch: MAIN
CVS Tags: kenh-if-detach-base, kenh-if-detach, eeh-paddr_t-base, eeh-paddr_t, chs-ubc-base, chs-ubc
Changes since 1.10: +9 -14 lines
Diff to previous 1.10 (colored)

Merge with Lite2 + local changes

Revision 1.1.1.2 / (download) - annotate - [select for diffs] (vendor branch), Sun Mar 1 02:14:06 1998 UTC (16 years, 9 months ago) by fvdl
Branch: netbsd, CSRG
CVS Tags: lite-2
Changes since 1.1.1.1: +43 -53 lines
Diff to previous 1.1.1.1 (colored)

Import 4.4BSD-Lite2

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Sun Mar 1 02:10:50 1998 UTC (16 years, 9 months ago) by fvdl
Branch: netbsd, CSRG
CVS Tags: lite-1, date-03-may-96
Changes since 1.1: +2 -4 lines
Diff to previous 1.1 (colored)

Import 4.4BSD-Lite for reference

Revision 1.10 / (download) - annotate - [select for diffs], Wed Jun 11 10:10:08 1997 UTC (17 years, 5 months ago) by bouyer
Branch: MAIN
CVS Tags: thorpej-signal-base, thorpej-signal, netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA, netbsd-1-3, marc-pcmcia-bp, marc-pcmcia-base, marc-pcmcia, bouyer-scsipi
Changes since 1.9: +94 -27 lines
Diff to previous 1.9 (colored)

Add support for ext2fs, this needed a few modifications to ufs/ufs/inode.h:
- added an "union inode_ext" to struct inode, for the per-fs extentions.
  For now only ext2fs uses it.
- i_din is now an union:
	union {
		struct  dinode ffs_din; /* 128 bytes of the on-disk dinode. */
		struct ext2fs_dinode e2fs_din; /* 128 bytes of the on-disk dinode. */
	} i_din
  Added a lot of #define i_ffs_* and i_e2fs_* to access the fields.
- Added two macros: FFS_ITIMES and EXT2FS_ITIMES. ITIMES calls the rigth
  macro, depending on the time of the inode. ITIMES is used where necessary,
  FFS_ITIMES and EXT2FS_ITIMES in other places.

Revision 1.9 / (download) - annotate - [select for diffs], Sun Sep 1 23:49:40 1996 UTC (18 years, 2 months ago) by mycroft
Branch: MAIN
CVS Tags: thorpej-setroot, mrg-vm-swap, is-newarp-before-merge, is-newarp-base, is-newarp
Changes since 1.8: +12 -7 lines
Diff to previous 1.8 (colored)

Add a set of generic file system operations that most file systems use.
Also, fix some time stamp bogosities.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Jun 15 23:22:50 1995 UTC (19 years, 5 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-2-base, netbsd-1-2-RELEASE, netbsd-1-2-PATCH001, netbsd-1-2-BETA, netbsd-1-2, netbsd-1-1-base, netbsd-1-1-RELEASE, netbsd-1-1-PATCH001, netbsd-1-1
Changes since 1.7: +11 -14 lines
Diff to previous 1.7 (colored)

compensate for timeval/timespec/stat structure changes.

Revision 1.7 / (download) - annotate - [select for diffs], Sun Mar 26 20:38:15 1995 UTC (19 years, 8 months ago) by jtc
Branch: MAIN
Changes since 1.6: +3 -3 lines
Diff to previous 1.6 (colored)

KERNEL -> _KERNEL

Revision 1.6 / (download) - annotate - [select for diffs], Wed Dec 21 20:00:21 1994 UTC (19 years, 11 months ago) by mycroft
Branch: MAIN
Changes since 1.5: +2 -0 lines
Diff to previous 1.5 (colored)

Add RCS ids where missing.

Revision 1.5 / (download) - annotate - [select for diffs], Wed Dec 14 13:03:57 1994 UTC (19 years, 11 months ago) by mycroft
Branch: MAIN
Changes since 1.4: +53 -60 lines
Diff to previous 1.4 (colored)

Sync with CSRG.

Revision 1.4 / (download) - annotate - [select for diffs], Thu Oct 20 04:21:19 1994 UTC (20 years, 1 month ago) by cgd
Branch: MAIN
Changes since 1.3: +43 -40 lines
Diff to previous 1.3 (colored)

update for new syscall args description mechanism, and deal safely
with wider types.

Revision 1.3 / (download) - annotate - [select for diffs], Thu Jun 30 08:05:58 1994 UTC (20 years, 5 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-0-base, netbsd-1-0-RELEASE, netbsd-1-0-PATCH1, netbsd-1-0-PATCH06, netbsd-1-0-PATCH05, netbsd-1-0-PATCH04, netbsd-1-0-PATCH03, netbsd-1-0-PATCH02, netbsd-1-0-PATCH0, netbsd-1-0
Changes since 1.2: +2 -3 lines
Diff to previous 1.2 (colored)

fix the definition of a dev_t

Revision 1.2 / (download) - annotate - [select for diffs], Wed Jun 29 06:47:21 1994 UTC (20 years, 5 months ago) by cgd
Branch: MAIN
Changes since 1.1: +3 -2 lines
Diff to previous 1.1 (colored)

New RCS ID's, take two.  they're more aesthecially pleasant, and use 'NetBSD'

Revision 1.1 / (download) - annotate - [select for diffs], Wed Jun 8 11:43:07 1994 UTC (20 years, 5 months ago) by mycroft
Branch: MAIN

Update to 4.4-Lite fs code, with local changes.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>