from_time()
发表于:2022-02-28 | 分类: Linux

[[toc]]

from_timer(var,callback_timer,timer_fieldname)

include\linux\kernel.h中有说明。

1
2
#define from_timer(var, callback_timer, timer_fieldname) \
container_of(callback_timer, typeof(*var), timer_fieldname)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
* container_of - 将结构的成员强制转换为包含的结构
* @ptr: 指向成员的指针.
* @type: 所嵌入的容器结构体的类型。
* @member: 结构中成员的名称。
*
*/
#define container_of(ptr, type, member) ({ \
void *__mptr = (void *)(ptr); \
BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \
!__same_type(*(ptr), void), \
"pointer type mismatch in container_of()"); \
((type *)(__mptr - offsetof(type, member))); })

上一篇:
platform_device创建过程
下一篇:
ioctl()