]> rtime.felk.cvut.cz Git - can-benchmark.git/blobdiff - latester/latester.c
Gather some statistics
[can-benchmark.git] / latester / latester.c
index c728f5804a5c1fc51a58d8214d02e52119a8196e..d178e1eb907f990b43b331ce86d06ab2fd88b0e2 100644 (file)
@@ -72,6 +72,10 @@ struct options opt = {
        .length = 2,
 };
 
+struct {
+       unsigned enobufs;
+} stats;
+
 int num_interfaces = 0;
 int count = 0;                 /* Number of sent messages */
 int completion_pipe[2];
@@ -532,13 +536,14 @@ void *measure_thread(void *arg)
                        pfd[i].events = POLLIN;
        }
 
-       set_sched_policy_and_prio(SCHED_FIFO, 99);
+       set_sched_policy_and_prio(SCHED_FIFO, 40);
 
 #define SEND()                                                         \
        do {                                                            \
                ret = send_frame(pfd[0].fd);                            \
                if (ret != sizeof(struct can_frame)) {                  \
                        if (ret == -1 && errno == ENOBUFS && opt.period_us == 0 && !opt.oneattime) { \
+                               stats.enobufs++;                        \
                                /* Ignore this error - pfifo_fast qeuue is full */ \
                        } else                                          \
                                error(1, errno, "send_frame (line %d)", __LINE__); \