Hi Paul, Thanks for the patch. This same thing was the first thing I tried, but quickly realized that more was needed. When -ERESTARTSYS is returned (without first shutting down the socket), we re-enter the ioctl, create another thread, and that thread prints out "nbd3: wrong magic", terminates, and we return -EPROTO to the client, which also terminates, and the block IO is hosed.
So, I experimented with keeping both the thread and the socket alive on ERESTARTSYS (I moved the thread ptr into the nbd_device struct). But I still saw errors in nbd_read_stat(), and didn't have time to investigate further. I think I might just hack killall5 for now, to prevent it from sending the SIGSTOP/SIGCONT to nbd. Regards, Ian ------------------------------------------------------------------------------ Benefiting from Server Virtualization: Beyond Initial Workload Consolidation -- Increasing the use of server virtualization is a top priority.Virtualization can reduce costs, simplify management, and improve application availability and disaster protection. Learn more about boosting the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev _______________________________________________ Nbd-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/nbd-general
