This is the seventh patch to the NBD driver and it's meant to add backward compatibility with the previous ioctl user interface while maintaining the better resource locking (ie. make NBD_SET_SOCK, NBD_DO_IT, NBD_CLEAR_SOCK all functional again as they were before patch 6). It also re-orders code more, adds a new ioctl called NBD_RUN_SOCK (to be used like NBD_DO_IT in and only in patch 6), and a few other things. This patch can be applied sequentially with my other patches against 2.5.73 or this patch can alternatively just solely be applied against Andrew's 2.5.73-mm2 sources. Unfortunately, with this patch I've also realized some things that I'm not pleased about: 1. I don't like compatibility enough in this case to justify it (even though I've implemented it). 2. This patch adds some new uglies (albiet not so bad as without the resource locking fixes of patch 6). 3. The previous nbd resource locking problems are too time consuming for me to properly explain. 4. It's best going forward for me to entirely fork my work on the nbd driver rather than to try making so many little changes to the mainstream this quickly. This will allow tighter integration with any required user space tools and also facilitate concentrating on the changes I'm most interested in. If you'd like to follow my future forked work, please do so at .