]> www.infradead.org Git - users/sagi/libnvme.git/commitdiff
Add exported symbols to libnvme.map
authorKeith Busch <kbusch@kernel.org>
Thu, 6 Feb 2020 22:23:26 +0000 (14:23 -0800)
committerKeith Busch <kbusch@kernel.org>
Thu, 6 Feb 2020 22:23:26 +0000 (14:23 -0800)
And add the kernel-doc style comments in all exported functions.

This is just a capture of what currently exists and may change prior to tagging
as a stable release.

Signed-off-by: Keith Busch <kbusch@kernel.org>
src/libnvme.map
src/nvme/cmd.h
src/nvme/fabrics.h
src/nvme/filters.h
src/nvme/ioctl.c
src/nvme/ioctl.h
src/nvme/tree.h
src/nvme/util.c
src/nvme/util.h

index 386dddbb96b9b4f5ae07de7f1bcc1a59aea063a5..fbb3355b4fa9bde21e54b3d41426a2c390e2ee98 100644 (file)
@@ -1,6 +1,249 @@
 {
        global:
-               nvme_submit_passthru;
+               nvme_submit_admin_passthru64;
+               nvme_submit_admin_passthru;
+               nvme_submit_io_passthru64;
+               nvme_submit_io_passthru;
+               nvme_admin_passthru64;
+               nvme_admin_passthru;
+               nvme_io_passthru64;
+               nvme_io_passthru;
+               nvme_subsystem_reset;
+               nvme_ctrl_reset;
+               nvme_ns_rescan;
+               nvme_get_nsid;
+               nvme_identify;
+               nvme_identify_ctrl;
+               nvme_identify_ns;
+               nvme_identify_allocated_ns;
+               nvme_identify_active_ns_list;
+               nvme_identify_allocated_ns_list;
+               nvme_identify_nsid_ctrl_list;
+               nvme_identify_ns_descs;
+               nvme_identify_nvmset_list;
+               nvme_identify_primary_ctrl;
+               nvme_identify_secondary_ctrl_list;
+               nvme_identify_ns_granularity;
+               nvme_identify_uuid;
+               nvme_get_log;
+               nvme_get_log_error;
+               nvme_get_log_smart;
+               nvme_get_log_fw_slot;
+               nvme_get_log_changed_ns_list;
+               nvme_get_log_cmd_effects;
+               nvme_get_log_device_self_test;
+               nvme_get_log_create_telemetry_host;
+               nvme_get_log_telemetry_host;
+               nvme_get_log_telemetry_ctrl;
+               nvme_get_log_endurance_group;
+               nvme_get_log_predictable_lat_nvmset;
+               nvme_get_log_predictable_lat_event;
+               nvme_get_log_ana;
+               nvme_get_log_ana_groups;
+               nvme_get_log_lba_status;
+               nvme_get_log_endurance_grp_evt;
+               nvme_get_log_discovery;
+               nvme_get_log_reservation;
+               nvme_get_log_sanitize;
+               nvme_set_feature;
+               nvme_set_features_arbitration;
+               nvme_set_features_power_mgmt;
+               nvme_set_features_lba_range;
+               nvme_set_features_temp_thresh;
+               nvme_set_features_err_recovery;
+               nvme_set_features_volatile_wc;
+               nvme_set_features_irq_coalesce;
+               nvme_set_features_irq_config;
+               nvme_set_features_write_atomic;
+               nvme_set_features_async_event;
+               nvme_set_features_auto_pst;
+               nvme_set_features_timestamp;
+               nvme_set_features_hctm;
+               nvme_set_features_nopsc;
+               nvme_set_features_rrl;
+               nvme_set_features_plm_config;
+               nvme_set_features_plm_window;
+               nvme_set_features_lba_sts_interval;
+               nvme_set_features_host_behavior;
+               nvme_set_features_sanitize;
+               nvme_set_features_endurance_evt_cfg;
+               nvme_set_features_sw_progress;
+               nvme_set_features_host_id;
+               nvme_set_features_resv_mask;
+               nvme_set_features_resv_persist;
+               nvme_set_features_write_protect;
+               nvme_get_features;
+               nvme_get_features_arbitration;
+               nvme_get_features_power_mgmt;
+               nvme_get_features_lba_range;
+               nvme_get_features_temp_thresh;
+               nvme_get_features_err_recovery;
+               nvme_get_features_volatile_wc;
+               nvme_get_features_num_queues;
+               nvme_get_features_irq_coalesce;
+               nvme_get_features_irq_config;
+               nvme_get_features_write_atomic;
+               nvme_get_features_async_event;
+               nvme_get_features_auto_pst;
+               nvme_get_features_host_mem_buf;
+               nvme_get_features_timestamp;
+               nvme_get_features_kato;
+               nvme_get_features_hctm;
+               nvme_get_features_nopsc;
+               nvme_get_features_rrl;
+               nvme_get_features_plm_config;
+               nvme_get_features_plm_window;
+               nvme_get_features_lba_sts_interval;
+               nvme_get_features_host_behavior;
+               nvme_get_features_sanitize;
+               nvme_get_features_endurance_event_cfg;
+               nvme_get_features_sw_progress;
+               nvme_get_features_host_id;
+               nvme_get_features_resv_mask;
+               nvme_get_features_resv_persist;
+               nvme_get_features_write_protect;
+               nvme_format_nvm;
+               nvme_ns_mgmt;
+               nvme_ns_mgmt_create;
+               nvme_ns_mgmt_delete;
+               nvme_ns_attach;
+               nvme_ns_attach_ctrls;
+               nvme_ns_dettach_ctrls;
+               nvme_fw_download;
+               nvme_fw_commit;
+               nvme_security_receive;
+               nvme_security_receive;
+               nvme_get_lba_status;
+               nvme_directive_send;
+               nvme_directive_send_id_endir;
+               nvme_directive_send_stream_release_identifier;
+               nvme_directive_send_stream_release_resource;
+               nvme_directive_recv;
+               nvme_directive_recv_identify_parameters;
+               nvme_directive_recv_stream_parameters;
+               nvme_directive_recv_stream_status;
+               nvme_directive_recv_stream_allocate;
+               nvme_set_property;
+               nvme_get_property;
+               nvme_sanitize;
+               nvme_dev_self_test;
+               nvme_virtual_mgmt;
+               nvme_flush;
+               nvme_read;
+               nvme_write;
+               nvme_compare;
+               nvme_write_zeros;
+               nvme_write_uncorrectable;
+               nvme_verify;
+               nvme_dsm;
+               nvme_resv_acquire;
+               nvme_resv_register;
+               nvme_resv_release;
+               nvme_resv_report;
+               nvmf_add_ctrl_opts;
+               nvmf_add_ctrl;
+               nvme_first_subsystem;
+               nvme_next_subsystem;
+               nvme_ctrl_first_ns;
+               nvme_ctrl_next_ns;
+               nvme_ctrl_first_path;
+               nvme_ctrl_next_path;
+               nvme_subsystem_first_ctrl;
+               nvme_subsystem_next_ctrl;
+               nvme_subsystem_first_ns;
+               nvme_subsystem_next_ns;
+               nvme_ns_get_fd;
+               nvme_ns_get_nsid;
+               nvme_ns_get_lba_size;
+               nvme_ns_get_lba_count;
+               nvme_ns_get_lba_util;
+               nvme_ns_get_subsystem;
+               nvme_ns_get_ctrl;
+               nvme_ns_read;
+               nvme_ns_write;
+               nvme_ns_verify;
+               nvme_ns_compare;
+               nvme_ns_write_zeros;
+               nvme_ns_write_uncorrectable;
+               nvme_ns_flush;
+               nvme_ns_identify;
+               nvme_path_get_subsystem;
+               nvme_path_get_ns;
+               nvme_ctrl_get_subsystem;
+               nvme_ctrl_identify;
+               nvme_ctrl_disconnect;
+               nvme_scan_ctrl;
+               nvme_free_ctrl;
+               nvme_unlink_ctrl;
+               nvme_scan_filter;
+               nvme_scan;
+               nvme_refresh_topology;
+               nvme_reset_topology;
+               nvme_free_tree;
+               nvme_get_subsys_attr;
+               nvme_get_ctrl_attr;
+               nvme_get_ns_attr;
+               nvme_get_path_attr;
+               nvme_subsystem_get_nqn;
+               nvme_subsystem_get_sysfs_dir;
+               nvme_subsystem_get_name;
+               nvme_subsystem_get_nqn;
+               nvme_ctrl_get_fd;
+               nvme_ctrl_get_name;
+               nvme_ctrl_get_sysfs_dir;
+               nvme_ctrl_get_address;
+               nvme_ctrl_get_firmware;
+               nvme_ctrl_get_model;
+               nvme_ctrl_get_state;
+               nvme_ctrl_get_numa_node;
+               nvme_ctrl_get_queue_count;
+               nvme_ctrl_get_serial;
+               nvme_ctrl_get_sqsize;
+               nvme_ctrl_get_transport;
+               nvme_ctrl_get_nqn;
+               nvme_ctrl_get_subsysnqn;
+               nvme_path_get_name;
+               nvme_path_get_sysfs_dir;
+               nvme_path_get_ana_state;
+               nvme_ns_get_sysfs_dir;
+               nvme_ns_get_name;
+               nvme_status_type;
+               nvme_status_to_string;
+               nvme_status_to_errno;
+               nvme_fw_download_seq;
+               nvme_get_telemetry_log;
+               nvme_setup_id_ns;
+               nvme_setup_ctrl_list;
+               nvme_dsm_range;
+               nvme_get_log_page;
+               nvme_get_ana_log_len;
+               nvme_namespace_attach_ctrls;
+               nvme_namespace_detach_ctrls;
+               nvme_get_feature_length;
+               nvme_get_directive_receive_length;
+               nvme_open;
+               nvme_scan_ctrl_namespaces;
+               nvme_scan_ctrl_namespace_paths;
+               nvme_scan_subsystem_namespaces;
+               nvme_scan_subsystem_ctrls;
+               nvme_scan_subsystems;
+               nvme_subsys_filter;
+               nvme_ctrls_filter;
+               nvme_paths_filter;
+               nvme_namespace_filter;
+               nvmf_get_discovery_log;
+               nvmf_hostnqn_generate;
+               nvmf_hostnqn_from_file;
+               nvmf_hostid_from_file;
+               nvmf_trtype_str;
+               nvmf_adrfam_str;
+               nvmf_subtype_str;
+               nvmf_treq_str;
+               nvmf_sectype_str;
+               nvmf_prtype_str;
+               nvmf_qptype_str;
+               nvmf_cms_str;
+               nvmf_connect_disc_entry;
        local:
                *;
 };
index 3c80f45d441c2d80b30aa31807cbf47fe62bc679..90abc628be25530be8741dc2376dfb7edf989895 100644 (file)
@@ -765,7 +765,9 @@ int nvme_get_log_device_self_test(int fd, struct nvme_self_test_log *log);
  * nvme_get_log_create_telemetry_host() -
  */
 int nvme_get_log_create_telemetry_host(int fd, struct nvme_telemetry_log *log);
-/** * nvme_get_log_telemetry_host() -
+
+/**
+ * nvme_get_log_telemetry_host() -
  * @fd:                File descriptor of nvme device
  * @offset:    Offset into the telemetry data
  * @len:       Length of provided user buffer to hold the log data in bytes
@@ -1133,10 +1135,9 @@ int nvme_set_features_hctm(int fd, __u16 tmt2, __u16 tmt1, bool save,
                           __u32 *result);
 
 /**
- * nvme_admin_set_features_nopsc() -
+ * nvme_set_features_nopsc() -
  */
-int nvme_admin_set_features_nopsc(int fd, bool noppme, bool save,
-                                 __u32 *result);
+int nvme_set_features_nopsc(int fd, bool noppme, bool save, __u32 *result);
 
 /**
  * nvme_set_features_rrl() -
@@ -2253,8 +2254,6 @@ enum nvme_io_dsm_flags {
  * metadata_len:Length of user buffer, @metadata, in bytes
  * @metadata:  Pointer to user address of the metadata buffer
  *
- * Calls nvme_io() with nvme_cmd_read for the opcode.
- *
  * Return: The nvme command status if a response was received or -1 with errno
  *        set otherwise.
  */
@@ -2285,8 +2284,6 @@ int nvme_read(int fd, __u32 nsid, __u64 slba, __u16 nlb, __u16 control,
  * metadata_len:Length of user buffer, @metadata, in bytes
  * @metadata:  Pointer to user address of the metadata buffer
  *
- * Calls nvme_io() with nvme_cmd_write for the opcode.
- *
  * Return: The nvme command status if a response was received or -1 with errno
  *        set otherwise.
  */
@@ -2316,8 +2313,6 @@ int nvme_write(int fd, __u32 nsid, __u64 slba, __u16 nlb, __u16 control,
  * metadata_len:Length of user buffer, @metadata, in bytes
  * @metadata:  Pointer to user address of the metadata buffer
  *
- * Calls nvme_io() with nvme_cmd_compare for the opcode.
- *
  * Return: The nvme command status if a response was received or -1 with errno
  *        set otherwise.
  */
index 0f5e82ec3328176c264eaf9591121f6538a1b393..d79413622432e841dc2a65d02348b016939f9903 100644 (file)
@@ -3,9 +3,31 @@
 
 #include <stdbool.h>
 #include <stdint.h>
-
 #include "tree.h"
 
+/**
+ * struct nvme_fabrics_config -
+ * @transport:         
+ * @traddr:            
+ * @trsvcid:           
+ * @nqn:               
+ * @hostnqn:           
+ * @host_traddr:       
+ * @hostid:            
+ * @queue_size:                
+ * @nr_io_queues:      
+ * @reconnect_delay:   
+ * @ctrl_loss_tmo:     
+ * @keep_alive_tmo:    
+ * @nr_write_queues:   
+ * @nr_poll_queues:    
+ * @tos:               
+ * @duplicate_connect: 
+ * @disable_sqflow:    
+ * @hdr_digest:                
+ * @data_digest:       
+ * @rsvd:              
+ */
 struct nvme_fabrics_config {
        const char *transport;
        const char *traddr;
@@ -32,23 +54,82 @@ struct nvme_fabrics_config {
        uint8_t rsvd[0x200];
 };
 
+/**
+ * nvmf_add_ctrl_opts() -
+ */
 int nvmf_add_ctrl_opts(struct nvme_fabrics_config *cfg);
+
+/**
+ * nvmf_add_ctrl() -
+ */
 nvme_ctrl_t nvmf_add_ctrl(struct nvme_fabrics_config *cfg);
-int nvmf_get_discovery_log(nvme_ctrl_t c, struct nvmf_discovery_log **logp, int max_retries);
+
+/**
+ * nvmf_get_discovery_log() -
+ */
+int nvmf_get_discovery_log(nvme_ctrl_t c, struct nvmf_discovery_log **logp,
+                          int max_retries);
+
+/**
+ * nvmf_hostnqn_generate() -
+ */
 char *nvmf_hostnqn_generate();
+
+/**
+ * nvmf_hostnqn_from_file() -
+ */
 char *nvmf_hostnqn_from_file();
-char *nvmf_hostid_from_file();
 
+/**
+ * nvmf_hostid_from_file() -
+ */
+char *nvmf_hostid_from_file();
 
+/**
+ * nvmf_trtype_str() -
+ */
 const char *nvmf_trtype_str(__u8 trtype);
+
+/**
+ * nvmf_adrfam_str() -
+ */
 const char *nvmf_adrfam_str(__u8 adrfam);
+
+/**
+ * nvmf_subtype_str() -
+ */
 const char *nvmf_subtype_str(__u8 subtype);
+
+/**
+ * nvmf_treq_str() -
+ */
 const char *nvmf_treq_str(__u8 treq);
+
+/**
+ * nvmf_sectype_str() -
+ */
 const char *nvmf_sectype_str(__u8 sectype);
+
+/**
+ * nvmf_prtype_str() -
+ */
 const char *nvmf_prtype_str(__u8 prtype);
+
+/**
+ * nvmf_qptype_str() -
+ */
 const char *nvmf_qptype_str(__u8 qptype);
+
+/**
+ * nvmf_cms_str() -
+ */
 const char *nvmf_cms_str(__u8 cm);
 
+
+/**
+ * nvmf_connect_disc_entry() -
+ */
 nvme_ctrl_t nvmf_connect_disc_entry(struct nvmf_disc_log_entry *e,
        const struct nvme_fabrics_config *defcfg, bool *discover);
+
 #endif /* _LIBNVME_FABRICS_H */
index 9021c1bc7c1657600f5e74a46e6f0b626f1211b0..bc97cf8391511bf0b2c2d5edae46571272a3412f 100644 (file)
@@ -4,16 +4,49 @@
 #include <dirent.h>
 #include "tree.h"
 
-
+/**
+ * nvme_namespace_filter() -
+ */
 int nvme_namespace_filter(const struct dirent *d);
+
+/**
+ * nvme_paths_filter() -
+ */
 int nvme_paths_filter(const struct dirent *d);
+
+/**
+ * nvme_ctrls_filter() -
+ */
 int nvme_ctrls_filter(const struct dirent *d);
+
+/**
+ * nvme_subsys_filter() -
+ */
 int nvme_subsys_filter(const struct dirent *d);
 
+/**
+ * nvme_scan_subsystems() -
+ */
 int nvme_scan_subsystems(struct dirent ***subsys);
+
+/**
+ * nvme_scan_subsystem_ctrls() -
+ */
 int nvme_scan_subsystem_ctrls(nvme_subsystem_t s, struct dirent ***ctrls);
+
+/**
+ * nvme_scan_subsystem_namespaces() -
+ */
 int nvme_scan_subsystem_namespaces(nvme_subsystem_t s, struct dirent ***namespaces);
+
+/**
+ * nvme_scan_ctrl_namespace_paths() -
+ */
 int nvme_scan_ctrl_namespace_paths(nvme_ctrl_t c, struct dirent ***namespaces);
+
+/**
+ * nvme_scan_ctrl_namespaces() -
+ */
 int nvme_scan_ctrl_namespaces(nvme_ctrl_t c, struct dirent ***namespaces);
 
 #endif /* _LIBNVME_FILTERS_H */
index 1120438c6fd38fa1eabaac8d132d4b523b294b64..ab7b022f010ec44fb07bcf367f2bd472ccd1bd49 100644 (file)
@@ -39,7 +39,7 @@ int nvme_subsystem_reset(int fd)
        return ioctl(fd, NVME_IOCTL_SUBSYS_RESET);
 }
 
-int nvme_reset_controller(int fd)
+int nvme_ctrl_reset(int fd)
 {
        int ret;
 
index e5477f0f80863858b14951f7c301d3cbc29e9627..38587453c2f671ecc1e582b3d18e45f53775ccac 100644 (file)
@@ -210,7 +210,7 @@ int nvme_admin_passthru(int fd, __u8 opcode, __u8 flags, __u16 rsvd,
                __u32 timeout_ms, __u32 *result);
 
 /**
- * nvme_submit_passthru64() - Submit a 64-bit nvme passthrough command
+ * nvme_submit_io_passthru64() - Submit a 64-bit nvme passthrough command
  * @fd:                File descriptor of nvme device
  * @cmd:       The nvme io command to send
  * @result:    Optional field to return the result from the CQE DW0-1
@@ -260,7 +260,7 @@ int nvme_io_passthru64(int fd, __u8 opcode, __u8 flags, __u16 rsvd,
                __u32 timeout_ms, __u64 *result);
 
 /**
- * nvme_submit_passthru() - Submit an nvme passthrough command
+ * nvme_submit_io_passthru() - Submit an nvme passthrough command
  * @fd:                File descriptor of nvme device
  * @cmd:       The nvme io command to send
  * @result:    Optional field to return the result from the CQE dword 0
@@ -322,14 +322,14 @@ int nvme_io_passthru(int fd, __u8 opcode, __u8 flags, __u16 rsvd,
 int nvme_subsystem_reset(int fd);
 
 /**
- * nvme_reset_ctrl() - Initiate a controller reset
+ * nvme_ctrl_reset() - Initiate a controller reset
  * @fd:                File descriptor of nvme device
  *
  * This should only be sent to controller handles, not to namespaces.
  *
  * Return: Zero if a reset was initiated or -1 with errno set otherwise.
  */
-int nvme_reset_ctrl(int fd);
+int nvme_ctrl_reset(int fd);
 
 /**
  * nvme_ns_rescan() - Initiate a controller rescan
index 0156a07158ac02cc60107e126aed62fefebdb51a..e751d7c666cc97d2b7bbccaae4308e0c762b7bc2 100644 (file)
@@ -66,7 +66,7 @@ nvme_ns_t nvme_subsystem_first_ns(nvme_subsystem_t s);
 nvme_ns_t nvme_subsystem_next_ns(nvme_subsystem_t s, nvme_ns_t n);
 
 /**
- * ()
+ * nvme_for_each_subsystem_safe()
  */
 #define nvme_for_each_subsystem_safe(r, s, _s)                 \
        for (s = nvme_first_subsystem(r),                       \
@@ -75,14 +75,14 @@ nvme_ns_t nvme_subsystem_next_ns(nvme_subsystem_t s, nvme_ns_t n);
             s = _s, _s = nvme_next_subsystem(r, s))
 
 /**
- * ()
+ * nvme_for_each_subsystem()
  */
 #define nvme_for_each_subsystem(r, s)                          \
        for (s = nvme_first_subsystem(r); s != NULL;            \
                s = nvme_next_subsystem(r, s))
 
 /**
- * ()
+ * nvme_subsystem_for_each_ctrl_safe()
  */
 #define nvme_subsystem_for_each_ctrl_safe(s, c, _c)            \
        for (c = nvme_subsystem_first_ctrl(s),                  \
@@ -91,14 +91,14 @@ nvme_ns_t nvme_subsystem_next_ns(nvme_subsystem_t s, nvme_ns_t n);
             c = _c, _c = nvme_subsystem_next_ctrl(s, c))
 
 /**
- * ()
+ * nvme_subsystem_for_each_ctrl()
  */
 #define nvme_subsystem_for_each_ctrl(s, c)                     \
        for (c = nvme_subsystem_first_ctrl(s); c != NULL;       \
                c = nvme_subsystem_next_ctrl(s, c))
 
 /**
- * ()
+ * nvme_ctrl_for_each_ns_safe()
  */
 #define nvme_ctrl_for_each_ns_safe(c, n, _n)                   \
        for (n = nvme_ctrl_first_ns(c),                         \
@@ -107,14 +107,14 @@ nvme_ns_t nvme_subsystem_next_ns(nvme_subsystem_t s, nvme_ns_t n);
             n = _n, _n = nvme_ctrl_next_ns(c, n))
 
 /**
- * ()
+ * nvme_ctrl_for_each_ns()
  */
 #define nvme_ctrl_for_each_ns(c, n)                            \
        for (n = nvme_ctrl_first_ns(c); n != NULL;              \
                n = nvme_ctrl_next_ns(c, n))
 
 /**
- * ()
+ * nvme_ctrl_for_each_path_safe()
  */
 #define nvme_ctrl_for_each_path_safe(c, p, _p)                 \
        for (p = nvme_ctrl_first_path(c),                       \
@@ -123,14 +123,14 @@ nvme_ns_t nvme_subsystem_next_ns(nvme_subsystem_t s, nvme_ns_t n);
             p = _p, _p = nvme_ctrl_next_path(c, p))
 
 /**
- * ()
+ * nvme_ctrl_for_each_path()
  */
 #define nvme_ctrl_for_each_path(c, p)                          \
        for (p = nvme_ctrl_first_path(c); p != NULL;            \
                p = nvme_ctrl_next_path(c, p))
 
 /**
- * ()
+ * nvme_subsystem_for_each_ns_safe()
  */
 #define nvme_subsystem_for_each_ns_safe(s, n, _n)              \
        for (n = nvme_subsystem_first_ns(s),                    \
@@ -139,7 +139,7 @@ nvme_ns_t nvme_subsystem_next_ns(nvme_subsystem_t s, nvme_ns_t n);
             n = _n, _n = nvme_subsystem_next_ns(s, n))
 
 /**
- * ()
+ * nvme_subsystem_for_each_ns()
  */
 #define nvme_subsystem_for_each_ns(s, n)                       \
        for (n = nvme_subsystem_first_ns(s); n != NULL;         \
@@ -171,12 +171,12 @@ uint64_t nvme_ns_get_lba_count(nvme_ns_t n);
 uint64_t nvme_ns_get_lba_util(nvme_ns_t n);
 
 /**
- * char () -
+ * nvme_ns_get_sysfs_dir() -
  */
 const char *nvme_ns_get_sysfs_dir(nvme_ns_t n);
 
 /**
- * char () -
+ * nvme_ns_get_name() -
  */
 const char *nvme_ns_get_name(nvme_ns_t n);
 
@@ -231,17 +231,17 @@ int nvme_ns_flush(nvme_ns_t n);
 int nvme_ns_identify(nvme_ns_t n, struct nvme_id_ns *ns);
 
 /**
- * char () -
+ * nvme_path_get_name() -
  */
 const char *nvme_path_get_name(nvme_path_t p);
 
 /**
- * char () -
+ * nvme_path_get_sysfs_dir() -
  */
 const char *nvme_path_get_sysfs_dir(nvme_path_t p);
 
 /**
- * char () -
+ * nvme_path_get_ana_state() -
  */
 const char *nvme_path_get_ana_state(nvme_path_t p);
 
@@ -255,59 +255,64 @@ nvme_ctrl_t nvme_path_get_subsystem(nvme_path_t p);
  */
 nvme_ns_t nvme_path_get_ns(nvme_path_t p);
 
+/**
+ * nvme_ctrl_get_fd() -
+ */
 int nvme_ctrl_get_fd(nvme_ctrl_t c);
+
 /**
- * char () -
+ * nvme_ctrl_get_name() -
  */
 const char *nvme_ctrl_get_name(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_sysfs_dir() -
  */
 const char *nvme_ctrl_get_sysfs_dir(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_address() -
  */
 const char *nvme_ctrl_get_address(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_firmware() -
  */
 const char *nvme_ctrl_get_firmware(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_model() -
  */
 const char *nvme_ctrl_get_model(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_state() -
  */
 const char *nvme_ctrl_get_state(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_numa_node() -
  */
 const char *nvme_ctrl_get_numa_node(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_queue_count() -
  */
 const char *nvme_ctrl_get_queue_count(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_serial() -
  */
 const char *nvme_ctrl_get_serial(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_sqsize() -
  */
 const char *nvme_ctrl_get_sqsize(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_transport() -
  */
 const char *nvme_ctrl_get_transport(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_nqn() -
  */
 const char *nvme_ctrl_get_nqn(nvme_ctrl_t c);
 /**
- * char () -
+ * nvme_ctrl_get_subsysnqn() -
  */
 const char *nvme_ctrl_get_subsysnqn(nvme_ctrl_t c);
+
 /**
  * nvme_ctrl_get_subsystem() -
  */
@@ -317,10 +322,12 @@ nvme_subsystem_t nvme_ctrl_get_subsystem(nvme_ctrl_t c);
  * nvme_ctrl_identify() -
  */
 int nvme_ctrl_identify(nvme_ctrl_t c, struct nvme_id_ctrl *id);
+
 /**
  * nvme_ctrl_disconnect() -
  */
 int nvme_ctrl_disconnect(nvme_ctrl_t c);
+
 /**
  * nvme_scan_ctrl() -
  */
@@ -336,15 +343,17 @@ void nvme_free_ctrl(struct nvme_ctrl *c);
 void nvme_unlink_ctrl(struct nvme_ctrl *c);
 
 /**
- * char () -
+ * nvme_subsystem_get_nqn() -
  */
 const char *nvme_subsystem_get_nqn(nvme_subsystem_t s);
+
 /**
- * char () -
+ * nvme_subsystem_get_sysfs_dir() -
  */
 const char *nvme_subsystem_get_sysfs_dir(nvme_subsystem_t s);
+
 /**
- * char () -
+ * nvme_subsystem_get_name() -
  */
 const char *nvme_subsystem_get_name(nvme_subsystem_t s);
 
@@ -376,22 +385,22 @@ void nvme_reset_topology(nvme_root_t r);
 void nvme_free_tree(nvme_root_t r);
 
 /**
- * *() -
+ * nvme_get_subsys_attr() -
  */
 char *nvme_get_subsys_attr(nvme_subsystem_t s, const char *attr);
 
 /**
- * *() -
+ * nvme_get_ctrl_attr() -
  */
 char *nvme_get_ctrl_attr(nvme_ctrl_t c, const char *attr);
 
 /**
- * *() -
+ * nvme_get_ns_attr() -
  */
 char *nvme_get_ns_attr(nvme_ns_t n, const char *attr);
 
 /**
- * *() -
+ * nvme_get_path_attr() -
  */
 char *nvme_get_path_attr(nvme_path_t p, const char *attr);
 
index bd06328accb14ae71177b4e66ec80a0ba59484b5..9b0c68be7491fc3760dcce909ee8d5bb6336b172 100644 (file)
@@ -212,8 +212,8 @@ close_fd:
        return -1;
 }
 
-int nvme_fw_download_split(int fd, __u32 size, __u32 xfer, __u32 offset,
-                           void *buf)
+int nvme_fw_download_seq(int fd, __u32 size, __u32 xfer, __u32 offset,
+                        void *buf)
 {
        int err = 0;
 
@@ -263,9 +263,11 @@ int nvme_get_log_page(int fd, __u32 nsid, __u8 log_id, bool rae,
 int nvme_get_telemetry_log(int fd, bool create, bool ctrl, int data_area,
                       void **buf, __u32 *log_size)
 {
-       struct nvme_telemetry_log *telem;
        static const __u32 xfer = 512;
-       __u32 size, offset = xfer;
+
+       __u8 lid = NVME_LOG_LID_TELEMETRY_HOST;
+       struct nvme_telemetry_log *telem;
+       __u32 size;
        void *log;
        int err;
 
@@ -275,9 +277,10 @@ int nvme_get_telemetry_log(int fd, bool create, bool ctrl, int data_area,
                return -1;
        }
 
-       if (ctrl)
+       if (ctrl) {
                err = nvme_get_log_telemetry_ctrl(fd, true, 0, xfer, log);
-       else if (create)
+               lid = NVME_LOG_LID_TELEMETRY_CTRL;
+       } else if (create)
                err = nvme_get_log_create_telemetry_host(fd, log);
        else
                err = nvme_get_log_telemetry_host(fd, 0, xfer, log);
@@ -314,17 +317,9 @@ int nvme_get_telemetry_log(int fd, bool create, bool ctrl, int data_area,
                goto free;
        }
 
-       while (offset != size) {
-               if (ctrl)
-                       err = nvme_get_log_telemetry_ctrl(fd, true, offset,
-                                                         xfer, log + offset);
-               else
-                       err = nvme_get_log_telemetry_host(fd, offset, xfer,
-                                                         log + offset);
-               if (err)
-                       goto free;
-               offset += xfer;
-       }
+       err = nvme_get_log_page(fd, NVME_NSID_NONE, lid, true, size, (void *)log);
+       if (err)
+               goto free;
 done:
        *log_size = size;
        *buf = log;
index 96f942186502bd97213d68e07bf05048b776367a..d608eef20c047a3560de3b2e523b31682777603b 100644 (file)
@@ -33,10 +33,10 @@ const char *nvme_status_to_string(int status, bool fabrics);
 __u8 nvme_status_to_errno(int status, bool fabrics);
 
 /**
- * nvme_fw_download_split() -
+ * nvme_fw_download_seq() -
  */
-int nvme_fw_download_split(int fd, __u32 size, __u32 xfer, __u32 offset,
-                           void *buf);
+int nvme_fw_download_seq(int fd, __u32 size, __u32 xfer, __u32 offset,
+                        void *buf);
 
 /**
  * nvme_get_telemetry_log() -