Page MenuHomeFreeBSD

D32761.diff
No OneTemporary

D32761.diff

diff --git a/sys/geom/geom_vfs.c b/sys/geom/geom_vfs.c
--- a/sys/geom/geom_vfs.c
+++ b/sys/geom/geom_vfs.c
@@ -302,12 +302,16 @@
{
struct g_geom *gp;
struct g_vfs_softc *sc;
+ struct vnode *vp;
g_topology_assert();
gp = cp->geom;
sc = gp->softc;
+ vp = cp->private;
+ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
bufobj_invalbuf(sc->sc_bo, V_SAVE, 0, 0);
+ VOP_UNLOCK(vp);
sc->sc_bo->bo_private = cp->private;
gp->softc = NULL;
mtx_destroy(&sc->sc_mtx);

File Metadata

Mime Type
text/plain
Expires
Tue, Sep 24, 9:24 PM (22 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
12699910
Default Alt Text
D32761.diff (471 B)

Event Timeline