内核中sk_buff结构的字段疑问?
时间:2010-10-19
来源:互联网
我用的是2.6.34这套内核代码
其中在看sk_buff这个结构体的时候,
struct sk_buff{
......
kmemcheck_bitfield_begin(flags1);
__u8 local_df:1,
cloned:1,
ip_summed:2,
nohdr:1,
nfctinfo:3;
__u8 pkt_type:3,/*这个字段会根据帧的L2目的地址进行类型划分*/
fclone:2,
ipvs_property:1,
peeked:1,
nf_trace:1;
kmemcheck_bitfield_end(flags1);
.....
}
这里有一些疑问:
1.kmemcheck_bitfield_begin(flags1);和kmemcheck_bitfield_end(flags1);是什么意思呢?
查看它的定义有两个解释:
1)#define kmemcheck_bitfield_begin(name) \
int name##_begin[0];
2)#define kmemcheck_bitfield_begin(name)
这个把人都看晕了 请高手来指点一下小弟啊!!
2.__u8 pkt_type:3 这个字段定义不太明白
pkt_type后面的冒号和3是怎么理解的??
PS:这个和我们通常使用的C的标准貌似不太一样啊 请大家指点下小弟哈!!谢谢了
其中在看sk_buff这个结构体的时候,
struct sk_buff{
......
kmemcheck_bitfield_begin(flags1);
__u8 local_df:1,
cloned:1,
ip_summed:2,
nohdr:1,
nfctinfo:3;
__u8 pkt_type:3,/*这个字段会根据帧的L2目的地址进行类型划分*/
fclone:2,
ipvs_property:1,
peeked:1,
nf_trace:1;
kmemcheck_bitfield_end(flags1);
.....
}
这里有一些疑问:
1.kmemcheck_bitfield_begin(flags1);和kmemcheck_bitfield_end(flags1);是什么意思呢?
查看它的定义有两个解释:
1)#define kmemcheck_bitfield_begin(name) \
int name##_begin[0];
2)#define kmemcheck_bitfield_begin(name)
这个把人都看晕了 请高手来指点一下小弟啊!!
2.__u8 pkt_type:3 这个字段定义不太明白
pkt_type后面的冒号和3是怎么理解的??
PS:这个和我们通常使用的C的标准貌似不太一样啊 请大家指点下小弟哈!!谢谢了
作者: lantian0811 发布时间: 2010-10-19
QUOTE:
查看它的定义有两个解释:
1)#define kmemcheck_bitfield_begin(name) \
int name##_begin[0];
2)#define kmemcheck_bitfield_begin(name)
这个把人都看晕了 请高手来指点一下小弟啊!
1)#define kmemcheck_bitfield_begin(name) \
int name##_begin[0];
2)#define kmemcheck_bitfield_begin(name)
这个把人都看晕了 请高手来指点一下小弟啊!
如果有多处定义的话,那么这几处定义肯定是有条件的,看一下你当前的系统满足那个条件
作者: Godbach 发布时间: 2010-10-19
QUOTE:
2.__u8 pkt_type:3 这个字段定义不太明白
pkt_type后面的冒号和3是怎么理解的??
PS:这个和我们通常使用的C的标准貌似不太一样啊 请大家指点下小弟哈!!谢谢了
pkt_type后面的冒号和3是怎么理解的??
PS:这个和我们通常使用的C的标准貌似不太一样啊 请大家指点下小弟哈!!谢谢了
这个用法在 C 中叫做 bit field,中文常译作位域,google 一下吧。
作者: Godbach 发布时间: 2010-10-19
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28