In a previous email, Mr. Jones suggested, writing a test implementation of nbdcopy from scratch. First of all, thank you, Mr. Jones, as I got a better perspective of the problem and the solution.

I have almost written the bare-bones implementation for handling NBD-related stuff on which I will base the io_uring core piece by piece. It is written in C++, as I am more comfortable with it. But, made it easily translatable to C.

I have been working on a solution and have documented the current approach, it would be great if you have a look at it and let me know what you think.

Approach document:
https://gitlab.com/rathod-sahaab/nbdcpy/-/blob/dev/docs/SOLUTION.md

Thanks and regards,
Abhay