#define CREATE_CMD
#include "intel-nvme.h"
-static struct plugin intel_nvme = {
- .name = "intel",
- .desc = "Intel vendor specific extensions",
- .next = NULL,
- .commands = commands,
-};
-
-static void init() __attribute__((constructor));
-static void init()
-{
- register_extension(&intel_nvme);
-}
-
static void intel_id_ctrl(__u8 *vs)
{
char bl[9];
#include "cmd.h"
-COMMAND_LIST(
- ENTRY("id-ctrl", "Send NVMe Identify Controller", id_ctrl)
- ENTRY("smart-log-add", "Retrieve Intel SMART Log, show it", get_additional_smart_log)
- ENTRY("market-name", "Retrieve Intel Marketing Name log, show it", get_market_log)
- ENTRY("temp-stats", "Retrieve Intel Temperature Statistics log, show it", get_temp_stats_log)
- ENTRY("lat-stats", "Retrieve Intel IO Latancy Statistics log, show it", get_lat_stats_log)
+PLUGIN(NAME("intel", "Intel vendor specific extensions"),
+ COMMAND_LIST(
+ ENTRY("id-ctrl", "Send NVMe Identify Controller", id_ctrl)
+ ENTRY("smart-log-add", "Retrieve Intel SMART Log, show it", get_additional_smart_log)
+ ENTRY("market-name", "Retrieve Intel Marketing Name log, show it", get_market_log)
+ ENTRY("temp-stats", "Retrieve Intel Temperature Statistics log, show it", get_temp_stats_log)
+ ENTRY("lat-stats", "Retrieve Intel IO Latancy Statistics log, show it", get_lat_stats_log)
+ )
);
#endif
#define CREATE_CMD
#include "lnvm-nvme.h"
-static struct plugin lnvm_nvme = {
- .name = "lnvm",
- .desc = "LightNVM specific extensions",
- .commands = commands,
-};
-
-static void init() __attribute__((constructor));
-static void init()
-{
- register_extension(&lnvm_nvme);
-}
-
static int lnvm_init(int argc, char **argv, struct command *cmd, struct plugin *plugin)
{
const char *desc = "Initialize LightNVM device. A LightNVM/Open-Channel SSD"\
#include "cmd.h"
-COMMAND_LIST(
- ENTRY("list", "List available LightNVM devices", lnvm_list)
- ENTRY("info", "List general information and available target engines", lnvm_info)
- ENTRY("id-ns", "List geometry for LightNVM device", lnvm_id_ns)
- ENTRY("init", "Initialize media manager on LightNVM device", lnvm_init)
- ENTRY("create", "Create target on top of a LightNVM device", lnvm_create_tgt)
- ENTRY("remove", "Remove target from device", lnvm_remove_tgt)
- ENTRY("factory", "Reset device to factory state", lnvm_factory_init)
- ENTRY("diag-bbtbl", "Diagnose bad block table", lnvm_get_bbtbl)
- ENTRY("diag-set-bbtbl", "Update bad block table", lnvm_set_bbtbl)
+PLUGIN(NAME("lnvm", "LightNVM specific extensions"),
+ COMMAND_LIST(
+ ENTRY("list", "List available LightNVM devices", lnvm_list)
+ ENTRY("info", "List general information and available target engines", lnvm_info)
+ ENTRY("id-ns", "List geometry for LightNVM device", lnvm_id_ns)
+ ENTRY("init", "Initialize media manager on LightNVM device", lnvm_init)
+ ENTRY("create", "Create target on top of a LightNVM device", lnvm_create_tgt)
+ ENTRY("remove", "Remove target from device", lnvm_remove_tgt)
+ ENTRY("factory", "Reset device to factory state", lnvm_factory_init)
+ ENTRY("diag-bbtbl", "Diagnose bad block table", lnvm_get_bbtbl)
+ ENTRY("diag-set-bbtbl", "Update bad block table", lnvm_set_bbtbl)
+ )
);
#endif