| 2954 | } |
| 2955 | |
| 2956 | static int |
| 2957 | swapongeom(struct vnode *vp) |
| 2958 | { |
| 2959 | int error; |
| 2960 | |
| 2961 | vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); |
| 2962 | if (vp->v_type != VCHR || VN_IS_DOOMED(vp)) { |
| 2963 | error = ENOENT; |
| 2964 | } else { |
| 2965 | g_topology_lock(); |
| 2966 | error = swapongeom_locked(vp->v_rdev, vp); |
| 2967 | g_topology_unlock(); |
| 2968 | } |
| 2969 | VOP_UNLOCK(vp); |
| 2970 | return (error); |
| 2971 | } |
| 2972 | |
| 2973 | /* |
| 2974 | * VNODE backend |
no test coverage detected