X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flibsystemd-bus%2Ftest-bus-kernel-benchmark.c;h=010a161328f43ca0a7d4684a5964563355d583d6;hp=2ece2a0029df8d92654105eb4b4aea2f8b1b14ea;hb=9bd37b40fac198fee2ff4eabc8793f1a7f2770fe;hpb=311754514cd24210f9c72e0af5173d7895690e5f diff --git a/src/libsystemd-bus/test-bus-kernel-benchmark.c b/src/libsystemd-bus/test-bus-kernel-benchmark.c index 2ece2a002..010a16132 100644 --- a/src/libsystemd-bus/test-bus-kernel-benchmark.c +++ b/src/libsystemd-bus/test-bus-kernel-benchmark.c @@ -31,8 +31,9 @@ #include "bus-error.h" #include "bus-kernel.h" #include "bus-internal.h" +#include "bus-util.h" -#define MAX_SIZE (8*1024*1024) +#define MAX_SIZE (4*1024*1024) static usec_t arg_loop_usec = 100 * USEC_PER_MSEC; @@ -51,7 +52,7 @@ static void server(sd_bus *b, size_t *result) { continue; if (sd_bus_message_is_method_call(m, "benchmark.server", "Ping")) - assert_se(sd_bus_reply_method_return(b, m, NULL) >= 0); + assert_se(sd_bus_reply_method_return(m, NULL) >= 0); else if (sd_bus_message_is_method_call(m, "benchmark.server", "Work")) { const void *p; size_t sz; @@ -59,7 +60,7 @@ static void server(sd_bus *b, size_t *result) { /* Make sure the mmap is mapped */ assert_se(sd_bus_message_read_array(m, 'y', &p, &sz) > 0); - assert_se(sd_bus_reply_method_return(b, m, NULL) >= 0); + assert_se(sd_bus_reply_method_return(m, NULL) >= 0); } else if (sd_bus_message_is_method_call(m, "benchmark.server", "Exit")) { uint64_t res; assert_se(sd_bus_message_read(m, "t", &res) > 0); @@ -81,7 +82,7 @@ static void transaction(sd_bus *b, size_t sz) { memset(p, 0x80, sz); - assert_se(sd_bus_send_with_reply_and_block(b, m, 0, NULL, &reply) >= 0); + assert_se(sd_bus_call(b, m, 0, NULL, &reply) >= 0); } static void client_bisect(const char *address) { @@ -118,7 +119,7 @@ static void client_bisect(const char *address) { if (csize <= 0) break; - fprintf(stderr, "%zu\t", csize); + printf("%zu\t", csize); b->use_memfd = 0; @@ -138,7 +139,7 @@ static void client_bisect(const char *address) { if (now(CLOCK_MONOTONIC) >= t + arg_loop_usec) break; } - printf("%u\n", (unsigned) ((n_copying * USEC_PER_SEC) / arg_loop_usec)); + printf("%u\n", (unsigned) ((n_memfd * USEC_PER_SEC) / arg_loop_usec)); if (n_copying == n_memfd) break; @@ -176,11 +177,11 @@ static void client_chart(const char *address) { printf("SIZE\tCOPY\tMEMFD\n"); - for (csize = 1; csize < MAX_SIZE; csize *= 2) { + for (csize = 1; csize <= MAX_SIZE; csize *= 2) { usec_t t; unsigned n_copying, n_memfd; - fprintf(stderr, "%zu\t", csize); + printf("%zu\t", csize); b->use_memfd = 0; @@ -227,8 +228,6 @@ int main(int argc, char *argv[]) { pid_t pid; int r; - log_set_max_level(LOG_DEBUG); - for (i = 1; i < argc; i++) { if (streq(argv[i], "chart")) { mode = MODE_CHART; @@ -240,7 +239,7 @@ int main(int argc, char *argv[]) { assert_se(arg_loop_usec > 0); - bus_ref = bus_kernel_create("deine-mutter", &bus_name); + bus_ref = bus_kernel_create_bus("deine-mutter", &bus_name); if (bus_ref == -ENOENT) exit(EXIT_TEST_SKIP);