linux rcu 理解

kernel/rcutree.c 

rcu_check_callbacks -> 


s3c2410_timer_interrupt -》 timer_tick -》update_process_times -》 rcu_check_callbacks -> 

__rcu_pending->  print_other_cpu_stall   


在时钟中断中进行检查 

INFO: RCU detected CPU stalls: 

使用注意方式:

RCU 保护的代码里面不能进入睡眠状态

受访问的资源必须通过指针访问


RCU 使用方式:

1. 读操作时 引用指针必须使用rcu_dereference(ptr)

2. 受访问的资源必须通过指针访问

3. 修改ptr 指向的对象时 必须调用 rcu_assign_pointer 


参考资料:

linux内核 RCU机制详解  讲到 rcu 调用使用方法。

http://blog.csdn.net/xabc3000/article/details/15335131

https://www.kernel.org/doc/Documentation/RCU/stallwarn.txt


Linux RCU机制详解

http://blog.chinaunix.net/uid-24517893-id-2381246.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值