3) Truly making hypertv-tlfs the "documented" header, and then > removing any duplication from HDK so that it remains the
"undocumented" header file. In this manner, one would include
hyperv-tlfs to use the stable ABI, and they would include HDK (which
would include hyperv-tlfs) to use the unstable+stable ABI.
hyperv-tlfs.h is remaining the "documented" header.
But, we can't make the HDK header depend on hyperv-tlfs.h, for 2 primary
reasons:
1. We need to put the new HDK headers in uapi so that we can use them in
our IOCTL interface. As a result, we can't include hyperv-tlfs.h (unless
we put it in uapi as well).
2. The HDK headers not only duplicate, but also MODIFY some structures
in hyperv-tlfs.h. e.g., The struct is in hyperv-tlfs.h, but a particular
field or bitfield is not.
#2 was something I was worried about. Do you know if the
standards/docs team is planning on updating the TLFS at some point
with updates on their end? At which point I'd assume you'd be OK with
patches to add them to hyperv-tlfs.h