engines/xnvme: only include entry-header ('libxnvme.h')
authorSimon A. F. Lund <simon.lund@samsung.com>
Mon, 20 Nov 2023 08:20:42 +0000 (09:20 +0100)
committerSimon A. F. Lund <simon.lund@samsung.com>
Mon, 20 Nov 2023 08:38:53 +0000 (09:38 +0100)
This changes how the xNVMe fio io-engine consumes the xNVMe library by
only including the library-entry header "libxnvme.h".

From version 0.7.0 the xNVMe API headers are refactored to drop header
guards on the individual headers and abide by the idiom of "headers must
not include other headers".

The exception is the library-entry header "libxnvme.h". The
library-entry-header includes all headers provided with xNVMe, which is
a convenient approach to consuming the library. One where, in case the
API namespace grows or shrinks, then the xNVMe fio io-engine need not
change how it includes xNVMe.

However, since fio has consumed the main-entry header and individual
headers, xNVMe has held back on removing the guards on _nvm, _zns, and
_spec to avoid breaking the xNVMe fio engine. They will eventually be
deprecated. Thus, this change to consume xNVMe in the manner intended
from version v0.7.0 and onwards.

Signed-off-by: Simon A. F. Lund <simon.lund@samsung.com>
engines/xnvme.c

index b782401363c39f3f04e3446269797452192bba55..2a0b3520bd3c068c80a120bae6e937622a492a24 100644 (file)
 #include <stdlib.h>
 #include <assert.h>
 #include <libxnvme.h>
-#include <libxnvme_libconf.h>
-#include <libxnvme_nvm.h>
-#include <libxnvme_znd.h>
-#include <libxnvme_spec_fs.h>
 #include "fio.h"
 #include "zbd_types.h"
 #include "fdp.h"