The NetBSD Project

CVS log for src/sys/ufs/ffs/ffs_snapshot.c

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.137 / (download) - annotate - [select for diffs], Fri Sep 5 06:10:07 2014 UTC (7 weeks, 6 days ago) by matt
Branch: MAIN
CVS Tags: HEAD
Changes since 1.136: +5 -3 lines
Diff to previous 1.136 (colored)

Don't nest structure definitions.

Revision 1.119.2.3 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:44 2014 UTC (2 months, 1 week ago) by tls
Branch: tls-maxphys
Changes since 1.119.2.2: +112 -122 lines
Diff to previous 1.119.2.2 (colored) to branchpoint 1.119 (colored) next main 1.120 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.133.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:56:58 2014 UTC (2 months, 2 weeks ago) by tls
Branch: tls-earlyentropy
Changes since 1.133: +50 -28 lines
Diff to previous 1.133 (colored) next main 1.134 (colored)

Rebase.

Revision 1.136 / (download) - annotate - [select for diffs], Thu Jul 10 06:02:40 2014 UTC (3 months, 3 weeks ago) by dholland
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-base, netbsd-7
Changes since 1.135: +3 -3 lines
Diff to previous 1.135 (colored)

Use an explicit compare to 0 for an immediate error result, not !.
Using ! is perfectly clear on variables like "error" or "result",
but directly on a function call it tends to look like a mistake.

Revision 1.135 / (download) - annotate - [select for diffs], Fri May 30 08:40:09 2014 UTC (5 months ago) by hannken
Branch: MAIN
Changes since 1.134: +4 -4 lines
Diff to previous 1.134 (colored)

Testing "v_usecount == 1" for exclusive reference will not always
work -- remove and test only readonly.

Revision 1.134 / (download) - annotate - [select for diffs], Sat May 24 16:34:04 2014 UTC (5 months ago) by christos
Branch: MAIN
Changes since 1.133: +47 -25 lines
Diff to previous 1.133 (colored)

Introduce a selector function to the vfs vnode iterator so that we don't
need to vget() vnodes that we are not interested at, and optimize locking
a bit. Iterator changes reviewed by Hannken (thanks), the rest of the bugs
are mine.

Revision 1.118.2.3 / (download) - annotate - [select for diffs], Thu May 22 11:41:18 2014 UTC (5 months, 1 week ago) by yamt
Branch: yamt-pagecache
Changes since 1.118.2.2: +100 -126 lines
Diff to previous 1.118.2.2 (colored) to branchpoint 1.118 (colored) next main 1.119 (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.127.2.1 / (download) - annotate - [select for diffs], Sun May 18 17:46:21 2014 UTC (5 months, 1 week ago) by rmind
Branch: rmind-smpnet
Changes since 1.127: +25 -57 lines
Diff to previous 1.127 (colored) next main 1.128 (colored)

sync with head

Revision 1.133 / (download) - annotate - [select for diffs], Mon Mar 17 09:29:20 2014 UTC (7 months, 2 weeks ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.132: +17 -39 lines
Diff to previous 1.132 (colored)

Change snapshot_expunge() to use vfs_vnode_iterator.

Revision 1.132 / (download) - annotate - [select for diffs], Tue Dec 17 01:17:39 2013 UTC (10 months, 1 week ago) by joerg
Branch: MAIN
Changes since 1.131: +3 -3 lines
Diff to previous 1.131 (colored)

ib_get is not used in the evbarm/OPENRD kernel, so mark it as such.

Revision 1.131 / (download) - annotate - [select for diffs], Sat Oct 19 19:28:13 2013 UTC (12 months, 1 week ago) by martin
Branch: MAIN
Changes since 1.130: +4 -4 lines
Diff to previous 1.130 (colored)

Mark unused (in the !FFS_EI case) variables as such.

Revision 1.130 / (download) - annotate - [select for diffs], Sat Oct 19 16:30:57 2013 UTC (12 months, 1 week ago) by martin
Branch: MAIN
Changes since 1.129: +3 -3 lines
Diff to previous 1.129 (colored)

Mark a potentially unused (ifndef FFS_EI) variable

Revision 1.129 / (download) - annotate - [select for diffs], Mon Sep 30 18:58:00 2013 UTC (12 months, 4 weeks ago) by hannken
Branch: MAIN
Changes since 1.128: +6 -6 lines
Diff to previous 1.128 (colored)

Replace macro v_specmountpoint with two functions spec_node_getmountedfs()
and spec_node_setmountedfs() to manage the file system mounted on a device.
Assert the device is a block device.

Welcome to 6.99.24

Discussed on tech-kern@ some time ago.

Reviewed by: David Holland <dholland@netbsd.org>

Revision 1.128 / (download) - annotate - [select for diffs], Fri Sep 13 20:15:33 2013 UTC (13 months, 2 weeks ago) by joerg
Branch: MAIN
Changes since 1.127: +2 -12 lines
Diff to previous 1.127 (colored)

Kill unused function ib_assign.

Revision 1.127 / (download) - annotate - [select for diffs], Sun Jun 23 22:03:34 2013 UTC (16 months ago) by dholland
Branch: MAIN
CVS Tags: riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2
Branch point for: rmind-smpnet
Changes since 1.126: +18 -18 lines
Diff to previous 1.126 (colored)

Stick ffs_ in front of the following macros:
   fragstoblks()
   blkstofrags()
   fragnum()
   blknum()

to finish the job of distinguishing them from the lfs versions, which
Christos renamed the other day.

I believe this is the last of the overtly ambiguous exported symbols
from ffs... or at least, the last of the ones that conflicted with lfs.
ffs still pollutes the C namespace very broadly (as does ufs) and this
needs quite a bit more cleanup.

XXX: boo on macros with lowercase names. But I'm not tackling that just yet.

Revision 1.126 / (download) - annotate - [select for diffs], Sun Jun 23 07:28:37 2013 UTC (16 months, 1 week ago) by dholland
Branch: MAIN
Changes since 1.125: +28 -28 lines
Diff to previous 1.125 (colored)

Stick ffs_, ext2_, chfs_, filecore_, cd9660_, or mfs_ in front of
the following symbols so as to disambiguate fully. (Christos already
did the lfs ones.)

   lblkno
   lblktosize
   lfragtosize
   numfrags
   blkroundup
   fragroundup

Revision 1.119.2.2 / (download) - annotate - [select for diffs], Sun Jun 23 06:18:39 2013 UTC (16 months, 1 week ago) by tls
Branch: tls-maxphys
Changes since 1.119.2.1: +32 -26 lines
Diff to previous 1.119.2.1 (colored) to branchpoint 1.119 (colored)

resync from head

Revision 1.125 / (download) - annotate - [select for diffs], Sun Jun 23 02:06:05 2013 UTC (16 months, 1 week ago) by dholland
Branch: MAIN
Changes since 1.124: +9 -9 lines
Diff to previous 1.124 (colored)

fsbtodb() -> FFS_FSBTODB(), EXT2_FSBTODB(), or MFS_FSBTODB()
dbtofsb() -> FFS_DBTOFSB() or EXT2_DBTOFSB()

(Christos already did the lfs ones a few days back)

Revision 1.124 / (download) - annotate - [select for diffs], Wed Jun 19 17:51:26 2013 UTC (16 months, 1 week ago) by dholland
Branch: MAIN
Changes since 1.123: +20 -20 lines
Diff to previous 1.123 (colored)

Rename ambiguous macros:
   MAXDIRSIZE -> UFS_MAXDIRSIZE or LFS_MAXDIRSIZE
   NINDIR -> FFS_NINDIR, EXT2_NINDIR, LFS_NINDIR, or MFS_NINDIR
   INOPB -> FFS_INOPB, LFS_INOPB
   INOPF -> FFS_INOPF, LFS_INOPF
   blksize -> ffs_blksize, ext2_blksize, or lfs_blksize
   sblksize -> ffs_blksize

These are not the only ambiguously defined filesystem macros, of
course, there's a pile more. I may not have found all the ambiguous
definitions of blksize(), too, as there are a lot of other things
called 'blksize' in the system.

Revision 1.123 / (download) - annotate - [select for diffs], Sun Jun 16 13:33:30 2013 UTC (16 months, 2 weeks ago) by hannken
Branch: MAIN
Changes since 1.122: +4 -4 lines
Diff to previous 1.122 (colored)

Add an UFS_SNAPGONE() ufs op replacing the calls
to ffs_snapgone() in ufs_lookup.c.

Ok: David Holland <dholland@netbsd.org>

Welcome to 6.99.22

Revision 1.122 / (download) - annotate - [select for diffs], Tue May 7 09:40:54 2013 UTC (17 months, 3 weeks ago) by hannken
Branch: MAIN
CVS Tags: khorben-n900
Changes since 1.121: +12 -6 lines
Diff to previous 1.121 (colored)

When invalidating short buffers on the snapshots clean list use bbusy()
to mark the buffer busy.  There exists a small window where a buffer is
done but not released and therefore still busy.

Revision 1.119.2.1 / (download) - annotate - [select for diffs], Mon Feb 25 00:30:15 2013 UTC (20 months ago) by tls
Branch: tls-maxphys
Changes since 1.119: +40 -42 lines
Diff to previous 1.119 (colored)

resync with head

Revision 1.118.2.2 / (download) - annotate - [select for diffs], Wed Jan 23 00:06:32 2013 UTC (21 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.118.2.1: +40 -42 lines
Diff to previous 1.118.2.1 (colored) to branchpoint 1.118 (colored)

sync with head

Revision 1.121 / (download) - annotate - [select for diffs], Tue Jan 22 09:39:16 2013 UTC (21 months, 1 week ago) by dholland
Branch: MAIN
CVS Tags: yamt-pagecache-base8, agc-symver-base, agc-symver
Changes since 1.120: +37 -36 lines
Diff to previous 1.120 (colored)

Stuff UFS_ in front of a few of ufs's symbols to reduce namespace
pollution. Specifically:
   ROOTINO -> UFS_ROOTINO
   WINO -> UFS_WINO
   NXADDR -> UFS_NXADDR
   NDADDR -> UFS_NDADDR
   NIADDR -> UFS_NIADDR
   MAXSYMLINKLEN -> UFS_MAXSYMLINKLEN
   MAXSYMLINKLEN_UFS[12] -> UFS[12]_MAXSYMLINKLEN (for consistency)

Sort out ext2fs's misuse of NDADDR and NIADDR; fortunately, these have
the same values in ext2fs and ffs.

No functional change intended.

Revision 1.120 / (download) - annotate - [select for diffs], Thu Dec 20 08:03:44 2012 UTC (22 months, 1 week ago) by hannken
Branch: MAIN
Changes since 1.119: +5 -8 lines
Diff to previous 1.119 (colored)

Change bread() and breadn() to never return a buffer on
error and modify all callers to not brelse() on error.

Welcome to 6.99.16

PR kern/46282 (6.0_BETA crash: msdosfs_bmap -> pcbmap -> bread -> bio_doread)

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

sync with head

Revision 1.118.6.1 / (download) - annotate - [select for diffs], Thu Apr 5 21:33:51 2012 UTC (2 years, 6 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.118: +5 -5 lines
Diff to previous 1.118 (colored) next main 1.119 (colored)

sync to latest -current.

Revision 1.119 / (download) - annotate - [select for diffs], Tue Mar 13 18:41:13 2012 UTC (2 years, 7 months ago) by elad
Branch: MAIN
CVS Tags: yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base10
Branch point for: tls-maxphys
Changes since 1.118: +5 -5 lines
Diff to previous 1.118 (colored)

Replace the remaining KAUTH_GENERIC_ISSUSER authorization calls with
something meaningful. All relevant documentation has been updated or
written.

Most of these changes were brought up in the following messages:

    http://mail-index.netbsd.org/tech-kern/2012/01/18/msg012490.html
    http://mail-index.netbsd.org/tech-kern/2012/01/19/msg012502.html
    http://mail-index.netbsd.org/tech-kern/2012/02/17/msg012728.html

Thanks to christos, manu, njoly, and jmmv for input.

Huge thanks to pgoyette for spinning these changes through some build
cycles and ATF.

Revision 1.118 / (download) - annotate - [select for diffs], Fri Oct 7 09:35:06 2011 UTC (3 years ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, 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-pre-base2, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.117: +3 -6 lines
Diff to previous 1.117 (colored)

As vnalloc() always allocates with PR_WAITOK there is no longer the need
to test its result for NULL.

Revision 1.117 / (download) - annotate - [select for diffs], Fri Jul 1 14:28:21 2011 UTC (3 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.116: +19 -5 lines
Diff to previous 1.116 (colored)

ffs_copyonwrite(): If the write is to the in-file-system journal
    there is no need to lock and check the snapshots.

Revision 1.115.2.1 / (download) - annotate - [select for diffs], Thu Jun 23 14:20:30 2011 UTC (3 years, 4 months ago) by cherry
Branch: cherry-xenmp
Changes since 1.115: +6 -6 lines
Diff to previous 1.115 (colored) next main 1.116 (colored)

Catchup with rmind-uvmplock merge.

Revision 1.82.4.4 / (download) - annotate - [select for diffs], Sat Jun 18 17:00:26 2011 UTC (3 years, 4 months ago) by bouyer
Branch: netbsd-5
CVS Tags: netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2
Changes since 1.82.4.3: +197 -110 lines
Diff to previous 1.82.4.3 (colored) to branchpoint 1.82 (colored) next main 1.83 (colored)

Pull up following revision(s) (requested by hannken in ticket #1627):
	sys/kern/vfs_wapbl.c: revisions			1.41-1.42
	sbin/dump/snapshot.c: revisions			1.6 (patch)
	share/man/man4/fss.4: revisions			1.15 (patch)
	sys/dev/fss.c: revisions			1.73 (patch)
	sys/dev/fssvar.h: revisions			1.25
	usr.sbin/fssconfig/fssconfig.c: revisions	1.7
	sys/ufs/ffs/ffs_balloc.c: revisions		1.54
	sys/ufs/ffs/ffs_snapshot.c: revisions		1.90, 1.98, 1.100-1.101, 1.103-1.110, 1.111, 1.112-1.115 (patch)

- Try to keep snapshot indirect blocks contiguous.  This speeds up snapshot
  creation by a factor of ~3 and reduces the file system suspension time by
  a factor of ~5.

- Refine the scope of WAPBL transactions and the limit for deallocations in
  one transaction so we should no longer get a "wapbl_flush: current
  transaction too big to flush" panic when creating or removing snapshots
  on larger logging disks.

- fss(4): Allow FSSIOCSET to set the initial flags.  Add a new flag
  "FSS_UNLINK_ON_CREATE" to unlink the backing store before the snapshot
  gets created.  With this change dump(8) no longer dumps the zero-sized,
  but named snapshot it is working on.

Revision 1.116 / (download) - annotate - [select for diffs], Sun Jun 12 03:36:00 2011 UTC (3 years, 4 months ago) by rmind
Branch: MAIN
Changes since 1.115: +6 -6 lines
Diff to previous 1.115 (colored)

Welcome to 5.99.53!  Merge rmind-uvmplock branch:

- Reorganize locking in UVM and provide extra serialisation for pmap(9).
  New lock order: [vmpage-owner-lock] -> pmap-lock.

- Simplify locking in some pmap(9) modules by removing P->V locking.

- Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share
  the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs).

- Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner.
  Add TLBSTATS option for x86 to collect statistics about TLB shootdowns.

- Unify /dev/mem et al in MI code and provide required locking (removes
  kernel-lock on some ports).  Also, avoid cache-aliasing issues.

Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches
formed the core changes of this branch.

Revision 1.102.2.1 / (download) - annotate - [select for diffs], Mon Jun 6 09:10:16 2011 UTC (3 years, 4 months ago) by jruoho
Branch: jruoho-x86intr
Changes since 1.102: +246 -126 lines
Diff to previous 1.102 (colored) next main 1.103 (colored)

Sync with HEAD.

Revision 1.97.4.5 / (download) - annotate - [select for diffs], Tue May 31 03:05:13 2011 UTC (3 years, 5 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.97.4.4: +5 -1 lines
Diff to previous 1.97.4.4 (colored) to branchpoint 1.97 (colored) next main 1.98 (colored)

sync with head

Revision 1.115 / (download) - annotate - [select for diffs], Sun May 8 18:37:15 2011 UTC (3 years, 5 months ago) by hannken
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base
Branch point for: cherry-xenmp
Changes since 1.114: +13 -27 lines
Diff to previous 1.114 (colored)

Revert previous commit.  Locking the snapshot vnode while the file system
is suspended extends the suspension until the vnode gets unlocked by
the caller of ffs_snapshot().

Resuming the file system before expunging all snapshots and syncing the
snapshot creates races and deadlocks with journaling file systems at least.

Revision 1.114 / (download) - annotate - [select for diffs], Fri Apr 29 09:45:15 2011 UTC (3 years, 6 months ago) by hannken
Branch: MAIN
Changes since 1.113: +27 -11 lines
Diff to previous 1.113 (colored)

Before expunging all snapshots take the snapshot lock and resume the file
system as this is sufficient for the remaining operations.

Reduces the time the file system is suspended and should make this time
independent of the number of snapshots already present.

Revision 1.113 / (download) - annotate - [select for diffs], Sat Apr 23 08:23:52 2011 UTC (3 years, 6 months ago) by hannken
Branch: MAIN
Changes since 1.112: +5 -3 lines
Diff to previous 1.112 (colored)

ffs_snapshot(): return an error if the node is an invalid snapshot.

Revision 1.97.4.4 / (download) - annotate - [select for diffs], Thu Apr 21 01:42:20 2011 UTC (3 years, 6 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.97.4.3: +68 -14 lines
Diff to previous 1.97.4.3 (colored) to branchpoint 1.97 (colored)

sync with head

Revision 1.112 / (download) - annotate - [select for diffs], Mon Apr 18 07:36:13 2011 UTC (3 years, 6 months ago) by hannken
Branch: MAIN
Changes since 1.111: +25 -3 lines
Diff to previous 1.111 (colored)

Preallocate all cylinder group blocks so we no longer redo ~50% of
the cylinder groups while the file system is suspended.
This was removed in error with Rev 1.16.

From Manuel Bouyer <bouyer@netbsd.org> via tech-kern.

Revision 1.111 / (download) - annotate - [select for diffs], Sun Mar 6 17:08:38 2011 UTC (3 years, 7 months ago) by bouyer
Branch: MAIN
Changes since 1.110: +47 -15 lines
Diff to previous 1.110 (colored)

merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.

Revision 1.97.4.3 / (download) - annotate - [select for diffs], Sat Mar 5 20:56:27 2011 UTC (3 years, 7 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.97.4.2: +165 -101 lines
Diff to previous 1.97.4.2 (colored) to branchpoint 1.97 (colored)

sync with head

Revision 1.102.4.8 / (download) - annotate - [select for diffs], Sat Mar 5 15:10:52 2011 UTC (3 years, 7 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102.4.7: +77 -96 lines
Diff to previous 1.102.4.7 (colored) to branchpoint 1.102 (colored) next main 1.103 (colored)

Sync with HEAD

Revision 1.110 / (download) - annotate - [select for diffs], Thu Feb 24 09:38:57 2011 UTC (3 years, 8 months ago) by hannken
Branch: MAIN
CVS Tags: bouyer-quota2-nbase
Changes since 1.109: +10 -9 lines
Diff to previous 1.109 (colored)

fss(4): Allow FSSIOCSET to set the initial flags.  Add a new flag
        "FSS_UNLINK_ON_CREATE" to unlink the backing store before
        the snapshot gets created.

With this change dump(8) no longer dumps the zero-sized, but named
snapshot it is working on.  Same applies to fsck_ffs(8).

Revision 1.109 / (download) - annotate - [select for diffs], Wed Feb 23 17:05:33 2011 UTC (3 years, 8 months ago) by dyoung
Branch: MAIN
Changes since 1.108: +3 -4 lines
Diff to previous 1.108 (colored)

Initialize blkno to 0 right before the snapblkaddr() call that GCC does
not understand so that if ffs_copyonwrite() sprouts a new code path that
does not initialize blkno, the compiler has the chance to reveal it.

Revision 1.108 / (download) - annotate - [select for diffs], Wed Feb 23 08:53:21 2011 UTC (3 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.107: +4 -2 lines
Diff to previous 1.107 (colored)

Quiesce CC ('blkno' may be used uninitialized in this function).

Revision 1.107 / (download) - annotate - [select for diffs], Tue Feb 22 20:25:54 2011 UTC (3 years, 8 months ago) by he
Branch: MAIN
Changes since 1.106: +31 -29 lines
Diff to previous 1.106 (colored)

Move blocks_in_journal() in under #ifndef FFS_NO_SNAPSHOT, all uses
are under that ifdef anyway; this allows build with FFS_NO_SNAPSHOT defined.

Revision 1.106 / (download) - annotate - [select for diffs], Mon Feb 21 09:29:21 2011 UTC (3 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.105: +41 -64 lines
Diff to previous 1.105 (colored)

Change the snapshot lock:
- No need to take the snapshot lock while the file system is suspended.
- Allow ffs_copyonwrite() one level of recursion with snapshots locked.
- Do the block address lookup with snapshots locked.
- Take the snapshot lock while removing a snapshot from the list.

While hunting deadlocks change the transaction scope for ffs_snapremove().
We could deadlock from UFS_WAPBL_BEGIN() with a buffer held.

Revision 1.102.4.7 / (download) - annotate - [select for diffs], Fri Feb 18 19:54:44 2011 UTC (3 years, 8 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102.4.6: +40 -20 lines
Diff to previous 1.102.4.6 (colored) to branchpoint 1.102 (colored)

Add a new inode flag, SF_SNAPINVAL, to be set on SF_SNAPSHOT inodes when
the snapshot is invalid.
Set SF_SNAPSHOT | SF_SNAPINVAL early when initializing a snapshot indode,
so that quota are bypassed for allocations on this inode.
Set SF_SNAPSHOT | SF_SNAPINVAL (instead of clearing SF_SNAPSHOT) when
expuge()ing a snapshot inode, so that userland tools working on the
snapshot (e.g. fsck or dump) can properly handle this inode.

The main point at this time is to have fsck_ffs -X properly compute quotas;
as a bonus persistent snapshots files won't show up in a dump(8) from a
snapshot.

This may also help speeding up taking snapshots, by bypassing expuge()
for snapshot inodes completely (but this needs more thoughs).


Briefly discussed with hannken@ in private mail.

Revision 1.105 / (download) - annotate - [select for diffs], Fri Feb 18 14:48:54 2011 UTC (3 years, 8 months ago) by bouyer
Branch: MAIN
Changes since 1.104: +3 -3 lines
Diff to previous 1.104 (colored)

Initialize error in snapshot_expunge(); if the list is empty error would
be returned uninitialized. t_snapshot_v2 was failing for me when
librumpffs was compiled DGB=-g.
No idea why gcc didn't catch this ...

Revision 1.102.4.6 / (download) - annotate - [select for diffs], Fri Feb 18 09:51:16 2011 UTC (3 years, 8 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102.4.5: +22 -18 lines
Diff to previous 1.102.4.5 (colored) to branchpoint 1.102 (colored)

Sync with HEAD

Revision 1.104 / (download) - annotate - [select for diffs], Fri Feb 18 08:39:13 2011 UTC (3 years, 8 months ago) by hannken
Branch: MAIN
CVS Tags: bouyer-quota2-base
Changes since 1.103: +22 -18 lines
Diff to previous 1.103 (colored)

Revert rev. 1.101.  Dead snapshots would hang around until unmount.

Adresses PR #44568 (WAPBL doens't play nice with snapshots).

Revision 1.102.4.5 / (download) - annotate - [select for diffs], Thu Feb 17 13:28:15 2011 UTC (3 years, 8 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102.4.4: +2 -3 lines
Diff to previous 1.102.4.4 (colored) to branchpoint 1.102 (colored)

Remove comment that should not be there

Revision 1.102.4.4 / (download) - annotate - [select for diffs], Thu Feb 17 12:00:52 2011 UTC (3 years, 8 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102.4.3: +116 -39 lines
Diff to previous 1.102.4.3 (colored) to branchpoint 1.102 (colored)

Sync with HEAD

Revision 1.102.4.3 / (download) - annotate - [select for diffs], Thu Feb 17 10:37:55 2011 UTC (3 years, 8 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102.4.2: +3 -11 lines
Diff to previous 1.102.4.2 (colored) to branchpoint 1.102 (colored)

Do not adjust quota when a snapshot inode is cleared in a snapshot view.

Revision 1.103 / (download) - annotate - [select for diffs], Wed Feb 16 19:43:50 2011 UTC (3 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.102: +116 -39 lines
Diff to previous 1.102 (colored)

Refine the scope of WAPBL transactions so we should no longer get
a "wapbl_flush: current transaction too big to flush" panic when
creating or removing snapshots on larger logging disks.

Adresses PR #44568 (WAPBL doens't play nice with snapshots).

Revision 1.102.4.2 / (download) - annotate - [select for diffs], Sat Feb 12 21:48:09 2011 UTC (3 years, 8 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102.4.1: +29 -10 lines
Diff to previous 1.102.4.1 (colored) to branchpoint 1.102 (colored)

Don't count snapshot files in inode quota too.
At umount time, chk?q may be called after quota have been shutdown,
as there is a final vflush pass after quota?_umount(); so skip quota
checks if the quota vnode is not there any more.

Revision 1.102.4.1 / (download) - annotate - [select for diffs], Sat Feb 12 19:52:39 2011 UTC (3 years, 8 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.102: +10 -8 lines
Diff to previous 1.102 (colored)

Do not update disk quotas for snapshot inodes, as this may require a
write to the same filesystem, which will trigger a copy on write,
which will trigger another update to the same block.
Set SF_SNAPSHOT just after truncating the snapshot inode, so that this
inode always account for 0 blocks in quotas.

Revision 1.82.4.3.4.1 / (download) - annotate - [select for diffs], Fri Jan 7 03:14:46 2011 UTC (3 years, 9 months ago) by matt
Branch: matt-nb5-pq3
Changes since 1.82.4.3: +3 -3 lines
Diff to previous 1.82.4.3 (colored) next main 1.82.4.4 (colored)

Quiet gcc.

Revision 1.102 / (download) - annotate - [select for diffs], Mon Dec 20 00:25:47 2010 UTC (3 years, 10 months ago) by matt
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231, jruoho-x86intr-base
Branch point for: jruoho-x86intr, bouyer-quota2
Changes since 1.101: +4 -3 lines
Diff to previous 1.101 (colored)

Move counting of faults, traps, intrs, soft[intr]s, syscalls, and nswtch
from uvmexp to per-cpu cpu_data and move them to 64bits.  Remove unneeded
includes of <uvm/uvm_extern.h> and/or <uvm/uvm.h>.

Revision 1.101 / (download) - annotate - [select for diffs], Sun Dec 12 10:29:25 2010 UTC (3 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.100: +18 -22 lines
Diff to previous 1.100 (colored)

Keep a reference to the snapshot vnode until it gets removed from the
snapshot list.

Revision 1.100 / (download) - annotate - [select for diffs], Sun Dec 12 10:28:22 2010 UTC (3 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.99: +9 -4 lines
Diff to previous 1.99 (colored)

syncsnap: Use bbusy() to take a buffer from v_dirtyblkhd.

Revision 1.97.2.1 / (download) - annotate - [select for diffs], Tue Aug 17 06:48:10 2010 UTC (4 years, 2 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.97: +5 -4 lines
Diff to previous 1.97 (colored) next main 1.98 (colored)

Sync with HEAD.

Revision 1.66.4.3 / (download) - annotate - [select for diffs], Wed Aug 11 22:55:13 2010 UTC (4 years, 2 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.66.4.2: +5 -4 lines
Diff to previous 1.66.4.2 (colored) to branchpoint 1.66 (colored) next main 1.67 (colored)

sync with head.

Revision 1.97.4.2 / (download) - annotate - [select for diffs], Sat Jul 3 01:20:04 2010 UTC (4 years, 3 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.97.4.1: +5 -4 lines
Diff to previous 1.97.4.1 (colored) to branchpoint 1.97 (colored)

sync with head

Revision 1.99 / (download) - annotate - [select for diffs], Thu Jun 24 13:03:19 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
Changes since 1.98: +4 -4 lines
Diff to previous 1.98 (colored)

Clean up vnode lock operations pass 2:

VOP_UNLOCK(vp, flags) -> VOP_UNLOCK(vp): Remove the unneeded flags argument.

Welcome to 5.99.32.

Discussed on tech-kern.

Revision 1.98 / (download) - annotate - [select for diffs], Wed Jun 2 09:56:59 2010 UTC (4 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.97: +3 -2 lines
Diff to previous 1.97 (colored)

Initialize the initial snap block list's count.

From Antti Kantee <pooka@netbsd.org>.

Revision 1.82.4.1.4.1 / (download) - annotate - [select for diffs], Wed Apr 21 00:28:25 2010 UTC (4 years, 6 months ago) by matt
Branch: matt-nb5-mips64
CVS Tags: matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-k15
Changes since 1.82.4.1: +40 -26 lines
Diff to previous 1.82.4.1 (colored) next main 1.82.4.2 (colored)

sync to netbsd-5

Revision 1.82.4.3 / (download) - annotate - [select for diffs], Sun Mar 28 17:28:33 2010 UTC (4 years, 7 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-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, matt-nb5-pq3-base
Branch point for: matt-nb5-pq3
Changes since 1.82.4.2: +36 -19 lines
Diff to previous 1.82.4.2 (colored) to branchpoint 1.82 (colored)

Pull up following revision(s) (requested by hannken in ticket #1345):
	sys/ufs/ffs/ffs_snapshot.c: revision 1.97
No longer abuse TAILQ internal data.

Revision 1.82.4.2 / (download) - annotate - [select for diffs], Sun Mar 28 17:27:29 2010 UTC (4 years, 7 months ago) by snj
Branch: netbsd-5
Changes since 1.82.4.1: +6 -9 lines
Diff to previous 1.82.4.1 (colored) to branchpoint 1.82 (colored)

Pull up following revision(s) (requested by hannken in ticket #1345):
	sys/ufs/ffs/ffs_snapshot.c: revision 1.96
Fix a deadlock where fscow_disestablish() blocks because outstanding
copy-on-write operations wait for si_snaplock.

Revision 1.97.4.1 / (download) - annotate - [select for diffs], Tue Mar 16 15:38:14 2010 UTC (4 years, 7 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.97: +6 -6 lines
Diff to previous 1.97 (colored)

Change struct uvm_object::vmobjlock to be dynamically allocated with
mutex_obj_alloc().  It allows us to share the locks among UVM objects.

Revision 1.66.4.2 / (download) - annotate - [select for diffs], Thu Mar 11 15:04:44 2010 UTC (4 years, 7 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.66.4.1: +40 -26 lines
Diff to previous 1.66.4.1 (colored) to branchpoint 1.66 (colored)

sync with head

Revision 1.97 / (download) - annotate - [select for diffs], Thu Oct 15 10:05:48 2009 UTC (5 years ago) by hannken
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, uebayasi-xip-base1, uebayasi-xip-base, matt-premerge-20091211, jym-xensuspend-nbase
Branch point for: uebayasi-xip, rmind-uvmplock
Changes since 1.96: +36 -19 lines
Diff to previous 1.96 (colored)

No longer abuse TAILQ internal data.

Revision 1.96 / (download) - annotate - [select for diffs], Tue Oct 13 12:38:14 2009 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.95: +6 -9 lines
Diff to previous 1.95 (colored)

Fix a deadlock where fscow_disestablish() blocks because outstanding
copy-on-write operations wait for si_snaplock.

Revision 1.91.2.1 / (download) - annotate - [select for diffs], Wed May 13 17:23:06 2009 UTC (5 years, 5 months ago) by jym
Branch: jym-xensuspend
Changes since 1.91: +24 -27 lines
Diff to previous 1.91 (colored) next main 1.92 (colored)

Sync with HEAD.

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

Revision 1.66.4.1 / (download) - annotate - [select for diffs], Mon May 4 08:14:37 2009 UTC (5 years, 5 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.66: +961 -954 lines
Diff to previous 1.66 (colored)

sync with head.

Revision 1.82.2.3 / (download) - annotate - [select for diffs], Tue Apr 28 07:37:57 2009 UTC (5 years, 6 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.82.2.2: +12 -12 lines
Diff to previous 1.82.2.2 (colored) to branchpoint 1.82 (colored) next main 1.83 (colored)

Sync with HEAD.

Revision 1.95 / (download) - annotate - [select for diffs], Sat Apr 18 14:58:07 2009 UTC (5 years, 6 months ago) by tsutsui
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base, jymxensuspend-base, jym-xensuspend-base
Changes since 1.94: +10 -10 lines
Diff to previous 1.94 (colored)

Remove extra whitespace added by a stupid tool.
XXX: more in src/sys/arch

Revision 1.94 / (download) - annotate - [select for diffs], Wed Mar 18 17:06:53 2009 UTC (5 years, 7 months ago) by cegger
Branch: MAIN
Changes since 1.93: +10 -10 lines
Diff to previous 1.93 (colored)

bcopy -> memcpy

Revision 1.93 / (download) - annotate - [select for diffs], Wed Mar 18 16:00:24 2009 UTC (5 years, 7 months ago) by cegger
Branch: MAIN
Changes since 1.92: +4 -4 lines
Diff to previous 1.92 (colored)

bzero -> memset

Revision 1.82.2.2 / (download) - annotate - [select for diffs], Tue Mar 3 18:34:39 2009 UTC (5 years, 7 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.82.2.1: +14 -17 lines
Diff to previous 1.82.2.1 (colored) to branchpoint 1.82 (colored)

Sync with HEAD.

Revision 1.92 / (download) - annotate - [select for diffs], Sun Feb 22 20:28:06 2009 UTC (5 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: nick-hppapmap-base2
Changes since 1.91: +14 -17 lines
Diff to previous 1.91 (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.82.2.1 / (download) - annotate - [select for diffs], Mon Jan 19 13:20:32 2009 UTC (5 years, 9 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.82: +20 -17 lines
Diff to previous 1.82 (colored)

Sync with HEAD.

Revision 1.65.6.5 / (download) - annotate - [select for diffs], Sat Jan 17 13:29:42 2009 UTC (5 years, 9 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.65.6.4: +28 -22 lines
Diff to previous 1.65.6.4 (colored) to branchpoint 1.65 (colored) next main 1.66 (colored)

Sync with HEAD.

Revision 1.91 / (download) - annotate - [select for diffs], Sun Jan 11 02:45:56 2009 UTC (5 years, 9 months ago) by christos
Branch: MAIN
CVS Tags: mjf-devfs2-base
Branch point for: jym-xensuspend
Changes since 1.90: +4 -4 lines
Diff to previous 1.90 (colored)

merge christos-time_t

Revision 1.65.8.5 / (download) - annotate - [select for diffs], Sun Jan 4 05:18:17 2009 UTC (5 years, 9 months ago) by christos
Branch: christos-time_t
Changes since 1.65.8.4: +2 -3 lines
Diff to previous 1.65.8.4 (colored) to branchpoint 1.65 (colored) next main 1.66 (colored)

merge diffs.

Revision 1.90 / (download) - annotate - [select for diffs], Sat Jan 3 15:29:08 2009 UTC (5 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: christos-time_t-nbase, christos-time_t-base
Changes since 1.89: +2 -3 lines
Diff to previous 1.89 (colored)

Remove superfluous "vp->v_vnlock = &vp->v_lock".

Observed by: YAMAMOTO Takashi <yamt@netbsd.org>

Revision 1.65.8.4 / (download) - annotate - [select for diffs], Sat Dec 27 23:14:26 2008 UTC (5 years, 10 months ago) by christos
Branch: christos-time_t
Changes since 1.65.8.3: +18 -14 lines
Diff to previous 1.65.8.3 (colored) to branchpoint 1.65 (colored)

merge with head.

Revision 1.89 / (download) - annotate - [select for diffs], Fri Dec 19 11:36:10 2008 UTC (5 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.88: +3 -2 lines
Diff to previous 1.88 (colored)

Restore a line removed by mistake with the last commit.

Should fix PR 40225 panic: indiracct: missing indir.

Revision 1.88 / (download) - annotate - [select for diffs], Wed Dec 17 20:51:39 2008 UTC (5 years, 10 months ago) by cegger
Branch: MAIN
Changes since 1.87: +5 -6 lines
Diff to previous 1.87 (colored)

kill MALLOC and FREE macros.

Revision 1.70.2.2 / (download) - annotate - [select for diffs], Sat Dec 13 01:15:41 2008 UTC (5 years, 10 months ago) by haad
Branch: haad-dm
Changes since 1.70.2.1: +25 -18 lines
Diff to previous 1.70.2.1 (colored) to branchpoint 1.70 (colored) next main 1.71 (colored)

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

Revision 1.82.4.1 / (download) - annotate - [select for diffs], Wed Dec 10 21:49:31 2008 UTC (5 years, 10 months ago) by snj
Branch: netbsd-5
CVS Tags: 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-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20091211, matt-nb4-mips64-k7-u2a-k9b
Branch point for: matt-nb5-mips64
Changes since 1.82: +11 -7 lines
Diff to previous 1.82 (colored)

Pull up following revision(s) (requested by hannken in ticket #169):
	sys/ufs/ffs/ffs_snapshot.c: revision 1.87
ffs_copyonwrite():   Only use si_snapblklist if it is already allocated.
ffs_snapshot_read(): Use IO_ALTSEMANTICS to allow reading a snapshot vnode
                     beyond file system size.  Needed to read the snapblklist
                     on mount.
Persistent snapshots work again.
Should fix PR kern/37425: fss_snapshot_mount panic during fsck.

Revision 1.87 / (download) - annotate - [select for diffs], Sun Dec 7 19:51:07 2008 UTC (5 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: haad-nbase2, haad-dm-base2, haad-dm-base
Changes since 1.86: +11 -7 lines
Diff to previous 1.86 (colored)

ffs_copyonwrite():   Only use si_snapblklist if it is already allocated.

ffs_snapshot_read(): Use IO_ALTSEMANTICS to allow reading a snapshot vnode
                     beyond file system size.  Needed to read the snapblklist
                     on mount.

Persistent snapshots work again.

Should fix PR kern/37425: fss_snapshot_mount panic during fsck.

Revision 1.86 / (download) - annotate - [select for diffs], Sun Dec 7 18:55:58 2008 UTC (5 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.85: +5 -9 lines
Diff to previous 1.85 (colored)

Revert previous -- ALL reads are from kernel space.

Still open: PR kern/37425: fss_snapshot_mount panic during fsck.

Revision 1.85 / (download) - annotate - [select for diffs], Sun Dec 7 10:01:09 2008 UTC (5 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: ad-audiomp2-base, ad-audiomp2
Changes since 1.84: +9 -5 lines
Diff to previous 1.84 (colored)

ffs_copyonwrite():   Only use si_snapblklist if it is already allocated.
ffs_snapshot_read(): Allow the kernel to read beyond file system size.

Persistent snapshots work again.

Should fix PR kern/37425: fss_snapshot_mount panic during fsck.

Revision 1.84 / (download) - annotate - [select for diffs], Sat Dec 6 20:05:55 2008 UTC (5 years, 10 months ago) by joerg
Branch: MAIN
Changes since 1.83: +4 -4 lines
Diff to previous 1.83 (colored)

Split ffs_freefile into a frontend for normal cylinder group and for
snapshot use. Adjust ffs_blkfree_common to get the fs instance passed
in, the original commit didn't account blocks in the snapshots
correctly. Assert that ffs_blkfree is used with the primary fs instance
and that ffs_checkfreefile is only used for snapshots. Move the bdwrite
from ffs_blkfree_common into the caller for symmetry. This creates a
redundant write of unmodified data for ffs_blkfree_snap if a double free
of a block happens.

Reviewed and tested by hannken@.

Revision 1.83 / (download) - annotate - [select for diffs], Mon Dec 1 13:22:06 2008 UTC (5 years, 10 months ago) by joerg
Branch: MAIN
Changes since 1.82: +4 -4 lines
Diff to previous 1.82 (colored)

ffs_blkfree is used in two different ways. The normal usage is to free a
block in the cylinder groups of the filesystem. The other user is the
snapshot code, which wants to modify the copied cylinder groups. Use
different frontends to distinguish the cases in preparation for fine
grained locking for cylinder groups.

Revision 1.65.8.3 / (download) - annotate - [select for diffs], Sat Nov 1 23:22:23 2008 UTC (5 years, 11 months ago) by christos
Branch: christos-time_t
Changes since 1.65.8.2: +4 -4 lines
Diff to previous 1.65.8.2 (colored) to branchpoint 1.65 (colored)

catch up with changes in head.

Revision 1.65.8.2 / (download) - annotate - [select for diffs], Sat Nov 1 21:22:29 2008 UTC (5 years, 11 months ago) by christos
Branch: christos-time_t
Changes since 1.65.8.1: +961 -989 lines
Diff to previous 1.65.8.1 (colored) to branchpoint 1.65 (colored)

Sync with head.

Revision 1.82 / (download) - annotate - [select for diffs], Thu Oct 23 17:16:24 2008 UTC (6 years ago) by hannken
Branch: MAIN
CVS Tags: netbsd-5-base, matt-mips64-base2
Branch point for: nick-hppapmap, netbsd-5
Changes since 1.81: +12 -10 lines
Diff to previous 1.81 (colored)

Correct previous.
- Count frags, not blocks to get the file system size.
- Cannot use blksize() here, it depends on vnode size.
- Correctly update xfersize on short reads.

Revision 1.81 / (download) - annotate - [select for diffs], Thu Oct 23 14:25:21 2008 UTC (6 years ago) by hannken
Branch: MAIN
Changes since 1.80: +5 -4 lines
Diff to previous 1.80 (colored)

When computing the requests hard limit in ffs_snapshot_read()
use the file system size, not the size of the snapshot vnode.

Revision 1.70.2.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:18:10 2008 UTC (6 years ago) by haad
Branch: haad-dm
Changes since 1.70: +925 -906 lines
Diff to previous 1.70 (colored)

Sync with HEAD.

Revision 1.65.6.4 / (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.65.6.3: +923 -904 lines
Diff to previous 1.65.6.3 (colored) to branchpoint 1.65 (colored)

Sync with HEAD.

Revision 1.66.6.3 / (download) - annotate - [select for diffs], Wed Sep 24 16:38:58 2008 UTC (6 years, 1 month ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.66.6.2: +17 -18 lines
Diff to previous 1.66.6.2 (colored) to branchpoint 1.66 (colored) next main 1.67 (colored)

Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.

Revision 1.66.6.2 / (download) - annotate - [select for diffs], Thu Sep 18 04:37:05 2008 UTC (6 years, 1 month ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.66.6.1: +934 -914 lines
Diff to previous 1.66.6.1 (colored) to branchpoint 1.66 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.80 / (download) - annotate - [select for diffs], Mon Sep 8 14:22:31 2008 UTC (6 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, haad-dm-base1
Changes since 1.79: +17 -18 lines
Diff to previous 1.79 (colored)

Adjust some WAPBL transactions:
- Put transaction inside cgaccount() to simplify caller.
- No vget() / vrele() inside a transaction.

Revision 1.79 / (download) - annotate - [select for diffs], Tue Sep 2 08:51:46 2008 UTC (6 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-2
Changes since 1.78: +595 -481 lines
Diff to previous 1.78 (colored)

Ffs_snapshot() has become a huge monster over the time.  Break it into
helper functions to enhance readability.  Adjust comments to reality
and test the main error paths.

While here, expand and remove the last FreeBSD->NetBSD conversion macros.

No functional change intended.

Revision 1.78 / (download) - annotate - [select for diffs], Mon Aug 25 13:34:53 2008 UTC (6 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.77: +19 -7 lines
Diff to previous 1.77 (colored)

Sync the just created snapshot to disk.

Invalidate short ( < fs_bsize ) buffers.  We will always read full
size buffers later.

Should fix PR #39402

Revision 1.77 / (download) - annotate - [select for diffs], Sun Aug 24 15:33:37 2008 UTC (6 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.76: +4 -2 lines
Diff to previous 1.76 (colored)

Add missing vput() for logvp.

Fixes PR #39400

Revision 1.76 / (download) - annotate - [select for diffs], Sun Aug 24 09:51:47 2008 UTC (6 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.75: +120 -374 lines
Diff to previous 1.75 (colored)

Merge the _ufs1 and _ufs2 variants of the expunge and accounting functions.
Remove some unneeded UFS_FSNEEDSWAP().

Saves ~250 lines of redundant code.

Revision 1.75 / (download) - annotate - [select for diffs], Fri Aug 22 10:48:22 2008 UTC (6 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.74: +205 -79 lines
Diff to previous 1.74 (colored)

Add snapshot support for logging ffs file systems.

- Add UFS_WAPBL_BEGIN() / UFS_WAPBL_END() where needed.

- Expunge WAPBL log inodes from snapshots.

- Ffs_copyonwrite() and ffs_snapblkfree() must run inside a WAPBL transaction.

- Add ffs_gop_write() as a wrapper around genfs_gop_write() that makes sure
  genfs_gop_write() gets always called inside a WAPBL transaction.

- Add VOP_PUTPAGES() flag PGO_JOURNALLOCKED to tag calls to VOP_PUTPAGES()
  inside a WAPBL transaction.

Reviewed by: Simon Burge <simonb@netbsd.org>,  Greg Oster <oster@netbsd.org>

PGO_JOURNALLOCKED / ffs_gop_write() part presented on tech-kern@.

Revision 1.74 / (download) - annotate - [select for diffs], Tue Aug 12 10:14:37 2008 UTC (6 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.73: +125 -87 lines
Diff to previous 1.73 (colored)

Deny read/write access to snapshot vnodes.  We use fss(4) to read from
snapshots.  With this policy in place:

- Separate the snapshot vnode lock from the snapshot common lock.
  Snapshots no longer need recursive vnode locks.

- Use a mutex (si_snaplock) to serialize creation, deletion, reading and
  writing of snapshots.

- Move ffs_read() for snapshots into ffs_snapshot.c.

Reviewed by: Jason Thorpe <thorpej@netbsd.org>

While here change ffs_copyonwrite() to fail requests from pagedaemon that need
to copy-on-write.

Revision 1.73 / (download) - annotate - [select for diffs], Thu Jul 31 15:37:56 2008 UTC (6 years, 3 months ago) by hannken
Branch: MAIN
Changes since 1.72: +5 -2 lines
Diff to previous 1.72 (colored)

Ffs snapshots don't work (yet) with WAPBL:
- no snapshot creation on logging file systems.
- refuse to mount logging file systems with persistent snapshots.

Ok: Simon Burge <simonb@netbsd.org>

Revision 1.69.2.3 / (download) - annotate - [select for diffs], Thu Jul 31 04:51:05 2008 UTC (6 years, 3 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.69.2.2: +100 -65 lines
Diff to previous 1.69.2.2 (colored) to branchpoint 1.69 (colored) next main 1.70 (colored)

Sync with head.

Revision 1.72 / (download) - annotate - [select for diffs], Wed Jul 30 10:09:30 2008 UTC (6 years, 3 months ago) by hannken
Branch: MAIN
CVS Tags: simonb-wapbl-nbase, simonb-wapbl-base
Changes since 1.71: +100 -65 lines
Diff to previous 1.71 (colored)

ffs_snapshot():
    Release allocated indir blocks on non-softdep file systems instead
    of writing them twice.
    It is sufficient to clean dirty data pages to avoid UBC inconsistencies.

ffs_snapblkfree() and wrsnapblk():
    If a snapshots effective link count is zero there is no need
    to use synchronous writes.

ffs_copyonwrite():
    Defer locking the snapshots until there is a need to copy the block.

wrsnapblk():
    Use vn_rdwr() instead of bwrite() to write to the snapshots.

Revision 1.69.2.2 / (download) - annotate - [select for diffs], Fri Jul 18 16:37:57 2008 UTC (6 years, 3 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.69.2.1: +31 -87 lines
Diff to previous 1.69.2.1 (colored) to branchpoint 1.69 (colored)

Sync with head.

Revision 1.71 / (download) - annotate - [select for diffs], Tue Jul 15 08:20:56 2008 UTC (6 years, 3 months ago) by hannken
Branch: MAIN
Changes since 1.70: +31 -87 lines
Diff to previous 1.70 (colored)

expunge_ufs*(): Use the buffer cache to update the inodes on the snapshot like
                the rest of snapshot creation does.

Revision 1.65.6.3 / (download) - annotate - [select for diffs], Sun Jun 29 09:33:20 2008 UTC (6 years, 4 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.65.6.2: +1 -0 lines
Diff to previous 1.65.6.2 (colored) to branchpoint 1.65 (colored)

Sync with HEAD.

Revision 1.66.6.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:32:05 2008 UTC (6 years, 4 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.66: +52 -67 lines
Diff to previous 1.66 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.69.2.1 / (download) - annotate - [select for diffs], Wed Jun 18 16:33:58 2008 UTC (6 years, 4 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.69: +3 -2 lines
Diff to previous 1.69 (colored)

Sync with head.

Revision 1.70 / (download) - annotate - [select for diffs], Tue Jun 17 14:53:11 2008 UTC (6 years, 4 months ago) by reinoud
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-1, wrstuden-revivesa-base
Branch point for: haad-dm
Changes since 1.69: +3 -2 lines
Diff to previous 1.69 (colored)

Mark a buffer `busy` in getnewbuf() when it came from the pool_cache since
its not on a free list.

Also change buf_init() to not automatically mark buffers `busy' since this
only makes sense for bufcache buffers.

Mark all buf_init'd buffers 'busy' on the places where they ought to be
flagged as such to not confuse the buffer cache.

Fixes PR 38923.

Revision 1.65.6.2 / (download) - annotate - [select for diffs], Thu Jun 5 19:14:37 2008 UTC (6 years, 4 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.65.6.1: +8 -4 lines
Diff to previous 1.65.6.1 (colored) to branchpoint 1.65 (colored)

Sync with HEAD.

Also fix build.

Revision 1.66.2.2 / (download) - annotate - [select for diffs], Wed Jun 4 02:05:53 2008 UTC (6 years, 4 months ago) by yamt
Branch: yamt-pf42
Changes since 1.66.2.1: +43 -18 lines
Diff to previous 1.66.2.1 (colored) to branchpoint 1.66 (colored) next main 1.67 (colored)

sync with head

Revision 1.69 / (download) - annotate - [select for diffs], Tue Jun 3 09:47:49 2008 UTC (6 years, 4 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3
Branch point for: simonb-wapbl
Changes since 1.68: +10 -6 lines
Diff to previous 1.68 (colored)

ufs/ffs: replace calls to getblk() with ffs_getblk().  Now all buffers
have been run through copy-on-write and async mounts work again.

Fixes PR kern/38820

Reviewed by: YAMAMOTO Takashi <yamt@netbsd.org>

Revision 1.65.6.1 / (download) - annotate - [select for diffs], Mon Jun 2 13:24:35 2008 UTC (6 years, 4 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.65: +71 -126 lines
Diff to previous 1.65 (colored)

Sync with HEAD.

Revision 1.68 / (download) - annotate - [select for diffs], Thu May 29 10:00:50 2008 UTC (6 years, 5 months ago) by hannken
Branch: MAIN
Changes since 1.67: +35 -14 lines
Diff to previous 1.67 (colored)

ffs_copyonwrite(): stop abusing ffs_balloc() to get a block address.
Use ufs_getlbns()/bread() instead.
Saves some reads and removes deep recursion with possible deadlock
when ffs_balloc() runs copy-on-write on the buffer returned.

Revision 1.66.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:35:54 2008 UTC (6 years, 5 months ago) by yamt
Branch: yamt-pf42
Changes since 1.66: +11 -52 lines
Diff to previous 1.66 (colored)

sync with head.

Revision 1.67 / (download) - annotate - [select for diffs], Fri May 16 09:22:00 2008 UTC (6 years, 5 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pf42-base2, hpcarm-cleanup-nbase
Changes since 1.66: +11 -52 lines
Diff to previous 1.66 (colored)

Make sure all cached buffers with valid, not yet written data have been
run through copy-on-write.  Call fscow_run() with valid data where possible.

The LP_UFSCOW hack is no longer needed to protect ffs_copyonwrite() against
endless recursion.

- Add a flag B_MODIFY to bread(), breada() and breadn().  If set the caller
  intends to modify the buffer returned.

- Always run copy-on-write on buffers returned from ffs_balloc().

- Add new function ffs_getblk() that gets a buffer, assigns a new blkno,
  may clear the buffer and runs copy-on-write.  Process possible errors
  from getblk() or fscow_run().  Part of PR kern/38664.

Welcome to 4.99.63

Reviewed by: YAMAMOTO Takashi <yamt@netbsd.org>

Revision 1.66 / (download) - annotate - [select for diffs], Thu Apr 17 09:52:47 2008 UTC (6 years, 6 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base2, yamt-nfs-mp-base
Branch point for: yamt-pf42, yamt-nfs-mp, wrstuden-revivesa
Changes since 1.65: +30 -65 lines
Diff to previous 1.65 (colored)

Replace get/setspecific with a void pointer in struct ufsmount.  Use explicit
initialization/finalization of snapshot private data on creation/deletion
of struct ufsmount.
Snapshot mounts no longer may fail silently because kmem_alloc() fails.

Welcome to 4.99.60

Ok: Andrew Doran <ad@netbsd.org>

Revision 1.65.8.1 / (download) - annotate - [select for diffs], Sat Mar 29 20:47:04 2008 UTC (6 years, 7 months ago) by christos
Branch: christos-time_t
Changes since 1.65: +5 -5 lines
Diff to previous 1.65 (colored)

Welcome to the time_t=long long dev_t=uint64_t branch.

Revision 1.50.2.3 / (download) - annotate - [select for diffs], Sun Mar 23 02:05:12 2008 UTC (6 years, 7 months ago) by matt
Branch: matt-armv6
Changes since 1.50.2.2: +50 -61 lines
Diff to previous 1.50.2.2 (colored) to branchpoint 1.50 (colored) next main 1.51 (colored)

sync with HEAD

Revision 1.53.4.3 / (download) - annotate - [select for diffs], Mon Feb 18 21:07:28 2008 UTC (6 years, 8 months ago) by mjf
Branch: mjf-devfs
Changes since 1.53.4.2: +92 -99 lines
Diff to previous 1.53.4.2 (colored) to branchpoint 1.53 (colored) next main 1.54 (colored)

Sync with HEAD.

Revision 1.17.2.8 / (download) - annotate - [select for diffs], Mon Feb 4 09:25:03 2008 UTC (6 years, 8 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17.2.7: +50 -61 lines
Diff to previous 1.17.2.7 (colored) next main 1.18 (colored)

sync with head.

Revision 1.65 / (download) - annotate - [select for diffs], Wed Jan 30 17:20:04 2008 UTC (6 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, ad-socklock-base1
Branch point for: mjf-devfs2, christos-time_t
Changes since 1.64: +19 -42 lines
Diff to previous 1.64 (colored)

Make it work after lockmgr -> vlockmgr conversion:

- Initialize si_vnlock in si_mount_init().
  - Also initialize vl_recursecnt to zero.
- Destroy it only in si_mount_dtor().
- Simplify the v_lock <-> si_vnlock exchange.
- Don't abuse the overall error variable for LK_NOWAIT errors.
- ffs_snapremove: release the vnode one instead of three times.

Revision 1.64 / (download) - annotate - [select for diffs], Wed Jan 30 14:50:28 2008 UTC (6 years, 9 months ago) by ad
Branch: MAIN
Changes since 1.63: +10 -8 lines
Diff to previous 1.63 (colored)

Replace use of LK_SLEEPFAIL.

Revision 1.63 / (download) - annotate - [select for diffs], Wed Jan 30 11:47:03 2008 UTC (6 years, 9 months ago) by ad
Branch: MAIN
Changes since 1.62: +20 -13 lines
Diff to previous 1.62 (colored)

PR kern/37706 (forced unmount of file systems is unsafe):

- Do reference counting for 'struct mount'. Each vnode associated with a
  mount takes a reference, and in turn the mount takes a reference to the
  vfsops.
- Now that mounts are reference counted, replace the overcomplicated mount
  locking inherited from 4.4BSD with a recursable rwlock.

Revision 1.62 / (download) - annotate - [select for diffs], Wed Jan 30 09:50:25 2008 UTC (6 years, 9 months ago) by ad
Branch: MAIN
Changes since 1.61: +16 -15 lines
Diff to previous 1.61 (colored)

Replace struct lock on vnodes with a simpler lock object built on
krwlock_t. This is a step towards removing lockmgr and simplifying
vnode locking. Discussed on tech-kern.

Revision 1.61 / (download) - annotate - [select for diffs], Mon Jan 28 17:49:06 2008 UTC (6 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.60: +5 -4 lines
Diff to previous 1.60 (colored)

- Always destroy si_vnlock after use.
- Take care of vnodes without file system data.

Revision 1.60 / (download) - annotate - [select for diffs], Thu Jan 24 17:29:56 2008 UTC (6 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.59: +3 -2 lines
Diff to previous 1.59 (colored)

si_mount_dtor(): destroy si_vnlock before free.

Revision 1.59 / (download) - annotate - [select for diffs], Thu Jan 24 16:26:44 2008 UTC (6 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.58: +3 -3 lines
Diff to previous 1.58 (colored)

Fix a typo from the vmlocking2 merge: vmark() the right vnode.

Revision 1.17.2.7 / (download) - annotate - [select for diffs], Mon Jan 21 09:48:07 2008 UTC (6 years, 9 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17.2.6: +47 -43 lines
Diff to previous 1.17.2.6 (colored)

sync with head

Revision 1.50.2.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:58:26 2008 UTC (6 years, 9 months ago) by matt
Branch: matt-armv6
Changes since 1.50.2.1: +54 -48 lines
Diff to previous 1.50.2.1 (colored) to branchpoint 1.50 (colored)

sync with HEAD

Revision 1.56.4.2 / (download) - annotate - [select for diffs], Tue Jan 8 22:12:01 2008 UTC (6 years, 9 months ago) by bouyer
Branch: bouyer-xeni386
CVS Tags: bouyer-xeni386-merge1
Changes since 1.56.4.1: +2 -2 lines
Diff to previous 1.56.4.1 (colored) to branchpoint 1.56 (colored) next main 1.57 (colored)

Sync with HEAD

Revision 1.58 / (download) - annotate - [select for diffs], Thu Jan 3 01:26:32 2008 UTC (6 years, 9 months ago) by pooka
Branch: MAIN
CVS Tags: matt-armv6-base, bouyer-xeni386-nbase, bouyer-xeni386-base
Changes since 1.57: +4 -4 lines
Diff to previous 1.57 (colored)

valloc -> vnalloc, vfree -> vnfree
Avoids collision with userland valloc(3).

no functional change
ad ok

Revision 1.56.4.1 / (download) - annotate - [select for diffs], Wed Jan 2 21:58:18 2008 UTC (6 years, 9 months ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.56: +45 -41 lines
Diff to previous 1.56 (colored)

Sync with HEAD

Revision 1.57 / (download) - annotate - [select for diffs], Wed Jan 2 11:49:09 2008 UTC (6 years, 9 months ago) by ad
Branch: MAIN
Changes since 1.56: +45 -41 lines
Diff to previous 1.56 (colored)

Merge vmlocking2 to head.

Revision 1.53.4.2 / (download) - annotate - [select for diffs], Thu Dec 27 00:46:48 2007 UTC (6 years, 10 months ago) by mjf
Branch: mjf-devfs
Changes since 1.53.4.1: +4 -4 lines
Diff to previous 1.53.4.1 (colored) to branchpoint 1.53 (colored)

Sync with HEAD.

Revision 1.55.2.2 / (download) - annotate - [select for diffs], Wed Dec 26 21:39:59 2007 UTC (6 years, 10 months ago) by ad
Branch: vmlocking2
Changes since 1.55.2.1: +4 -4 lines
Diff to previous 1.55.2.1 (colored) to branchpoint 1.55 (colored) next main 1.56 (colored)

Sync with head.

Revision 1.46.6.6 / (download) - annotate - [select for diffs], Sun Dec 9 19:38:52 2007 UTC (6 years, 10 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.46.6.5: +4 -4 lines
Diff to previous 1.46.6.5 (colored) to branchpoint 1.46 (colored) next main 1.47 (colored)

Sync with HEAD.

Revision 1.56 / (download) - annotate - [select for diffs], Sat Dec 8 19:29:54 2007 UTC (6 years, 10 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, jmcneill-pm-base, cube-autoconf-base, cube-autoconf
Branch point for: bouyer-xeni386
Changes since 1.55: +4 -4 lines
Diff to previous 1.55 (colored)

Remove cn_lwp from struct componentname.  curlwp should be used
from on.  The NDINIT() macro no longer takes the lwp parameter and
associates the credentials of the calling thread with the namei
structure.

Revision 1.53.4.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:21:38 2007 UTC (6 years, 10 months ago) by mjf
Branch: mjf-devfs
Changes since 1.53: +9 -7 lines
Diff to previous 1.53 (colored)

Sync with HEAD.

Revision 1.17.2.6 / (download) - annotate - [select for diffs], Fri Dec 7 17:35:19 2007 UTC (6 years, 10 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17.2.5: +9 -7 lines
Diff to previous 1.17.2.5 (colored)

sync with head

Revision 1.55.2.1 / (download) - annotate - [select for diffs], Tue Dec 4 13:03:45 2007 UTC (6 years, 10 months ago) by ad
Branch: vmlocking2
Changes since 1.55: +45 -41 lines
Diff to previous 1.55 (colored)

Pull the vmlocking changes into a new branch.

Revision 1.46.6.5 / (download) - annotate - [select for diffs], Mon Dec 3 16:15:23 2007 UTC (6 years, 10 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.46.6.4: +7 -5 lines
Diff to previous 1.46.6.4 (colored) to branchpoint 1.46 (colored)

Sync with HEAD.

Revision 1.55 / (download) - annotate - [select for diffs], Sun Dec 2 13:56:20 2007 UTC (6 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base
Branch point for: vmlocking2
Changes since 1.54: +7 -5 lines
Diff to previous 1.54 (colored)

Fscow_run(): add a flag "bool data_valid" to note still valid data.
Buffers run through copy-on-write are marked B_COWDONE.  This condition
is valid until the buffer has run through bwrite() and gets cleared from
biodone().

Welcome to 4.99.39.

Reviewed by: YAMAMOTO Takashi <yamt@netbsd.org>

Revision 1.46.6.4 / (download) - annotate - [select for diffs], Tue Nov 27 19:39:21 2007 UTC (6 years, 11 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.46.6.3: +4 -4 lines
Diff to previous 1.46.6.3 (colored) to branchpoint 1.46 (colored)

Sync with HEAD. amd64 Xen support needs testing.

Revision 1.54 / (download) - annotate - [select for diffs], Mon Nov 26 19:02:29 2007 UTC (6 years, 11 months ago) by pooka
Branch: MAIN
Changes since 1.53: +4 -4 lines
Diff to previous 1.53 (colored)

Remove the "struct lwp *" argument from all VFS and VOP interfaces.
The general trend is to remove it from all kernel interfaces and
this is a start.  In case the calling lwp is desired, curlwp should
be used.

quick consensus on tech-kern

Revision 1.50.2.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:35:11 2007 UTC (6 years, 11 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.50: +29 -30 lines
Diff to previous 1.50 (colored)

sync with HEAD

Revision 1.43.2.14 / (download) - annotate - [select for diffs], Mon Oct 29 16:38:39 2007 UTC (7 years ago) by ad
Branch: vmlocking
Changes since 1.43.2.13: +2 -3 lines
Diff to previous 1.43.2.13 (colored) to branchpoint 1.43 (colored) next main 1.44 (colored)

Remove unused label.

Revision 1.43.2.13 / (download) - annotate - [select for diffs], Sun Oct 28 22:01:27 2007 UTC (7 years ago) by ad
Branch: vmlocking
Changes since 1.43.2.12: +19 -9 lines
Diff to previous 1.43.2.12 (colored) to branchpoint 1.43 (colored)

Fix up mnt_vnodelist handling.

Revision 1.17.2.5 / (download) - annotate - [select for diffs], Sat Oct 27 11:36:42 2007 UTC (7 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17.2.4: +29 -30 lines
Diff to previous 1.17.2.4 (colored)

sync with head.

Revision 1.46.6.3 / (download) - annotate - [select for diffs], Fri Oct 26 15:49:30 2007 UTC (7 years ago) by joerg
Branch: jmcneill-pm
Changes since 1.46.6.2: +29 -30 lines
Diff to previous 1.46.6.2 (colored) to branchpoint 1.46 (colored)

Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.

Revision 1.50.4.1 / (download) - annotate - [select for diffs], Sun Oct 14 11:49:16 2007 UTC (7 years ago) by yamt
Branch: yamt-x86pmap
Changes since 1.50: +29 -30 lines
Diff to previous 1.50 (colored) next main 1.51 (colored)

sync with head.

Revision 1.53 / (download) - annotate - [select for diffs], Wed Oct 10 20:42:33 2007 UTC (7 years ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, vmlocking-base, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: mjf-devfs
Changes since 1.52: +6 -6 lines
Diff to previous 1.52 (colored)

Merge from vmlocking:

- Split vnode::v_flag into three fields, depending on field locking.
- simple_lock -> kmutex in a few places.
- Fix some simple locking problems.

Revision 1.43.2.12 / (download) - annotate - [select for diffs], Tue Oct 9 15:22:28 2007 UTC (7 years ago) by ad
Branch: vmlocking
Changes since 1.43.2.11: +150 -158 lines
Diff to previous 1.43.2.11 (colored) to branchpoint 1.43 (colored)

Sync with head.

Revision 1.43.2.11 / (download) - annotate - [select for diffs], Tue Oct 9 13:45:15 2007 UTC (7 years ago) by ad
Branch: vmlocking
Changes since 1.43.2.10: +6 -8 lines
Diff to previous 1.43.2.10 (colored) to branchpoint 1.43 (colored)

Sync with head.

Revision 1.52 / (download) - annotate - [select for diffs], Mon Oct 8 18:01:28 2007 UTC (7 years ago) by ad
Branch: MAIN
Changes since 1.51: +21 -22 lines
Diff to previous 1.51 (colored)

Merge ffs locking & brelse changes from the vmlocking branch.

Revision 1.51 / (download) - annotate - [select for diffs], Sun Oct 7 13:39:05 2007 UTC (7 years ago) by hannken
Branch: MAIN
Changes since 1.50: +6 -6 lines
Diff to previous 1.50 (colored)

Update the file system copy-on-write handler.

- Instead of hooking the handler on the specdev of a mounted file system
  hook directly on the `struct mount'.

- Rename from `vn_cow_*' to `fscow_*' and move to `kern/vfs_trans.c'.  Use
  `mount_*specific' instead of clobbering `struct mount' or `struct specinfo'.

- Replace the hand-made reader/writer lock with a krwlock.

- Keep `vn_cow_*' functions and mark as obsolete.

- Welcome to NetBSD 4.99.32 - `struct specinfo' changed size.

Reviewed by: Jason Thorpe <thorpej@netbsd.org>

Revision 1.46.6.2 / (download) - annotate - [select for diffs], Mon Sep 3 16:49:15 2007 UTC (7 years, 1 month ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.46.6.1: +146 -156 lines
Diff to previous 1.46.6.1 (colored) to branchpoint 1.46 (colored)

Sync with HEAD.

Revision 1.17.2.4 / (download) - annotate - [select for diffs], Mon Sep 3 14:46:48 2007 UTC (7 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17.2.3: +294 -228 lines
Diff to previous 1.17.2.3 (colored)

sync with head.

Revision 1.46.2.2 / (download) - annotate - [select for diffs], Mon Sep 3 10:24:23 2007 UTC (7 years, 1 month ago) by skrll
Branch: nick-csl-alignment
Changes since 1.46.2.1: +146 -156 lines
Diff to previous 1.46.2.1 (colored) to branchpoint 1.46 (colored) next main 1.47 (colored)

Sync with HEAD.

Revision 1.43.2.10 / (download) - annotate - [select for diffs], Thu Aug 30 09:55:14 2007 UTC (7 years, 2 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.9: +4 -5 lines
Diff to previous 1.43.2.9 (colored) to branchpoint 1.43 (colored)

bufcache_lock is sufficient to inspect v_dirtyblkhd, vp->v_interlock is only
needed to modify.

Revision 1.43.2.9 / (download) - annotate - [select for diffs], Fri Aug 24 23:28:44 2007 UTC (7 years, 2 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.8: +17 -16 lines
Diff to previous 1.43.2.8 (colored) to branchpoint 1.43 (colored)

Sync with buffer cache locking changes. See buf.h/vfs_bio.c for details.
Some minor portions are incomplete and needs to be verified as a whole.

Revision 1.50 / (download) - annotate - [select for diffs], Tue Aug 21 09:27:33 2007 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5
Branch point for: yamt-x86pmap, matt-armv6
Changes since 1.49: +2 -4 lines
Diff to previous 1.49 (colored)

Modify ffs_lock() to take care for changed v_vnlock.  Snapshots do not need
transferlockers() anymore.

From FreeBSD ffs_vnops.c Rev. 1.159

Reviewed by: YAMAMOTO Takashi <yamt@netbsd.org>

Revision 1.43.2.8 / (download) - annotate - [select for diffs], Mon Aug 20 21:28:25 2007 UTC (7 years, 2 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.7: +119 -47 lines
Diff to previous 1.43.2.7 (colored) to branchpoint 1.43 (colored)

Sync with HEAD.

Revision 1.49 / (download) - annotate - [select for diffs], Sat Aug 18 10:11:01 2007 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.48: +139 -150 lines
Diff to previous 1.48 (colored)

- Use a mutex to protect snapinfo.
- Move the snapshot lock to snapinfo.
- ffs_snapblkfree(),ffs_copyonwrite(): replace lockmgr() with VOP_LOCK().

Revision 1.48 / (download) - annotate - [select for diffs], Sat Aug 18 09:48:33 2007 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.47: +9 -6 lines
Diff to previous 1.47 (colored)

Expunge traces of unlinked snapshot files when making a new snapshot.

From FreeBSD Rev. 1.123

Revision 1.46.6.1 / (download) - annotate - [select for diffs], Thu Aug 16 11:04:00 2007 UTC (7 years, 2 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.46: +115 -41 lines
Diff to previous 1.46 (colored)

Sync with HEAD.

Revision 1.46.2.1 / (download) - annotate - [select for diffs], Wed Aug 15 13:51:09 2007 UTC (7 years, 2 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.46: +115 -41 lines
Diff to previous 1.46 (colored)

Sync with HEAD.

Revision 1.47 / (download) - annotate - [select for diffs], Thu Aug 9 07:34:28 2007 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.46: +115 -41 lines
Diff to previous 1.46 (colored)

Move snapshot per-mount data from struct ufsmount to mount specific data.
No functional changes.

Welcome to 4.99.28  (struct ufsmount changed size)

Revision 1.43.2.7 / (download) - annotate - [select for diffs], Sun Jul 15 13:28:15 2007 UTC (7 years, 3 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.6: +8 -7 lines
Diff to previous 1.43.2.6 (colored) to branchpoint 1.43 (colored)

Sync with head.

Revision 1.46 / (download) - annotate - [select for diffs], Thu Jul 12 09:30:04 2007 UTC (7 years, 3 months ago) by hannken
Branch: MAIN
CVS Tags: nick-csl-alignment-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: nick-csl-alignment, jmcneill-pm
Changes since 1.45: +8 -2 lines
Diff to previous 1.45 (colored)

ffs_snapshot_mount: No persistent snapshots on an Apple UFS file system.

From Thor Lancelot Simon <tls@netbsd.org>

Revision 1.43.4.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:12:42 2007 UTC (7 years, 3 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.43: +3 -8 lines
Diff to previous 1.43 (colored) next main 1.44 (colored)

Sync with head.

Revision 1.45 / (download) - annotate - [select for diffs], Tue Jul 10 09:50:08 2007 UTC (7 years, 3 months ago) by hannken
Branch: MAIN
CVS Tags: mjf-ufs-trans-base
Changes since 1.44: +2 -7 lines
Diff to previous 1.44 (colored)

Move `struct dquot' and its supporting functions from quota.h to ufs_quota.c.

- Make quota-internal functions static.
- Clean up declarations in quota.h and ufs_extern.h.  quota.h now has the
  description of quota criterions, on-disk structure, user-kernel interface and
  declaration of init/done functions.  All ufs quota related function
  prototypes go to ufs_extern.h.
- New functions ufsquota_init() and ufsquota_free() create or destroy the
  quota fields of `struct inode'.
- chkdq() and chkiq() always update the quota fields of `struct inode' first.
- Only ufs_access() explicitely calls getinoquota().

No objections on tech-kern@

Revision 1.44 / (download) - annotate - [select for diffs], Mon Jul 9 21:11:34 2007 UTC (7 years, 3 months ago) by ad
Branch: MAIN
Changes since 1.43: +3 -3 lines
Diff to previous 1.43 (colored)

Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements

Revision 1.43.2.6 / (download) - annotate - [select for diffs], Sat Jun 23 18:06:05 2007 UTC (7 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.5: +5 -5 lines
Diff to previous 1.43.2.5 (colored) to branchpoint 1.43 (colored)

- Lock v_cleanblkhd, v_dirtyblkhd, v_numoutput with the vnode's interlock.
  Get rid of global_v_numoutput_lock. Partially incomplete as the buffer
  cache locking doesn't work very well and needs an overhaul.
- Some changes to try and make softdep MP safe. Untested.

Revision 1.43.2.5 / (download) - annotate - [select for diffs], Sun Jun 17 21:32:07 2007 UTC (7 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.4: +5 -5 lines
Diff to previous 1.43.2.4 (colored) to branchpoint 1.43 (colored)

- Increase the number of thread priorities from 128 to 256. How the space
  is set up is to be revisited.
- Implement soft interrupts as kernel threads. A generic implementation
  is provided, with hooks for fast-path MD code that can run the interrupt
  threads over the top of other threads executing in the kernel.
- Split vnode::v_flag into three fields, depending on how the flag is
  locked (by the interlock, by the vnode lock, by the file system).
- Miscellaneous locking fixes and improvements.

Revision 1.43.2.4 / (download) - annotate - [select for diffs], Sun May 13 17:36:42 2007 UTC (7 years, 5 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.3: +21 -22 lines
Diff to previous 1.43.2.3 (colored) to branchpoint 1.43 (colored)

- Pass the error number and residual count to biodone(), and let it handle
  setting error indicators. Prepare to eliminate B_ERROR.
- Add a flag argument to brelse() to be set into the buf's flags, instead
  of doing it directly. Typically used to set B_INVAL.
- Add a "struct cpu_info *" argument to kthread_create(), to be used to
  create bound threads. Change "bool mpsafe" to "int flags".
- Allow exit of LWPs in the IDL state when (l != curlwp).
- More locking fixes & conversion to the new API.

Revision 1.43.2.3 / (download) - annotate - [select for diffs], Fri Apr 13 20:56:19 2007 UTC (7 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.2: +3 -3 lines
Diff to previous 1.43.2.2 (colored) to branchpoint 1.43 (colored)

- Make the devsw interface MP safe, and add some comments.
- Allow individual block/character drivers to be marked MP safe.
- Provide wrappers around the device methods that look up the
  device, returning ENXIO if it's not found, and acquire the
  kernel lock if needed.

Revision 1.43.2.2 / (download) - annotate - [select for diffs], Wed Mar 21 20:11:58 2007 UTC (7 years, 7 months ago) by ad
Branch: vmlocking
Changes since 1.43.2.1: +4 -7 lines
Diff to previous 1.43.2.1 (colored) to branchpoint 1.43 (colored)

- Replace more simple_locks, and fix up in a few places.
- Use condition variables.
- LOCK_ASSERT -> KASSERT.

Revision 1.43.2.1 / (download) - annotate - [select for diffs], Tue Mar 13 17:51:20 2007 UTC (7 years, 7 months ago) by ad
Branch: vmlocking
Changes since 1.43: +15 -15 lines
Diff to previous 1.43 (colored)

Pull in the initial set of changes for the vmlocking branch.

Revision 1.42.2.1 / (download) - annotate - [select for diffs], Mon Mar 12 06:00:58 2007 UTC (7 years, 7 months ago) by rmind
Branch: yamt-idlelwp
Changes since 1.42: +31 -30 lines
Diff to previous 1.42 (colored) next main 1.43 (colored)

Sync with HEAD.

Revision 1.43 / (download) - annotate - [select for diffs], Sun Mar 4 06:03:43 2007 UTC (7 years, 7 months ago) by christos
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.42: +31 -30 lines
Diff to previous 1.42 (colored)

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

Revision 1.17.2.3 / (download) - annotate - [select for diffs], Mon Feb 26 09:12:19 2007 UTC (7 years, 8 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17.2.2: +13 -18 lines
Diff to previous 1.17.2.2 (colored)

sync with head.

Revision 1.42 / (download) - annotate - [select for diffs], Fri Feb 16 17:24:00 2007 UTC (7 years, 8 months ago) by hannken
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Changes since 1.41: +2 -18 lines
Diff to previous 1.41 (colored)

Make fstrans(9) the default helper for file system suspension.
Replaces the now obsolete vn_start_write()/vn_finished_write().

Revision 1.41 / (download) - annotate - [select for diffs], Fri Feb 9 21:55:37 2007 UTC (7 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: post-newlock2-merge
Changes since 1.40: +8 -8 lines
Diff to previous 1.40 (colored)

Merge newlock2 to head.

Revision 1.31.4.4 / (download) - annotate - [select for diffs], Thu Feb 1 08:48:48 2007 UTC (7 years, 8 months ago) by ad
Branch: newlock2
Changes since 1.31.4.3: +15 -4 lines
Diff to previous 1.31.4.3 (colored) to branchpoint 1.31 (colored) next main 1.32 (colored)

Sync with head.

Revision 1.40 / (download) - annotate - [select for diffs], Fri Jan 19 14:49:12 2007 UTC (7 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: newlock2-nbase, newlock2-base
Changes since 1.39: +15 -4 lines
Diff to previous 1.39 (colored)

New file system suspension API to replace vn_start_write and vn_finished_write.
The suspension helpers are now put into file system specific operations.
This means every file system not supporting these helpers cannot be suspended
and therefore snapshots are no longer possible.

Implemented for file systems of type ffs.

The new API is enabled on a kernel option NEWVNGATE.  This option is
not enabled by default in any kernel config.

Presented and discussed on tech-kern with much input from
Bill Studenmund <wrstuden@netbsd.org> and YAMAMOTO Takashi <yamt@netbsd.org>.

Welcome to 4.99.9 (new vfs op vfs_suspendctl).

Revision 1.31.4.3 / (download) - annotate - [select for diffs], Fri Jan 12 01:04:24 2007 UTC (7 years, 9 months ago) by ad
Branch: newlock2
Changes since 1.31.4.2: +8 -3 lines
Diff to previous 1.31.4.2 (colored) to branchpoint 1.31 (colored)

Sync with head.

Revision 1.39 / (download) - annotate - [select for diffs], Thu Jan 4 16:55:29 2007 UTC (7 years, 9 months ago) by elad
Branch: MAIN
Changes since 1.38: +3 -3 lines
Diff to previous 1.38 (colored)

Consistent usage of KAUTH_GENERIC_ISSUSER.

Revision 1.17.2.2 / (download) - annotate - [select for diffs], Sat Dec 30 20:51:00 2006 UTC (7 years, 10 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17.2.1: +31 -17 lines
Diff to previous 1.17.2.1 (colored)

sync with head.

Revision 1.31.4.2 / (download) - annotate - [select for diffs], Fri Dec 29 20:27:45 2006 UTC (7 years, 10 months ago) by ad
Branch: newlock2
Changes since 1.31.4.1: +8 -8 lines
Diff to previous 1.31.4.1 (colored) to branchpoint 1.31 (colored)

Checkpoint work in progress.

Revision 1.31.6.2 / (download) - annotate - [select for diffs], Sun Dec 10 07:19:32 2006 UTC (7 years, 10 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.31.6.1: +22 -10 lines
Diff to previous 1.31.6.1 (colored) to branchpoint 1.31 (colored) next main 1.32 (colored)

sync with head.

Revision 1.37.2.1 / (download) - annotate - [select for diffs], Wed Dec 6 13:31:48 2006 UTC (7 years, 10 months ago) by tron
Branch: netbsd-4
CVS Tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, 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, matt-nb4-arm-base, matt-nb4-arm
Changes since 1.37: +7 -2 lines
Diff to previous 1.37 (colored) next main 1.38 (colored)

Pull up following revision(s) (requested by hannken in ticket #252):
	sys/ufs/ffs/ffs_snapshot.c: revision 1.38
On snapshot creation be sure the snapshot vnode has valid quota information.
Fixes PR kern/35121

Revision 1.11.2.7.2.1 / (download) - annotate - [select for diffs], Wed Dec 6 13:28:29 2006 UTC (7 years, 10 months ago) by tron
Branch: netbsd-3-0
CVS Tags: netbsd-3-0-3-RELEASE
Changes since 1.11.2.7: +6 -1 lines
Diff to previous 1.11.2.7 (colored) next main 1.11.2.8 (colored)

Pull up following revision(s) (requested by hannken in ticket #1598):
	sys/ufs/ffs/ffs_snapshot.c: revision 1.38
On snapshot creation be sure the snapshot vnode has valid quota information.
Fixes PR kern/35121

Revision 1.11.2.7.4.1 / (download) - annotate - [select for diffs], Wed Dec 6 13:25:36 2006 UTC (7 years, 10 months ago) by tron
Branch: netbsd-3-1
CVS Tags: netbsd-3-1-1-RELEASE
Changes since 1.11.2.7: +6 -1 lines
Diff to previous 1.11.2.7 (colored) next main 1.11.2.8 (colored)

Pull up following revision(s) (requested by hannken in ticket #1598):
	sys/ufs/ffs/ffs_snapshot.c: revision 1.38
On snapshot creation be sure the snapshot vnode has valid quota information.
Fixes PR kern/35121

Revision 1.11.2.8 / (download) - annotate - [select for diffs], Wed Dec 6 13:22:24 2006 UTC (7 years, 10 months ago) by tron
Branch: netbsd-3
Changes since 1.11.2.7: +6 -1 lines
Diff to previous 1.11.2.7 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)

Pull up following revision(s) (requested by hannken in ticket #1598):
	sys/ufs/ffs/ffs_snapshot.c: revision 1.38
On snapshot creation be sure the snapshot vnode has valid quota information.
Fixes PR kern/35121

Revision 1.38 / (download) - annotate - [select for diffs], Sat Dec 2 17:21:11 2006 UTC (7 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3
Changes since 1.37: +7 -2 lines
Diff to previous 1.37 (colored)

On snapshot creation be sure the snapshot vnode has valid quota information.

Fixes PR kern/35121

Revision 1.31.4.1 / (download) - annotate - [select for diffs], Sat Nov 18 21:39:48 2006 UTC (7 years, 11 months ago) by ad
Branch: newlock2
Changes since 1.31: +15 -6 lines
Diff to previous 1.31 (colored)

Sync with head.

Revision 1.37 / (download) - annotate - [select for diffs], Thu Nov 16 21:21:34 2006 UTC (7 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: netbsd-4-base
Branch point for: netbsd-4
Changes since 1.36: +5 -3 lines
Diff to previous 1.36 (colored)

ifdef out an unused function if !FFS_NO_SNAPSHOT

Revision 1.36 / (download) - annotate - [select for diffs], Thu Nov 16 01:33:53 2006 UTC (7 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.35: +8 -8 lines
Diff to previous 1.35 (colored)

__unused removal on arguments; approved by core.

Revision 1.35 / (download) - annotate - [select for diffs], Wed Oct 25 22:01:55 2006 UTC (8 years ago) by reinoud
Branch: MAIN
Changes since 1.34: +9 -4 lines
Diff to previous 1.34 (colored)

Revisit mnt_vnodelist TAILQ patch. Remove all suspicious TAILQ_FOREACH()
loops where vnodes can get removed or added during the loops. This could
lead to panic's on unmount since nodes are skipped or otherwise
TAILQ_NEXT(0xdeadbeef, ...) was dereferenced.

Revision 1.31.6.1 / (download) - annotate - [select for diffs], Sun Oct 22 06:07:50 2006 UTC (8 years ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.31: +11 -9 lines
Diff to previous 1.31 (colored)

sync with head

Revision 1.34 / (download) - annotate - [select for diffs], Fri Oct 20 18:58:12 2006 UTC (8 years ago) by reinoud
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.33: +4 -5 lines
Diff to previous 1.33 (colored)

Replace the LIST structure mp->mnt_vnodelist to a TAILQ structure since all
vnodes were synced and processed backwards. This meant that the last
accessed node was processed first and the earlierst last.

An extra benefit is the removal of the ugly hack from the Berkly days on
LFS.

In the proces, i've also replaced the various variations hand written loops
by the TAILQ_FOREACH() macro's.

Revision 1.33 / (download) - annotate - [select for diffs], Thu Oct 12 01:32:51 2006 UTC (8 years ago) by christos
Branch: MAIN
Changes since 1.32: +7 -6 lines
Diff to previous 1.32 (colored)

- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.32 / (download) - annotate - [select for diffs], Fri Sep 29 19:37:11 2006 UTC (8 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.31: +4 -2 lines
Diff to previous 1.31 (colored)

Coverity CID 2949: comment out dead code (from Arnaud Lacombe)

Revision 1.24.2.1 / (download) - annotate - [select for diffs], Sat Sep 9 03:00:00 2006 UTC (8 years, 1 month ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.24: +22 -22 lines
Diff to previous 1.24 (colored) next main 1.25 (colored)

sync with head

Revision 1.24.6.4 / (download) - annotate - [select for diffs], Fri Aug 11 15:47:36 2006 UTC (8 years, 2 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.24.6.3: +13 -13 lines
Diff to previous 1.24.6.3 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

sync with head

Revision 1.31 / (download) - annotate - [select for diffs], Sun Jul 23 22:06:15 2006 UTC (8 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, rpaulo-netinet-merge-pcb-base, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.30: +13 -13 lines
Diff to previous 1.30 (colored)

Use the LWP cached credentials where sane.

Revision 1.24.6.3 / (download) - annotate - [select for diffs], Mon Jun 26 12:54:49 2006 UTC (8 years, 4 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.24.6.2: +4 -4 lines
Diff to previous 1.24.6.2 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.17.2.1 / (download) - annotate - [select for diffs], Wed Jun 21 15:12:31 2006 UTC (8 years, 4 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.17: +113 -180 lines
Diff to previous 1.17 (colored)

sync with head.

Revision 1.29.2.1 / (download) - annotate - [select for diffs], Mon Jun 19 04:11:13 2006 UTC (8 years, 4 months ago) by chap
Branch: chap-midi
Changes since 1.29: +4 -4 lines
Diff to previous 1.29 (colored) next main 1.30 (colored)

Sync with head.

Revision 1.30 / (download) - annotate - [select for diffs], Wed Jun 7 22:34:19 2006 UTC (8 years, 4 months ago) by kardel
Branch: MAIN
CVS Tags: yamt-pdpolicy-base6, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base
Changes since 1.29: +4 -4 lines
Diff to previous 1.29 (colored)

merge FreeBSD timecounters from branch simonb-timecounters
- struct timeval time is gone
  time.tv_sec -> time_second
- struct timeval mono_time is gone
  mono_time.tv_sec -> time_uptime
- access to time via
	{get,}{micro,nano,bin}time()
	get* versions are fast but less precise
- support NTP nanokernel implementation (NTP API 4)
- further reading:
  Timecounter Paper: http://phk.freebsd.dk/pubs/timecounter.pdf
  NTP Nanokernel: http://www.eecis.udel.edu/~mills/ntp/html/kern.html

Revision 1.24.4.3 / (download) - annotate - [select for diffs], Thu Jun 1 22:39:28 2006 UTC (8 years, 5 months ago) by kardel
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.24.4.2: +13 -11 lines
Diff to previous 1.24.4.2 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

Sync with head.

Revision 1.24.10.2 / (download) - annotate - [select for diffs], Wed May 24 15:50:47 2006 UTC (8 years, 5 months ago) by tron
Branch: peter-altq
Changes since 1.24.10.1: +13 -13 lines
Diff to previous 1.24.10.1 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.24.6.2 / (download) - annotate - [select for diffs], Wed May 24 10:59:25 2006 UTC (8 years, 5 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.24.6.1: +13 -13 lines
Diff to previous 1.24.6.1 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.29 / (download) - annotate - [select for diffs], Sun May 14 21:32:45 2006 UTC (8 years, 5 months ago) by elad
Branch: MAIN
CVS Tags: yamt-pdpolicy-base5, simonb-timecounters-base
Branch point for: chap-midi
Changes since 1.28: +13 -11 lines
Diff to previous 1.28 (colored)

integrate kauth.

Revision 1.24.8.5 / (download) - annotate - [select for diffs], Thu May 11 23:32:03 2006 UTC (8 years, 5 months ago) by elad
Branch: elad-kernelauth
Changes since 1.24.8.4: +2 -4 lines
Diff to previous 1.24.8.4 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored)

sync with head

Revision 1.24.8.4 / (download) - annotate - [select for diffs], Sat May 6 23:32:33 2006 UTC (8 years, 5 months ago) by christos
Branch: elad-kernelauth
Changes since 1.24.8.3: +3 -2 lines
Diff to previous 1.24.8.3 (colored) to branchpoint 1.24 (colored)

- Move kauth_cred_t declaration to <sys/types.h>
- Cleanup struct ucred; forward declarations that are unused.
- Don't include <sys/kauth.h> in any header, but include it in the c files
  that need it.

Approved by core.

Revision 1.24.4.2 / (download) - annotate - [select for diffs], Sat Apr 22 11:40:24 2006 UTC (8 years, 6 months ago) by simonb
Branch: simonb-timecounters
Changes since 1.24.4.1: +8 -10 lines
Diff to previous 1.24.4.1 (colored) to branchpoint 1.24 (colored)

Sync with head.

Revision 1.24.8.3 / (download) - annotate - [select for diffs], Wed Apr 19 03:54:09 2006 UTC (8 years, 6 months ago) by elad
Branch: elad-kernelauth
Changes since 1.24.8.2: +8 -8 lines
Diff to previous 1.24.8.2 (colored) to branchpoint 1.24 (colored)

sync with head.

Revision 1.28 / (download) - annotate - [select for diffs], Tue Apr 18 21:39:03 2006 UTC (8 years, 6 months ago) by christos
Branch: MAIN
CVS Tags: elad-kernelauth-base
Changes since 1.27: +2 -4 lines
Diff to previous 1.27 (colored)

Coverity CID 746: Remove dead code. lbn >= NDADDR is mutually exclusive to
snapshot_locked == 0.

Revision 1.27 / (download) - annotate - [select for diffs], Mon Apr 10 22:01:06 2006 UTC (8 years, 6 months ago) by bouyer
Branch: MAIN
CVS Tags: yamt-pdpolicy-base4
Changes since 1.26: +1 -3 lines
Diff to previous 1.26 (colored)

Revert previous; I mixed bpp and *bpp when reading ffs_balloc_ufs1().
ffs_balloc() will always allocate a new buffer or leave it as NULL,
so coverity is wrong here, we're not using a freed argument.

Revision 1.26 / (download) - annotate - [select for diffs], Mon Apr 10 21:50:18 2006 UTC (8 years, 6 months ago) by bouyer
Branch: MAIN
Changes since 1.25: +5 -3 lines
Diff to previous 1.25 (colored)

If we brelse ibp, set ibp to NULL, to avoid reusing it later in balloc()
or in our code at the next iteration.
Coverity ID 2706

Revision 1.24.6.1 / (download) - annotate - [select for diffs], Sat Apr 1 12:07:51 2006 UTC (8 years, 7 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.24: +8 -8 lines
Diff to previous 1.24 (colored)

sync with head.

Revision 1.24.10.1 / (download) - annotate - [select for diffs], Tue Mar 28 09:42:30 2006 UTC (8 years, 7 months ago) by tron
Branch: peter-altq
Changes since 1.24: +8 -8 lines
Diff to previous 1.24 (colored)

Merge 2006-03-28 NetBSD-current into the "peter-altq" branch.

Revision 1.25 / (download) - annotate - [select for diffs], Fri Mar 17 23:29:12 2006 UTC (8 years, 7 months ago) by christos
Branch: MAIN
CVS Tags: yamt-pdpolicy-base3
Changes since 1.24: +8 -8 lines
Diff to previous 1.24 (colored)

don't use MALLOC with a non-constant size; use malloc instead.

Revision 1.24.8.2 / (download) - annotate - [select for diffs], Fri Mar 10 14:21:11 2006 UTC (8 years, 7 months ago) by elad
Branch: elad-kernelauth
Changes since 1.24.8.1: +3 -3 lines
Diff to previous 1.24.8.1 (colored) to branchpoint 1.24 (colored)

generic_authorize() -> kauth_authorize_generic().

Revision 1.24.8.1 / (download) - annotate - [select for diffs], Wed Mar 8 01:39:12 2006 UTC (8 years, 7 months ago) by elad
Branch: elad-kernelauth
Changes since 1.24: +12 -11 lines
Diff to previous 1.24 (colored)

Adapt to kernel authorization KPI.

Revision 1.24.4.1 / (download) - annotate - [select for diffs], Sat Feb 4 14:12:50 2006 UTC (8 years, 8 months ago) by simonb
Branch: simonb-timecounters
Changes since 1.24: +4 -4 lines
Diff to previous 1.24 (colored)

Adapt for timecounters: mostly use get*time() and use "time_second"
instead of "time.tv_sec".

Revision 1.23.2.1 / (download) - annotate - [select for diffs], Sun Jan 15 10:03:05 2006 UTC (8 years, 9 months ago) by yamt
Branch: yamt-uio_vmspace
Changes since 1.23: +5 -11 lines
Diff to previous 1.23 (colored) next main 1.24 (colored)

sync with head.

Revision 1.24 / (download) - annotate - [select for diffs], Wed Jan 4 10:13:06 2006 UTC (8 years, 9 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb, peter-altq, elad-kernelauth
Changes since 1.23: +5 -11 lines
Diff to previous 1.23 (colored)

- add simple functions to allocate/free a buffer for i/o.
- make bufpool static.

Revision 1.23 / (download) - annotate - [select for diffs], Sun Dec 11 12:25:25 2005 UTC (8 years, 10 months ago) by christos
Branch: MAIN
Branch point for: yamt-uio_vmspace
Changes since 1.22: +12 -12 lines
Diff to previous 1.22 (colored)

merge ktrace-lwp.

Revision 1.5.2.11 / (download) - annotate - [select for diffs], Thu Nov 10 14:12:31 2005 UTC (8 years, 11 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.10: +269 -279 lines
Diff to previous 1.5.2.10 (colored) next main 1.6 (colored)

Sync with HEAD. Here we go again...

Revision 1.22 / (download) - annotate - [select for diffs], Wed Nov 2 12:39:00 2005 UTC (8 years, 11 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, ktrace-lwp-base
Changes since 1.21: +21 -21 lines
Diff to previous 1.21 (colored)

merge yamt-vop branch.  remove following VOPs.

	VOP_BLKATOFF
	VOP_VALLOC
	VOP_BALLOC
	VOP_REALLOCBLKS
	VOP_VFREE
	VOP_TRUNCATE
	VOP_UPDATE

Revision 1.21.2.2 / (download) - annotate - [select for diffs], Sat Oct 29 17:21:12 2005 UTC (9 years ago) by yamt
Branch: yamt-vop
Changes since 1.21.2.1: +21 -21 lines
Diff to previous 1.21.2.1 (colored) to branchpoint 1.21 (colored) next main 1.22 (colored)

use ffs_* directly rather than via ufs_ops.
suggested by Chuck Silvers.

Revision 1.21.2.1 / (download) - annotate - [select for diffs], Thu Oct 20 03:00:30 2005 UTC (9 years ago) by yamt
Branch: yamt-vop
Changes since 1.21: +21 -21 lines
Diff to previous 1.21 (colored)

adapt ufs.

Revision 1.21 / (download) - annotate - [select for diffs], Mon Sep 26 14:10:32 2005 UTC (9 years, 1 month ago) by yamt
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, thorpej-vnode-attr-base, thorpej-vnode-attr
Branch point for: yamt-vop
Changes since 1.20: +3 -3 lines
Diff to previous 1.20 (colored)

revert ffs_snapshot.c 1.20 because it's bogus.  pointed by Simon Burge.

Revision 1.20 / (download) - annotate - [select for diffs], Mon Sep 26 13:52:20 2005 UTC (9 years, 1 month ago) by yamt
Branch: MAIN
Changes since 1.19: +3 -3 lines
Diff to previous 1.19 (colored)

always use nanotime rather than time.
it's bad to mix nanotime and time because it sometimes
make timestamps go backwards.

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

64 bit inode changes.

Revision 1.18 / (download) - annotate - [select for diffs], Fri Jul 15 05:01:16 2005 UTC (9 years, 3 months ago) by thorpej
Branch: MAIN
Changes since 1.17: +51 -117 lines
Diff to previous 1.17 (colored)

Use ANSI function decls.

Revision 1.17 / (download) - annotate - [select for diffs], Sun May 29 21:25:24 2005 UTC (9 years, 5 months ago) by christos
Branch: MAIN
Branch point for: yamt-lazymbuf
Changes since 1.16: +23 -23 lines
Diff to previous 1.16 (colored)

- sprinkle const
- avoid shadow variables.

Revision 1.11.2.7 / (download) - annotate - [select for diffs], Sat May 28 12:47:14 2005 UTC (9 years, 5 months ago) by tron
Branch: netbsd-3
CVS Tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, 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-2-RELEASE, netbsd-3-0-1-RELEASE
Branch point for: netbsd-3-1, netbsd-3-0
Changes since 1.11.2.6: +16 -33 lines
Diff to previous 1.11.2.6 (colored) to branchpoint 1.11 (colored)

Pull up revision 1.16 (requested by hannken in ticket #334):
- Use an empty snap block list to set the initial file size.  Snapshot is
  now valid from the beginning.  No need to copy the last fs block two times.
- No need to allocate the cylinder group blocks twice.
- cgbuf -> sbbuf

Revision 1.11.2.6 / (download) - annotate - [select for diffs], Sat May 28 12:45:31 2005 UTC (9 years, 5 months ago) by tron
Branch: netbsd-3
Changes since 1.11.2.5: +152 -91 lines
Diff to previous 1.11.2.5 (colored) to branchpoint 1.11 (colored)

Pull up revision 1.15 (requested by hannken in ticket #334):
ffs/ffs_alloc.c:
- Add a missing ACTIVECG_CLR().
ffs/ffs_snapshot.c:
- Use async/delayed writes for snapshot creation and sync/uncache these buffers
  on end. Reduces the time the file system must be suspended.
- Remove um_snaplistsize. Was a duplicate of um_snapblklist[0].
- Byte swap the list of preallocated blocks on read/write instead of access.
- Always keep this list on ip->i_snapblklist so it may be rolled back when the
  newest snapshot gets removed. Fixes a rare snapshot corruption when using
  more than one snapshot on a file system.
ufs/ufsmount.h:
  - Make TAILQ_LAST() possible on member um_snapshots.
  - Remove um_snaplistsize. Was a duplicate of um_snapblklist[0].

Revision 1.16 / (download) - annotate - [select for diffs], Wed May 25 11:07:13 2005 UTC (9 years, 5 months ago) by hannken
Branch: MAIN
Changes since 1.15: +16 -33 lines
Diff to previous 1.15 (colored)

- Use an empty snap block list to set the initial file size.  Snapshot is
  now valid from the beginning.  No need to copy the last fs block two times.
- No need to allocate the cylinder group blocks twice.
- cgbuf -> sbbuf

Revision 1.15 / (download) - annotate - [select for diffs], Sun May 22 08:35:28 2005 UTC (9 years, 5 months ago) by hannken
Branch: MAIN
Changes since 1.14: +153 -92 lines
Diff to previous 1.14 (colored)

ffs/ffs_alloc.c:
- Add a missing ACTIVECG_CLR().

ffs/ffs_snapshot.c:
- Use async/delayed writes for snapshot creation and sync/uncache these buffers
  on end. Reduces the time the file system must be suspended.
- Remove um_snaplistsize. Was a duplicate of um_snapblklist[0].
- Byte swap the list of preallocated blocks on read/write instead of access.
- Always keep this list on ip->i_snapblklist so it may be rolled back when the
  newest snapshot gets removed. Fixes a rare snapshot corruption when using
  more than one snapshot on a file system.

ufs/ufsmount.h:
  - Make TAILQ_LAST() possible on member um_snapshots.
  - Remove um_snaplistsize. Was a duplicate of um_snapblklist[0].

Revision 1.11.2.5 / (download) - annotate - [select for diffs], Tue May 3 11:48:29 2005 UTC (9 years, 5 months ago) by tron
Branch: netbsd-3
Changes since 1.11.2.4: +6 -9 lines
Diff to previous 1.11.2.4 (colored) to branchpoint 1.11 (colored)

Pull up revision 1.14 (requested by hannken in ticket #244):
Fix last commit.  The last block of the file system may have changed
even if the last cylinder group is not modified.

Revision 1.11.2.4 / (download) - annotate - [select for diffs], Tue May 3 11:46:50 2005 UTC (9 years, 5 months ago) by tron
Branch: netbsd-3
Changes since 1.11.2.3: +0 -0 lines
Diff to previous 1.11.2.3 (colored) to branchpoint 1.11 (colored)

Restore file which was deleted by accident because of CVS glitch.

Revision 1.11.2.3, Tue May 3 11:44:43 2005 UTC (9 years, 5 months ago) by tron
Branch: netbsd-3
Changes since 1.11.2.2: +1 -1 lines
FILE REMOVED

Pull up revision 1.14 (requested by hannken in ticket #244):
Fix last commit.  The last block of the file system may have changed
even if the last cylinder group is not modified.

Revision 1.14 / (download) - annotate - [select for diffs], Tue May 3 09:43:23 2005 UTC (9 years, 5 months ago) by hannken
Branch: MAIN
Changes since 1.13: +6 -9 lines
Diff to previous 1.13 (colored)

Fix last commit.  The last block of the file system may have changed
even if the last cylinder group is not modified.

Revision 1.7.4.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:29:39 2005 UTC (9 years, 6 months ago) by kent
Branch: kent-audio2
Changes since 1.7: +37 -9 lines
Diff to previous 1.7 (colored) next main 1.8 (colored)

sync with -current

Revision 1.11.2.2 / (download) - annotate - [select for diffs], Mon Apr 25 13:37:23 2005 UTC (9 years, 6 months ago) by tron
Branch: netbsd-3
Changes since 1.11.2.1: +11 -1 lines
Diff to previous 1.11.2.1 (colored) to branchpoint 1.11 (colored)

Pull up revision 1.13 (requested by hannken in ticket #197):
Fix an inconsistency where the last block of the snapshot contains old data.
The last block of the file system is written to the snapshot before the
file system is suspended.  If the last cylinder group is modified after
the file system is suspended the last block of the snapshot may contain
old data.  So update this block again.

Revision 1.11.2.1 / (download) - annotate - [select for diffs], Mon Apr 25 13:36:24 2005 UTC (9 years, 6 months ago) by tron
Branch: netbsd-3
Changes since 1.11: +3 -3 lines
Diff to previous 1.11 (colored)

Pull up revision 1.12 (requested by hannken in ticket #197):
don't assign to non-lvalue.  found by gcc4.

Revision 1.13 / (download) - annotate - [select for diffs], Sun Apr 24 15:49:37 2005 UTC (9 years, 6 months ago) by hannken
Branch: MAIN
CVS Tags: kent-audio2-base
Changes since 1.12: +11 -1 lines
Diff to previous 1.12 (colored)

Fix an inconsistency where the last block of the snapshot contains old data.

The last block of the file system is written to the snapshot before the
file system is suspended.  If the last cylinder group is modified after
the file system is suspended the last block of the snapshot may contain
old data.  So update this block again.

Revision 1.12 / (download) - annotate - [select for diffs], Thu Apr 21 14:02:02 2005 UTC (9 years, 6 months ago) by yamt
Branch: MAIN
Changes since 1.11: +3 -3 lines
Diff to previous 1.11 (colored)

don't assign to non-lvalue.  found by gcc4.

Revision 1.8.2.2 / (download) - annotate - [select for diffs], Sat Mar 19 08:37:03 2005 UTC (9 years, 7 months ago) by yamt
Branch: yamt-km
Changes since 1.8.2.1: +14 -6 lines
Diff to previous 1.8.2.1 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored)

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

Revision 1.5.2.10 / (download) - annotate - [select for diffs], Fri Mar 4 16:54:45 2005 UTC (9 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.9: +14 -6 lines
Diff to previous 1.5.2.9 (colored)

Sync with HEAD.

Hi Perry!

Revision 1.11 / (download) - annotate - [select for diffs], Sat Feb 26 22:32:20 2005 UTC (9 years, 8 months ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base
Branch point for: netbsd-3
Changes since 1.10: +5 -5 lines
Diff to previous 1.10 (colored)

nuke trailing whitespace

Revision 1.10 / (download) - annotate - [select for diffs], Mon Feb 21 17:52:11 2005 UTC (9 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.9: +10 -2 lines
Diff to previous 1.9 (colored)

Make `options FFS_NO_SNAPSHOT' only disable snapshot creation
while not trashing existing snapshots.

Approved by: core@

Revision 1.5.2.9 / (download) - annotate - [select for diffs], Tue Feb 15 22:00:20 2005 UTC (9 years, 8 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.8: +3 -3 lines
Diff to previous 1.5.2.8 (colored)

Adapt to branch.

Revision 1.5.2.8 / (download) - annotate - [select for diffs], Tue Feb 15 21:34:01 2005 UTC (9 years, 8 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.7: +6 -2 lines
Diff to previous 1.5.2.7 (colored)

Sync with HEAD.

Revision 1.8.2.1 / (download) - annotate - [select for diffs], Sat Feb 12 18:17:56 2005 UTC (9 years, 8 months ago) by yamt
Branch: yamt-km
Changes since 1.8: +6 -2 lines
Diff to previous 1.8 (colored)

sync with head.

Revision 1.9 / (download) - annotate - [select for diffs], Wed Feb 9 16:05:29 2005 UTC (9 years, 8 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-km-base2, matt-timespec
Changes since 1.8: +6 -2 lines
Diff to previous 1.8 (colored)

Fss device only checks read access to snapshot vode.  On snapshot creation
check we are either super-user or owner of the snapshot vnode.

Revision 1.5.2.7 / (download) - annotate - [select for diffs], Fri Feb 4 11:48:27 2005 UTC (9 years, 8 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.6: +9 -9 lines
Diff to previous 1.5.2.6 (colored)

Sync with HEAD.

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

Sync with HEAD.

Revision 1.8 / (download) - annotate - [select for diffs], Tue Jan 18 10:40:21 2005 UTC (9 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-km-base
Branch point for: yamt-km
Changes since 1.7: +7 -1 lines
Diff to previous 1.7 (colored)

Protect calls to `ffs_*_swap' with `#ifdef FFS_EI'.

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

Fix the sync with head I botched.

Revision 1.5.2.4 / (download) - annotate - [select for diffs], Sat Sep 18 14:56:52 2004 UTC (10 years, 1 month ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.3: +5 -5 lines
Diff to previous 1.5.2.3 (colored)

Sync with HEAD.

Revision 1.7 / (download) - annotate - [select for diffs], Fri Sep 17 14:11:27 2004 UTC (10 years, 1 month ago) by skrll
Branch: MAIN
CVS Tags: kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: kent-audio2
Changes since 1.6: +5 -5 lines
Diff to previous 1.6 (colored)

There's no need to pass a proc value when using UIO_SYSSPACE with
vn_rdwr(9) and uiomove(9).

OK'd by Jason Thorpe

Revision 1.5.2.3 / (download) - annotate - [select for diffs], Fri Sep 3 12:45:55 2004 UTC (10 years, 1 month ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.2: +4 -8 lines
Diff to previous 1.5.2.2 (colored)

Sync with HEAD

Revision 1.6 / (download) - annotate - [select for diffs], Sun Aug 29 10:13:48 2004 UTC (10 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.5: +4 -8 lines
Diff to previous 1.5 (colored)

While creating a snapshot inodes must be freed from the
snapshot, not from the file system.
ffs_freefile() needs explicit "fs" and "devvp" arguments.

Revision 1.5.2.2 / (download) - annotate - [select for diffs], Tue Aug 3 10:56:49 2004 UTC (10 years, 2 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.5.2.1: +2144 -0 lines
Diff to previous 1.5.2.1 (colored)

Sync with HEAD

Revision 1.5.2.1, Wed Jun 30 18:42:17 2004 UTC (10 years, 4 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.5: +0 -2144 lines
FILE REMOVED

file ffs_snapshot.c was added on branch ktrace-lwp on 2004-08-03 10:56:49 +0000

Revision 1.5 / (download) - annotate - [select for diffs], Wed Jun 30 18:42:17 2004 UTC (10 years, 4 months ago) by hannken
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (colored)

When we expunge an unreferenced file from a snapshot its size may be zero.

Revision 1.4 / (download) - annotate - [select for diffs], Sun Jun 20 18:55:58 2004 UTC (10 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.3: +99 -89 lines
Diff to previous 1.3 (colored)

- Add flag L_COWINPROGRESS to struct lwp to avoid recursion when
  doing copy-on-write.

- Change VFS_SNAPSHOT() to return the snapshot vnode locked.

- Make the IO path for copy-on-write and snapshot-read more lightweight.
  Avoids deadlocks where vn_rdwr(...READ...) has a shared lock and needs
  to copy-on-write.
  Avoids deadlocks/panics where to clean pages the copy-on-write needs
  to allocate pages for its VOP_PUTPAGES().

L_COWINPROGRESS part approved by: Jason R. Thorpe <thorpej@netbsd.org>

Revision 1.3 / (download) - annotate - [select for diffs], Mon May 31 13:28:53 2004 UTC (10 years, 5 months ago) by hannken
Branch: MAIN
Changes since 1.2: +11 -1 lines
Diff to previous 1.2 (colored)

Once all block address modifications are done invalidate and
free all pages from the snapshot vnode.

Revision 1.2 / (download) - annotate - [select for diffs], Wed May 26 11:17:39 2004 UTC (10 years, 5 months ago) by hannken
Branch: MAIN
Changes since 1.1: +13 -17 lines
Diff to previous 1.1 (colored)

Make it compile without option FFS_EI.

Revision 1.1 / (download) - annotate - [select for diffs], Tue May 25 14:54:59 2004 UTC (10 years, 5 months ago) by hannken
Branch: MAIN

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>

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>