Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F149165146
D1980.1789615732.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
D1980.1789615732.diff
View Options
Index: sys/fs/devfs/devfs_vnops.c
===================================================================
--- sys/fs/devfs/devfs_vnops.c
+++ sys/fs/devfs/devfs_vnops.c
@@ -63,7 +63,6 @@
#include <sys/vnode.h>
static struct vop_vector devfs_vnodeops;
-static struct vop_vector devfs_specops;
static struct fileops devfs_ops_f;
#include <fs/devfs/devfs.h>
@@ -1760,7 +1759,7 @@
.vop_vptocnp = devfs_vptocnp,
};
-static struct vop_vector devfs_specops = {
+struct vop_vector devfs_specops = {
.vop_default = &default_vnodeops,
.vop_access = devfs_access,
Index: sys/kern/vfs_subr.c
===================================================================
--- sys/kern/vfs_subr.c
+++ sys/kern/vfs_subr.c
@@ -2645,6 +2645,7 @@
*/
if (vp->v_usecount == 0 || (flags & FORCECLOSE)) {
VNASSERT(vp->v_usecount == 0 ||
+ vp->v_op != &devfs_specops ||
(vp->v_type != VCHR && vp->v_type != VBLK), vp,
("device VNODE %p is FORCECLOSED", vp));
vgonel(vp);
Index: sys/sys/vnode.h
===================================================================
--- sys/sys/vnode.h
+++ sys/sys/vnode.h
@@ -822,6 +822,7 @@
extern struct vop_vector fifo_specops;
extern struct vop_vector dead_vnodeops;
extern struct vop_vector default_vnodeops;
+extern struct vop_vector devfs_specops;
#define VOP_PANIC ((void*)(uintptr_t)vop_panic)
#define VOP_NULL ((void*)(uintptr_t)vop_null)
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Sep 17, 3:28 AM (5 h, 51 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29718258
Default Alt Text
D1980.1789615732.diff (1 KB)
Attached To
Mode
D1980: Relax vflush FORCECLOSE special vnode to only protect devfs vnodes
Attached
Detach File
Event Timeline
Log In to Comment