From f568b4c78d29cd24a82f765e0dc6598d565dfa20 Mon Sep 17 00:00:00 2001 From: tegge Date: Tue, 16 May 2006 00:14:20 +0000 Subject: Read block hints list from last snapshot on the active snapshot list. --- sys/ufs/ffs/ffs_snapshot.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'sys/ufs/ffs') diff --git a/sys/ufs/ffs/ffs_snapshot.c b/sys/ufs/ffs/ffs_snapshot.c index 3b1f99b..79afa44 100644 --- a/sys/ufs/ffs/ffs_snapshot.c +++ b/sys/ufs/ffs/ffs_snapshot.c @@ -1889,6 +1889,7 @@ ffs_snapshot_mount(mp) struct thread *td = curthread; struct snapdata *sn; struct vnode *vp; + struct vnode *lastvp; struct inode *ip; struct uio auio; struct iovec aiov; @@ -1906,6 +1907,7 @@ ffs_snapshot_mount(mp) * Process each snapshot listed in the superblock. */ vp = NULL; + lastvp = NULL; sn = devvp->v_rdev->si_snapdata; for (snaploc = 0; snaploc < FSMAXSNAP; snaploc++) { if (fs->fs_snapinum[snaploc] == 0) @@ -1976,7 +1978,9 @@ ffs_snapshot_mount(mp) vp->v_vflag |= VV_SYSTEM; VI_UNLOCK(devvp); VOP_UNLOCK(vp, 0, td); + lastvp = vp; } + vp = lastvp; /* * No usable snapshots found. */ -- cgit v1.1