| /linux/include/linux/ |
| H A D | hrtimer.h | 93 struct hrtimer timer; 97 static inline void hrtimer_set_expires(struct hrtimer *timer, ktime_t time) in hrtimer_set_expires() 103 static inline void hrtimer_set_expires_range(struct hrtimer *timer, ktime_t time, ktime_t delta) in hrtimer_set_expires_range() 109 static inline void hrtimer_set_expires_range_ns(struct hrtimer *timer, ktime_t time, u64 delta) in hrtimer_set_expires_range_ns() 115 static inline void hrtimer_add_expires(struct hrtimer *timer, ktime_t time) in hrtimer_add_expires() 121 static inline void hrtimer_add_expires_ns(struct hrtimer *timer, u64 ns) in hrtimer_add_expires_ns() 127 static inline ktime_t hrtimer_get_expires(const struct hrtimer *timer) in hrtimer_get_expires() 132 static inline ktime_t hrtimer_get_softexpires(const struct hrtimer *timer) in hrtimer_get_softexpires() 137 static inline s64 hrtimer_get_expires_ns(const struct hrtimer *timer) in hrtimer_get_expires_ns() 142 ktime_t hrtimer_cb_get_time(const struct hrtimer *timer); [all …]
|
| H A D | hrtimer_types.h | 39 struct hrtimer { struct 42 enum hrtimer_restart (*__private function)(struct hrtimer *); argument
|
| /linux/include/trace/events/ |
| H A D | timer.h | 195 TP_PROTO(struct hrtimer *hrtimer, clockid_t clockid, 198 TP_ARGS(hrtimer, clockid, mode), 201 __field( void *, hrtimer ) 207 __entry->hrtimer = hrtimer; 212 TP_printk("hrtimer=%p clockid=%s mode=%s", __entry->hrtimer, 224 TP_PROTO(struct hrtimer *hrtimer, enum hrtimer_mode mode), 226 TP_ARGS(hrtimer, mode), 229 __field( void *, hrtimer ) 237 __entry->hrtimer = hrtimer; 238 __entry->function = ACCESS_PRIVATE(hrtimer, function); [all …]
|
| /linux/Documentation/translations/zh_CN/iio/ |
| H A D | iio_configfs.rst | 86 * hrtimer,使用高分辨率定时器作为中断源 91 加载iio-trig-hrtimer模块将注册hrtimer触发器类型,从而允许用户在 92 /config/iio/triggers/hrtimer下创建hrtimer触发器。 96 $ mkdir /config/iio/triggers/hrtimer/instance1 97 $ rmdir /config/iio/triggers/hrtimer/instance1 101 3.2 "hrtimer" 触发器类型属性 104 "hrtimer”触发器类型没有来自/config dir的任何可配置属性。
|
| /linux/kernel/time/ |
| H A D | hrtimer.c | 163 struct hrtimer_clock_base *lock_hrtimer_base(const struct hrtimer *timer, in lock_hrtimer_base() 196 static bool hrtimer_suitable_target(struct hrtimer *timer, struct hrtimer_clock_base *new_base, in hrtimer_suitable_target() 251 switch_hrtimer_base(struct hrtimer *timer, struct hrtimer_clock_base *base, in switch_hrtimer_base() 302 lock_hrtimer_base(const struct hrtimer *timer, unsigned long *flags) in lock_hrtimer_base() 370 return ACCESS_PRIVATE((struct hrtimer *)addr, function); in hrtimer_debug_hint() 379 struct hrtimer *timer = addr; in hrtimer_fixup_init() 413 struct hrtimer *timer = addr; in hrtimer_fixup_free() 433 static inline void debug_hrtimer_init(struct hrtimer *timer) in debug_hrtimer_init() 438 static inline void debug_hrtimer_init_on_stack(struct hrtimer *timer) in debug_hrtimer_init_on_stack() 443 static inline void debug_hrtimer_activate(struct hrtimer *timer, in debug_hrtimer_activate() [all …]
|
| H A D | tick-sched.h | 73 struct hrtimer sched_timer; 107 extern void tick_setup_sched_timer(bool hrtimer);
|
| /linux/Documentation/iio/ |
| H A D | iio_configfs.rst | 82 * hrtimer, uses high resolution timers as interrupt source 87 Loading iio-trig-hrtimer module will register hrtimer trigger types allowing 88 users to create hrtimer triggers under /config/iio/triggers/hrtimer. 92 $ mkdir /config/iio/triggers/hrtimer/instance1 93 $ rmdir /config/iio/triggers/hrtimer/instance1 97 3.2 "hrtimer" trigger types attributes 100 "hrtimer" trigger type doesn't have any configurable attribute from /config dir.
|
| /linux/arch/powerpc/kernel/ |
| H A D | watchdog.c | 84 static DEFINE_PER_CPU(struct hrtimer, wd_hrtimer); 442 static enum hrtimer_restart watchdog_timer_fn(struct hrtimer *hrtimer) in watchdog_timer_fn() argument 454 hrtimer_forward_now(hrtimer, ms_to_ktime(wd_timer_period_ms)); in watchdog_timer_fn() 478 struct hrtimer *hrtimer = this_cpu_ptr(&wd_hrtimer); in start_watchdog() local 503 hrtimer_setup(hrtimer, watchdog_timer_fn, CLOCK_MONOTONIC, HRTIMER_MODE_REL); in start_watchdog() 504 hrtimer_start(hrtimer, ms_to_ktime(wd_timer_period_ms), in start_watchdog() 515 struct hrtimer *hrtimer = this_cpu_ptr(&wd_hrtimer); in stop_watchdog() local 522 hrtimer_cancel(hrtimer); in stop_watchdog()
|
| /linux/Documentation/translations/zh_CN/admin-guide/ |
| H A D | lockup-watchdogs.rst | 34 Softlockup和hardlockup分别建立在hrtimer(高精度定时器)和perf两个子系统上而实现。 39 为间隔周期产生以检测 hardlockups。如果一个CPU在这个时间段内没有检测到hrtimer中 45 "softlocup 检测器"(内部hrtimer定时器回调函数)会将相关的调试信息打印到系统日志中, 48 Hrtimer定时器的周期是2*watchdog_thresh/5,也就是说在hardlockup被触发前hrtimer有 51 如上所述,内核相当于为系统管理员提供了一个可调节hrtimer定时器和perf事件周期长度
|
| /linux/Documentation/translations/zh_TW/admin-guide/ |
| H A D | lockup-watchdogs.rst | 34 Softlockup和hardlockup分別建立在hrtimer(高精度定時器)和perf兩個子系統上而實現。 39 爲間隔週期產生以檢測 hardlockups。如果一個CPU在這個時間段內沒有檢測到hrtimer中 45 "softlocup 檢測器"(內部hrtimer定時器回調函數)會將相關的調試信息打印到系統日誌中, 48 Hrtimer定時器的週期是2*watchdog_thresh/5,也就是說在hardlockup被觸發前hrtimer有 51 如上所述,內核相當於爲系統管理員提供了一個可調節hrtimer定時器和perf事件週期長度
|
| /linux/lib/ |
| H A D | test_objpool.c | 56 unsigned long hrtimer; /* ms */ member 70 struct hrtimer hrtimer; member 156 static enum hrtimer_restart ot_hrtimer_handler(struct hrtimer *hrt) in ot_hrtimer_handler() 158 struct ot_item *item = container_of(hrt, struct ot_item, hrtimer); in ot_hrtimer_handler() 173 if (!item->test->hrtimer) in ot_start_hrtimer() 175 hrtimer_start(&item->hrtimer, item->hrtcycle, HRTIMER_MODE_REL); in ot_start_hrtimer() 180 if (!item->test->hrtimer) in ot_stop_hrtimer() 182 hrtimer_cancel(&item->hrtimer); in ot_stop_hrtimer() 185 static int ot_init_hrtimer(struct ot_item *item, unsigned long hrtimer) in ot_init_hrtimer() argument 187 struct hrtimer *hrt = &item->hrtimer; in ot_init_hrtimer() [all …]
|
| /linux/sound/sh/ |
| H A D | sh_dac_audio.c | 41 struct hrtimer hrtimer; member 55 hrtimer_start(&chip->hrtimer, chip->wakeups_per_second, in dac_audio_start_timer() 61 hrtimer_cancel(&chip->hrtimer); in dac_audio_stop_timer() 262 static enum hrtimer_restart sh_dac_audio_timer(struct hrtimer *handle) in sh_dac_audio_timer() 265 hrtimer); in sh_dac_audio_timer() 289 hrtimer_start(&chip->hrtimer, chip->wakeups_per_second, in sh_dac_audio_timer() 315 hrtimer_setup(&chip->hrtimer, sh_dac_audio_timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); in snd_sh_dac_create()
|
| /linux/drivers/net/wwan/iosm/ |
| H A D | iosm_ipc_imem.h | 351 struct hrtimer startup_timer; 353 struct hrtimer tdupdate_timer; 354 struct hrtimer fast_update_timer; 355 struct hrtimer td_alloc_timer; 356 struct hrtimer adb_timer; 516 void ipc_imem_hrtimer_stop(struct hrtimer *hr_timer);
|
| /linux/arch/arm/mach-imx/ |
| H A D | mmdc.c | 101 struct hrtimer hrtimer; member 339 hrtimer_start(&pmu_mmdc->hrtimer, mmdc_pmu_timer_period(), in mmdc_pmu_event_start() 407 hrtimer_cancel(&pmu_mmdc->hrtimer); in mmdc_pmu_event_del() 424 static enum hrtimer_restart mmdc_pmu_timer_handler(struct hrtimer *hrtimer) in mmdc_pmu_timer_handler() argument 426 struct mmdc_pmu *pmu_mmdc = container_of(hrtimer, struct mmdc_pmu, in mmdc_pmu_timer_handler() 427 hrtimer); in mmdc_pmu_timer_handler() 430 hrtimer_forward_now(hrtimer, mmdc_pmu_timer_period()); in mmdc_pmu_timer_handler() 512 hrtimer_setup(&pmu_mmdc->hrtimer, mmdc_pmu_timer_handler, CLOCK_MONOTONIC, in imx_mmdc_perf_init() 530 hrtimer_cancel(&pmu_mmdc->hrtimer); in imx_mmdc_perf_init()
|
| /linux/drivers/net/ethernet/marvell/octeontx2/af/ |
| H A D | ptp.c | 116 static enum hrtimer_restart ptp_reset_thresh(struct hrtimer *hrtimer) in ptp_reset_thresh() argument 118 struct ptp *ptp = container_of(hrtimer, struct ptp, hrtimer); in ptp_reset_thresh() 138 hrtimer_forward_now(hrtimer, period_ns); in ptp_reset_thresh() 149 hrtimer_start(&ptp->hrtimer, period_ns, HRTIMER_MODE_REL); in ptp_hrtimer_start() 460 if (hrtimer_active(&ptp->hrtimer)) in ptp_config_hrtimer() 461 hrtimer_cancel(&ptp->hrtimer); in ptp_config_hrtimer() 548 hrtimer_setup(&ptp->hrtimer, ptp_reset_thresh, CLOCK_MONOTONIC, HRTIMER_MODE_REL); in ptp_probe() 579 if (cn10k_ptp_errata(ptp) && hrtimer_active(&ptp->hrtimer)) in ptp_remove() 580 hrtimer_cancel(&ptp->hrtimer); in ptp_remove()
|
| H A D | ptp.h | 20 struct hrtimer hrtimer; member
|
| /linux/arch/powerpc/perf/ |
| H A D | vpa-dtl.c | 288 static enum hrtimer_restart vpa_dtl_hrtimer_handle(struct hrtimer *hrtimer) in vpa_dtl_hrtimer_handle() argument 293 event = container_of(hrtimer, struct perf_event, hw.hrtimer); in vpa_dtl_hrtimer_handle() 300 hrtimer_forward_now(hrtimer, ns_to_ktime(period)); in vpa_dtl_hrtimer_handle() 311 hrtimer_start(&hwc->hrtimer, ns_to_ktime(period), HRTIMER_MODE_REL_PINNED); in vpa_dtl_start_hrtimer() 318 hrtimer_cancel(&hwc->hrtimer); in vpa_dtl_stop_hrtimer() 412 hrtimer_setup(&hwc->hrtimer, vpa_dtl_hrtimer_handle, CLOCK_MONOTONIC, HRTIMER_MODE_REL); in vpa_dtl_event_init()
|
| /linux/drivers/leds/trigger/ |
| H A D | ledtrig-pattern.c | 44 struct hrtimer hrtimer; member 85 hrtimer_start(&data->hrtimer, ns_to_ktime(0), HRTIMER_MODE_REL); in pattern_trig_timer_start() 95 hrtimer_cancel(&data->hrtimer); in pattern_trig_timer_cancel() 104 hrtimer_forward_now(&data->hrtimer, ms_to_ktime(interval)); in pattern_trig_timer_restart() 158 static enum hrtimer_restart pattern_trig_hrtimer_function(struct hrtimer *t) in pattern_trig_hrtimer_function() 161 container_of(t, struct pattern_trig_data, hrtimer); in pattern_trig_hrtimer_function() 486 hrtimer_setup(&data->hrtimer, pattern_trig_hrtimer_function, CLOCK_MONOTONIC, in pattern_trig_activate() 513 hrtimer_cancel(&data->hrtimer); in pattern_trig_deactivate()
|
| /linux/kernel/ |
| H A D | watchdog.c | 397 static DEFINE_PER_CPU(struct hrtimer, watchdog_hrtimer); 773 static enum hrtimer_restart watchdog_timer_fn(struct hrtimer *hrtimer) in watchdog_timer_fn() argument 804 hrtimer_forward_now(hrtimer, ns_to_ktime(sample_period)); in watchdog_timer_fn() 893 struct hrtimer *hrtimer = this_cpu_ptr(&watchdog_hrtimer); in watchdog_enable() local 905 hrtimer_setup(hrtimer, watchdog_timer_fn, CLOCK_MONOTONIC, HRTIMER_MODE_REL_HARD); in watchdog_enable() 906 hrtimer_start(hrtimer, ns_to_ktime(sample_period), in watchdog_enable() 918 struct hrtimer *hrtimer = this_cpu_ptr(&watchdog_hrtimer); in watchdog_disable() local 928 hrtimer_cancel(hrtimer); in watchdog_disable()
|
| /linux/arch/x86/events/ |
| H A D | rapl.c | 137 struct hrtimer hrtimer; member 249 hrtimer_start(&pmu->hrtimer, pmu->timer_interval, in rapl_start_hrtimer() 253 static enum hrtimer_restart rapl_hrtimer_handle(struct hrtimer *hrtimer) in rapl_hrtimer_handle() argument 255 struct rapl_pmu *rapl_pmu = container_of(hrtimer, struct rapl_pmu, hrtimer); in rapl_hrtimer_handle() 269 hrtimer_forward_now(hrtimer, rapl_pmu->timer_interval); in rapl_hrtimer_handle() 276 struct hrtimer *hr = &rapl_pmu->hrtimer; in rapl_hrtimer_init() 321 hrtimer_cancel(&rapl_pmu->hrtimer); in rapl_pmu_event_stop()
|
| /linux/Documentation/admin-guide/ |
| H A D | lockup-watchdogs.rst | 36 The soft and hard lockup detectors are built on top of the hrtimer and 41 A periodic hrtimer runs to generate interrupts and kick the watchdog 45 does not receive any hrtimer interrupt during that time the 53 'softlockup detector' (coded inside the hrtimer callback function) 58 The period of the hrtimer is 2*watchdog_thresh/5, which means it has 63 administrators to configure the period of the hrtimer and the perf
|
| /linux/drivers/infiniband/sw/rdmavt/ |
| H A D | trace_qp.h | 53 __field(void *, hrtimer) 60 __entry->hrtimer = &qp->s_rnr_timer; 68 __entry->hrtimer,
|
| /linux/sound/core/ |
| H A D | Makefile | 34 snd-hrtimer-y := hrtimer.o 44 obj-$(CONFIG_SND_HRTIMER) += snd-hrtimer.o
|
| /linux/drivers/watchdog/ |
| H A D | watchdog_core.h | 54 struct hrtimer timer; 57 struct hrtimer pretimeout_timer;
|
| /linux/include/kvm/ |
| H A D | arm_arch_timer.h | 55 struct hrtimer hrtimer; member 92 struct hrtimer bg_timer;
|