From 3b825c2523bf51135f66129dd64d8fbcaa59b0d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cenk=20G=C3=BCndo=C4=9Fan?= <cnkgndgn@gmail.com> Date: Wed, 28 Oct 2015 21:07:27 +0100 Subject: [PATCH] sixlowpan: use xtimer_now() instead of vtimer_now() --- .../sixlowpan/ctx/gnrc_sixlowpan_ctx.c | 5 ++--- sys/net/gnrc/network_layer/sixlowpan/frag/rbuf.c | 14 +++++--------- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/sys/net/gnrc/network_layer/sixlowpan/ctx/gnrc_sixlowpan_ctx.c b/sys/net/gnrc/network_layer/sixlowpan/ctx/gnrc_sixlowpan_ctx.c index c1a186da2d..00717dfee8 100644 --- a/sys/net/gnrc/network_layer/sixlowpan/ctx/gnrc_sixlowpan_ctx.c +++ b/sys/net/gnrc/network_layer/sixlowpan/ctx/gnrc_sixlowpan_ctx.c @@ -18,6 +18,7 @@ #include "mutex.h" #include "net/gnrc/sixlowpan/ctx.h" #include "vtimer.h" +#include "xtimer.h" #define ENABLE_DEBUG (0) #include "debug.h" @@ -132,9 +133,7 @@ gnrc_sixlowpan_ctx_t *gnrc_sixlowpan_ctx_update(uint8_t id, const ipv6_addr_t *p static uint32_t _current_minute(void) { - timex_t now; - vtimer_now(&now); - return now.seconds / 60; + return xtimer_now() / (SEC_IN_USEC * 60); } static void _update_lifetime(uint8_t id) diff --git a/sys/net/gnrc/network_layer/sixlowpan/frag/rbuf.c b/sys/net/gnrc/network_layer/sixlowpan/frag/rbuf.c index c785248316..61dfb3af3f 100644 --- a/sys/net/gnrc/network_layer/sixlowpan/frag/rbuf.c +++ b/sys/net/gnrc/network_layer/sixlowpan/frag/rbuf.c @@ -231,17 +231,15 @@ static bool _rbuf_update_ints(rbuf_t *entry, uint16_t offset, size_t frag_size) static void _rbuf_gc(void) { rbuf_t *oldest = NULL; - timex_t now; + uint32_t now_sec = xtimer_now() / SEC_IN_USEC; unsigned int i; - vtimer_now(&now); - for (i = 0; i < RBUF_SIZE; i++) { if (rbuf[i].pkt == NULL) { /* leave GC early if there is still room */ return; } else if ((rbuf[i].pkt != NULL) && - ((now.seconds - rbuf[i].arrival) > RBUF_TIMEOUT)) { + ((now_sec - rbuf[i].arrival) > RBUF_TIMEOUT)) { DEBUG("6lo rfrag: entry (%s, ", gnrc_netif_addr_to_str(l2addr_str, sizeof(l2addr_str), rbuf[i].src, rbuf[i].src_len)); DEBUG("%s, %u, %u) timed out\n", @@ -269,9 +267,7 @@ static rbuf_t *_rbuf_get(const void *src, size_t src_len, size_t size, uint16_t tag) { rbuf_t *res = NULL; - timex_t now; - - vtimer_now(&now); + uint32_t now_sec = xtimer_now() / SEC_IN_USEC; for (unsigned int i = 0; i < RBUF_SIZE; i++) { /* check first if entry already available */ @@ -287,7 +283,7 @@ static rbuf_t *_rbuf_get(const void *src, size_t src_len, gnrc_netif_addr_to_str(l2addr_str, sizeof(l2addr_str), rbuf[i].dst, rbuf[i].dst_len), (unsigned)rbuf[i].pkt->size, rbuf[i].tag); - rbuf[i].arrival = now.seconds; + rbuf[i].arrival = now_sec; return &(rbuf[i]); } @@ -306,7 +302,7 @@ static rbuf_t *_rbuf_get(const void *src, size_t src_len, *((uint64_t *)res->pkt->data) = 0; /* clean first few bytes for later * look-ups */ - res->arrival = now.seconds; + res->arrival = now_sec; memcpy(res->src, src, src_len); memcpy(res->dst, dst, dst_len); res->src_len = src_len; -- GitLab