Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys Add an UFS_SNAPGONE() ufs op replacing the calls
details: https://anonhg.NetBSD.org/src/rev/53606f251d18
branches: trunk
changeset: 787405:53606f251d18
user: hannken <hannken%NetBSD.org@localhost>
date: Sun Jun 16 13:33:30 2013 +0000
description:
Add an UFS_SNAPGONE() ufs op replacing the calls
to ffs_snapgone() in ufs_lookup.c.
Ok: David Holland <dholland%netbsd.org@localhost>
Welcome to 6.99.22
diffstat:
sys/sys/param.h | 4 ++--
sys/ufs/ffs/ffs_extern.h | 4 ++--
sys/ufs/ffs/ffs_snapshot.c | 8 ++++----
sys/ufs/ffs/ffs_vfsops.c | 5 +++--
sys/ufs/ufs/ufs_extern.h | 8 +-------
sys/ufs/ufs/ufs_lookup.c | 8 ++++----
sys/ufs/ufs/ufsmount.h | 5 ++++-
7 files changed, 20 insertions(+), 22 deletions(-)
diffs (177 lines):
diff -r 3845ea059633 -r 53606f251d18 sys/sys/param.h
--- a/sys/sys/param.h Sun Jun 16 08:18:00 2013 +0000
+++ b/sys/sys/param.h Sun Jun 16 13:33:30 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: param.h,v 1.430 2013/05/29 00:47:49 christos Exp $ */
+/* $NetBSD: param.h,v 1.431 2013/06/16 13:33:30 hannken Exp $ */
/*-
* Copyright (c) 1982, 1986, 1989, 1993
@@ -63,7 +63,7 @@
* 2.99.9 (299000900)
*/
-#define __NetBSD_Version__ 699002100 /* NetBSD 6.99.21 */
+#define __NetBSD_Version__ 699002200 /* NetBSD 6.99.22 */
#define __NetBSD_Prereq__(M,m,p) (((((M) * 100000000) + \
(m) * 1000000) + (p) * 100) <= __NetBSD_Version__)
diff -r 3845ea059633 -r 53606f251d18 sys/ufs/ffs/ffs_extern.h
--- a/sys/ufs/ffs/ffs_extern.h Sun Jun 16 08:18:00 2013 +0000
+++ b/sys/ufs/ffs/ffs_extern.h Sun Jun 16 13:33:30 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ffs_extern.h,v 1.79 2012/10/19 17:09:08 drochner Exp $ */
+/* $NetBSD: ffs_extern.h,v 1.80 2013/06/16 13:33:30 hannken Exp $ */
/*-
* Copyright (c) 1991, 1993, 1994
@@ -153,7 +153,7 @@
int ffs_snapshot(struct mount *, struct vnode *, struct timespec *);
void ffs_snapshot_mount(struct mount *);
void ffs_snapshot_unmount(struct mount *);
-void ffs_snapgone(struct inode *);
+void ffs_snapgone(struct vnode *);
int ffs_snapshot_read(struct vnode *, struct uio *, int);
/* Write Ahead Physical Block Logging */
diff -r 3845ea059633 -r 53606f251d18 sys/ufs/ffs/ffs_snapshot.c
--- a/sys/ufs/ffs/ffs_snapshot.c Sun Jun 16 08:18:00 2013 +0000
+++ b/sys/ufs/ffs/ffs_snapshot.c Sun Jun 16 13:33:30 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ffs_snapshot.c,v 1.122 2013/05/07 09:40:54 hannken Exp $ */
+/* $NetBSD: ffs_snapshot.c,v 1.123 2013/06/16 13:33:30 hannken Exp $ */
/*
* Copyright 2000 Marshall Kirk McKusick. All Rights Reserved.
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ffs_snapshot.c,v 1.122 2013/05/07 09:40:54 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ffs_snapshot.c,v 1.123 2013/06/16 13:33:30 hannken Exp $");
#if defined(_KERNEL_OPT)
#include "opt_ffs.h"
@@ -1372,10 +1372,10 @@
* It will not be freed until the last open reference goes away.
*/
void
-ffs_snapgone(struct inode *ip)
+ffs_snapgone(struct vnode *vp)
{
+ struct inode *xp, *ip = VTOI(vp);
struct mount *mp = ip->i_devvp->v_specmountpoint;
- struct inode *xp;
struct fs *fs;
struct snap_info *si;
int snaploc;
diff -r 3845ea059633 -r 53606f251d18 sys/ufs/ffs/ffs_vfsops.c
--- a/sys/ufs/ffs/ffs_vfsops.c Sun Jun 16 08:18:00 2013 +0000
+++ b/sys/ufs/ffs/ffs_vfsops.c Sun Jun 16 13:33:30 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ffs_vfsops.c,v 1.283 2013/06/09 17:57:08 dholland Exp $ */
+/* $NetBSD: ffs_vfsops.c,v 1.284 2013/06/16 13:33:30 hannken Exp $ */
/*-
* Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
@@ -61,7 +61,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ffs_vfsops.c,v 1.283 2013/06/09 17:57:08 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ffs_vfsops.c,v 1.284 2013/06/16 13:33:30 hannken Exp $");
#if defined(_KERNEL_OPT)
#include "opt_ffs.h"
@@ -174,6 +174,7 @@
.uo_vfree = ffs_vfree,
.uo_balloc = ffs_balloc,
.uo_unmark_vnode = (void (*)(vnode_t *))nullop,
+ .uo_snapgone = ffs_snapgone,
};
static int
diff -r 3845ea059633 -r 53606f251d18 sys/ufs/ufs/ufs_extern.h
--- a/sys/ufs/ufs/ufs_extern.h Sun Jun 16 08:18:00 2013 +0000
+++ b/sys/ufs/ufs/ufs_extern.h Sun Jun 16 13:33:30 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ufs_extern.h,v 1.72 2012/05/09 00:21:18 riastradh Exp $ */
+/* $NetBSD: ufs_extern.h,v 1.73 2013/06/16 13:33:30 hannken Exp $ */
/*-
* Copyright (c) 1991, 1993, 1994
@@ -199,12 +199,6 @@
int ufs_gop_alloc(struct vnode *, off_t, off_t, int, kauth_cred_t);
void ufs_gop_markupdate(struct vnode *, int);
-/*
- * Snapshot function prototypes.
- */
-
-void ffs_snapgone(struct inode *);
-
__END_DECLS
extern kmutex_t ufs_ihash_lock;
diff -r 3845ea059633 -r 53606f251d18 sys/ufs/ufs/ufs_lookup.c
--- a/sys/ufs/ufs/ufs_lookup.c Sun Jun 16 08:18:00 2013 +0000
+++ b/sys/ufs/ufs/ufs_lookup.c Sun Jun 16 13:33:30 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ufs_lookup.c,v 1.123 2013/06/09 17:57:09 dholland Exp $ */
+/* $NetBSD: ufs_lookup.c,v 1.124 2013/06/16 13:33:30 hannken Exp $ */
/*
* Copyright (c) 1989, 1993
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ufs_lookup.c,v 1.123 2013/06/09 17:57:09 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ufs_lookup.c,v 1.124 2013/06/16 13:33:30 hannken Exp $");
#ifdef _KERNEL_OPT
#include "opt_ffs.h"
@@ -1150,7 +1150,7 @@
*/
if (ip != 0 && (ip->i_flags & SF_SNAPSHOT) != 0 &&
ip->i_nlink == 0)
- ffs_snapgone(ip);
+ UFS_SNAPGONE(ITOV(ip));
UFS_WAPBL_UPDATE(dvp, NULL, NULL, 0);
return (error);
}
@@ -1199,7 +1199,7 @@
* when last open reference goes away.
*/
if ((oip->i_flags & SF_SNAPSHOT) != 0 && oip->i_nlink == 0)
- ffs_snapgone(oip);
+ UFS_SNAPGONE(ITOV(oip));
UFS_WAPBL_UPDATE(vdp, NULL, NULL, UPDATE_DIROP);
return (error);
}
diff -r 3845ea059633 -r 53606f251d18 sys/ufs/ufs/ufsmount.h
--- a/sys/ufs/ufs/ufsmount.h Sun Jun 16 08:18:00 2013 +0000
+++ b/sys/ufs/ufs/ufsmount.h Sun Jun 16 13:33:30 2013 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: ufsmount.h,v 1.39 2012/10/19 17:09:08 drochner Exp $ */
+/* $NetBSD: ufsmount.h,v 1.40 2013/06/16 13:33:30 hannken Exp $ */
/*
* Copyright (c) 1982, 1986, 1989, 1993
@@ -139,6 +139,7 @@
int (*uo_balloc)(struct vnode *, off_t, int, kauth_cred_t, int,
struct buf **);
void (*uo_unmark_vnode)(struct vnode *);
+ void (*uo_snapgone)(struct vnode *);
};
#define UFS_OPS(vp) (VFSTOUFS((vp)->v_mount)->um_ops)
@@ -157,6 +158,8 @@
(*UFS_OPS(vp)->uo_balloc)((vp), (off), (size), (cr), (flags), (bpp))
#define UFS_UNMARK_VNODE(vp) \
(*UFS_OPS(vp)->uo_unmark_vnode)((vp))
+#define UFS_SNAPGONE(vp) \
+ (*UFS_OPS(vp)->uo_snapgone)((vp))
/* UFS-specific flags */
#define UFS_NEEDSWAP 0x01 /* filesystem metadata need byte-swapping */
Home |
Main Index |
Thread Index |
Old Index