On 7/19/2021 12:35 PM, Thomas, Ramesh wrote:
On Mon, Jul 19, 2021 at 10:50:09AM -0700, Dave Jiang wrote:
> On 7/19/2021 10:34 AM, Thomas, Ramesh wrote:
>> I think copying will have the problem of compiler picking different
>> ones. Library may use the copied version while the app may get the one
>> in /usr/include. Do you think defining new constants would be safer?
> I think instead of pulling the /usr/include version we just depend on
> the copied version exclusively. Then we will have 1 less dependency and
> compile correctly always.
I was also concerned about user apps including the /user/include idxd.h.
Even in libaccel we would need to make assumptions that the constants
used will not diverge from the one driver is using. Since the issue is
only about some constants like the sw cmd_status which is not available
in older idxd.h, I think it is better to define them separately and
privately for the library.
User ABI is considered constant for Linux and if we are changing it,
there would be ways to provide backward compatibility. I think making
copy of header should be safe. That is why ndctl does that.
>