How does it break the virtual floppy, exactly? The floppy should either be there from the start and then blkid can see it or it is not there and then it can't. That should not change with O_NONBLOCK.