add timerfd function