diff options
author | imarom <imarom@cisco.com> | 2015-11-01 14:28:28 +0200 |
---|---|---|
committer | imarom <imarom@cisco.com> | 2015-11-01 14:28:28 +0200 |
commit | ee2c7f45e0bf973443b70eb8329811bcad44f83a (patch) | |
tree | c3f2cc1db1b090bedfd80979c931d50708053100 /src/os_time.h | |
parent | a1971ec3a7f6cbe0aea1393a57aa17bf44deedac (diff) |
stateless cores starts on IDLE - and starts the scheduler only when
traffic is being transmitted
if the traffic stops completely on the core - back to IDLE state
Diffstat (limited to 'src/os_time.h')
-rwxr-xr-x | src/os_time.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/os_time.h b/src/os_time.h index 153ee3e3..0e732abf 100755 --- a/src/os_time.h +++ b/src/os_time.h @@ -22,6 +22,7 @@ limitations under the License. */ #include <stdint.h> +#include <time.h> typedef uint64_t hr_time_t; // time in high res tick typedef uint32_t hr_time_32_t; // time in high res tick @@ -129,6 +130,25 @@ static inline dsec_t now_sec(void){ } +static inline +void delay(int msec){ + + if (msec == 0) + {//user that requested that probebly wanted the minimal delay + //but because of scaling problem he have got 0 so we will give the min delay + //printf("\n\n\nERROR-Task delay ticks == 0 found in task %s task id = %d\n\n\n\n", + // SANB_TaskName(SANB_TaskIdSelf()), SANB_TaskIdSelf()); + msec =1; + + } + + struct timespec time1, remain; // 2 sec max delay + time1.tv_sec=msec/1000; + time1.tv_nsec=(msec - (time1.tv_sec*1000))*1000000; + + nanosleep(&time1,&remain); +} + #endif |