88#include <inttypes.h>
99#include <fcntl.h>
1010
11- static void parseDiskIOCounters (int dfd , const char * devName , FFlist * result , FFDiskIOOptions * options )
11+ static const char * parseDiskIOCounters (int dfd , const char * devName , FFlist * result , FFDiskIOOptions * options )
1212{
1313 FF_AUTO_CLOSE_FD int devfd = openat (dfd , "device" , O_RDONLY | O_CLOEXEC | O_PATH | O_DIRECTORY );
14- if (devfd < 0 ) return ; // virtual device
14+ if (devfd < 0 ) return " virtual device" ;
1515
1616 FF_STRBUF_AUTO_DESTROY name = ffStrbufCreate ();
1717
@@ -49,7 +49,7 @@ static void parseDiskIOCounters(int dfd, const char* devName, FFlist* result, FF
4949 }
5050
5151 if (options -> namePrefix .length && !ffStrbufStartsWith (& name , & options -> namePrefix ))
52- return ;
52+ return "ignored" ;
5353 }
5454
5555 // I/Os merges sectors ticks ...
@@ -60,7 +60,7 @@ static void parseDiskIOCounters(int dfd, const char* devName, FFlist* result, FF
6060 if (fileSize <= 0 ) return ;
6161 sysBlockStat [fileSize ] = '\0' ;
6262 if (sscanf (sysBlockStat , "%" PRIu64 "%*u%" PRIu64 "%*u%" PRIu64 "%*u%" PRIu64 "%*u" , & nRead , & sectorRead , & nWritten , & sectorWritten ) <= 0 )
63- return ;
63+ return "invalid stat file format" ;
6464 }
6565
6666 FFDiskIOResult * device = (FFDiskIOResult * ) ffListAdd (result );
@@ -70,6 +70,8 @@ static void parseDiskIOCounters(int dfd, const char* devName, FFlist* result, FF
7070 device -> bytesWritten = sectorWritten * 512 ;
7171 device -> readCount = nRead ;
7272 device -> writeCount = nWritten ;
73+
74+ return NULL ;
7375}
7476
7577const char * ffDiskIOGetIoCounters (FFlist * result , FFDiskIOOptions * options )
@@ -83,7 +85,7 @@ const char* ffDiskIOGetIoCounters(FFlist* result, FFDiskIOOptions* options)
8385 {
8486 const char * const devName = sysBlockEntry -> d_name ;
8587
86- if (devName [0 ] == '.' ) continue ;;
88+ if (devName [0 ] == '.' ) continue ;
8789
8890 FF_AUTO_CLOSE_FD int dfd = openat (dirfd (sysBlockDirp ), devName , O_RDONLY | O_CLOEXEC | O_PATH | O_DIRECTORY );
8991 if (dfd > 0 ) parseDiskIOCounters (dfd , devName , result , options );
0 commit comments