Hello How are user processes supposed to find an unused fss device? In dump(8) code, there is an iteration on /dev/rfss* trying to performan an ioctl FSSIOCSET. The code tests for EBUSY on failure, but in my experience that struggles to happen: if the device is already in use, the ioctl will sleep in the kernel for ages before getting a reply.
This is something I can even experience with fssconfig -l, which hangs for a while if dump is running. Is there another way? I thought about searching vnode in kernel to check if the device is already used by someone else, but that looks overkill. Perhaps the right way is to add a FSSIOBUSY ioctl that would use mutex_tryenter and return EBUSY if the device is in use? -- Emmanuel Dreyfus m...@netbsd.org