Fix a race in common/mkvnode.pl vnodeCreate.
safeLibOp blocks all our vnodesetup-related signals from interrupting libvnode ops to ensure at least op-level consistency. However, there was an opportunity for signals to sneak in, in between a successful vnodeCreate and the writing of the vnode.info file (that mkvnode.pl uses to know if the vnode was created or not). So I redid safeLibOp to make blocking signals optional (of course it's on for nearly all calls, except now vnodeCreate, and formerly vnodePoll). Now there's a signal-safe zone all the way around vnodeCreate, including a StoreState() before we unblock. This should ensure consistency in that particular spot. I didn't think about whether this affects anything else.
Showing with 73 additions and 33 deletions