1616#include <ccan/endian/endian.h>
1717
1818#include "logging.h"
19- #include "sighdl.h"
19+ #include "util/sighdl.h"
20+ #include "nvme-print.h"
2021
2122struct submit_data {
2223 struct timeval start ;
2324 struct timeval end ;
2425};
2526
2627int log_level ;
27- static bool dry_run ;
2828static struct submit_data sb ;
2929
3030int map_log_level (int verbose , bool quiet )
@@ -57,51 +57,46 @@ int map_log_level(int verbose, bool quiet)
5757 return log_level ;
5858}
5959
60- void set_dry_run (bool enable )
61- {
62- dry_run = enable ;
63- }
64-
6560static void nvme_show_common (struct nvme_passthru_cmd * cmd )
6661{
67- printf ("opcode : %02x\n " , cmd -> opcode );
68- printf ("flags : %02x\n " , cmd -> flags );
69- printf ("rsvd1 : %04x\n " , cmd -> rsvd1 );
70- printf ("nsid : %08x\n " , cmd -> nsid );
71- printf ("cdw2 : %08x\n " , cmd -> cdw2 );
72- printf ("cdw3 : %08x\n " , cmd -> cdw3 );
73- printf ("data_len : %08x\n " , cmd -> data_len );
74- printf ("metadata_len : %08x\n " , cmd -> metadata_len );
75- printf ("addr : %" PRIx64 "\n " , (uint64_t )(uintptr_t )cmd -> addr );
76- printf ("metadata : %" PRIx64 "\n " , (uint64_t )(uintptr_t )cmd -> metadata );
77- printf ("cdw10 : %08x\n " , cmd -> cdw10 );
78- printf ("cdw11 : %08x\n " , cmd -> cdw11 );
79- printf ("cdw12 : %08x\n " , cmd -> cdw12 );
80- printf ("cdw13 : %08x\n " , cmd -> cdw13 );
81- printf ("cdw14 : %08x\n " , cmd -> cdw14 );
82- printf ("cdw15 : %08x\n " , cmd -> cdw15 );
83- printf ("timeout_ms : %08x\n " , cmd -> timeout_ms );
62+ nvme_show_key_value ("opcode " , " %02x" , cmd -> opcode );
63+ nvme_show_key_value ("flags " , " %02x" , cmd -> flags );
64+ nvme_show_key_value ("rsvd1 " , " %04x" , cmd -> rsvd1 );
65+ nvme_show_key_value ("nsid " , " %08x" , cmd -> nsid );
66+ nvme_show_key_value ("cdw2 " , " %08x" , cmd -> cdw2 );
67+ nvme_show_key_value ("cdw3 " , " %08x" , cmd -> cdw3 );
68+ nvme_show_key_value ("data_len " , " %08x" , cmd -> data_len );
69+ nvme_show_key_value ("metadata_len " , " %08x" , cmd -> metadata_len );
70+ nvme_show_key_value ("addr " , " %"PRIx64 "" , (uint64_t )(uintptr_t )cmd -> addr );
71+ nvme_show_key_value ("metadata " , " %"PRIx64 "" , (uint64_t )(uintptr_t )cmd -> metadata );
72+ nvme_show_key_value ("cdw10 " , " %08x" , cmd -> cdw10 );
73+ nvme_show_key_value ("cdw11 " , " %08x" , cmd -> cdw11 );
74+ nvme_show_key_value ("cdw12 " , " %08x" , cmd -> cdw12 );
75+ nvme_show_key_value ("cdw13 " , " %08x" , cmd -> cdw13 );
76+ nvme_show_key_value ("cdw14 " , " %08x" , cmd -> cdw14 );
77+ nvme_show_key_value ("cdw15 " , " %08x" , cmd -> cdw15 );
78+ nvme_show_key_value ("timeout_ms " , " %08x" , cmd -> timeout_ms );
8479}
8580
8681static void nvme_show_command (struct nvme_passthru_cmd * cmd , int err )
8782{
8883 nvme_show_common (cmd );
89- printf ("result : %08x\n " , cmd -> result );
90- printf ("err : %d\n " , err );
84+ nvme_show_key_value ("result " , " %08x" , cmd -> result );
85+ nvme_show_key_value ("err " , "%d " , err );
9186}
9287
9388static void nvme_show_command64 (struct nvme_passthru_cmd64 * cmd , int err )
9489{
9590 nvme_show_common ((struct nvme_passthru_cmd * )cmd );
96- printf ("result : %" PRIx64 "\n " , (uint64_t )(uintptr_t )cmd -> result );
97- printf ("err : %d\n " , err );
91+ nvme_show_key_value ("result " , " %"PRIx64 "" , (uint64_t )(uintptr_t )cmd -> result );
92+ nvme_show_key_value ("err " , "%d " , err );
9893}
9994
10095static void nvme_show_latency (struct timeval start , struct timeval end )
10196{
102- printf ("latency : %llu us\n " ,
103- (unsigned long long )((end .tv_sec - start .tv_sec ) * 1000000 +
104- (end .tv_usec - start .tv_usec )));
97+ nvme_show_key_value ("latency " , " %llu us" ,
98+ (unsigned long long )((end .tv_sec - start .tv_sec ) * 1000000 +
99+ (end .tv_usec - start .tv_usec )));
105100}
106101
107102static void nvme_log_retry (int errnum )
@@ -122,7 +117,7 @@ int nvme_submit_passthru(int fd, unsigned long ioctl_cmd,
122117 if (log_level >= LOG_DEBUG )
123118 gettimeofday (& start , NULL );
124119
125- if (!dry_run ) {
120+ if (!nvme_cfg . dry_run ) {
126121retry :
127122 err = ioctl (fd , ioctl_cmd , cmd );
128123 if (err && (errno == EAGAIN ||
@@ -155,7 +150,7 @@ int nvme_submit_passthru64(int fd, unsigned long ioctl_cmd,
155150 if (log_level >= LOG_DEBUG )
156151 gettimeofday (& start , NULL );
157152
158- if (!dry_run ) {
153+ if (!nvme_cfg . dry_run ) {
159154retry :
160155 err = ioctl (fd , ioctl_cmd , cmd );
161156 if (err && (errno == EAGAIN ||
@@ -197,8 +192,8 @@ static void nvme_show_req_admin(const struct nvme_mi_admin_req_hdr *hdr, size_t
197192 };
198193
199194 nvme_show_common (& cmd );
200- printf ("doff : %08x\n " , le32_to_cpu (hdr -> doff ));
201- printf ("dlen : %08x\n " , le32_to_cpu (hdr -> dlen ));
195+ nvme_show_key_value ("doff " , " %08x" , le32_to_cpu (hdr -> doff ));
196+ nvme_show_key_value ("dlen " , " %08x" , le32_to_cpu (hdr -> dlen ));
202197}
203198
204199static void nvme_show_req (__u8 type , const struct nvme_mi_msg_hdr * hdr , size_t hdr_len ,
0 commit comments